안드로이드 어플코드를 얻을 수 있을까요? 블루투스통신 관련으로 개발중 참고하고 싶습니다. a1176065228@gmail.com입니다.
코코아팹은 누구나 창의적 아이디어를 현실로 만들어 낼 수 있도록
만들고, 공유하고, 배울 수 있는 터전이
되고자 합니다.
아이디와 비밀번호를 잊으셨나요?아이디 / 비밀번호 찾기
코코아팹 회원이 아니신가요? 회원가입
2015-03-16 15:11:41
* 이 컨텐츠를 보시기 전에 안드로이드와 아두이노 간의 블루투스 통신 기초를 보고 오시기 바랍니다.
안드로이드와 아두이노 간의 블루투스 통신 기초에서 아두이노 블루투스 모듈을 이용하여 안드로이드와 블루투스 통신을 해보았습니다. 이제부터 간단한 예제들을 통해서 아두이노의 각 부품들을 제어해 보겠습니다.
이 컨텐츠에서는 안드로이드에 버튼을 하나 띄워서 그 버튼을 누를시 오렌지 보드에 내장 LED(13번 LED)를 깜박이는 예제를 실습해 보겠습니다.
NO | 부품명 | 수량 | 상세설명 |
1 | 오렌지 보드 | 1 | |
2 | 블루투스 모듈 | 1 | HC-05 |
3 | 브레드보드 | 1 | |
4 | 점퍼케이블 | 4 |
부품명 | 오렌지 보드 | 블루투스 모듈 | 브레드보드 | 점퍼케이블 |
파트 |
`
#include <SoftwareSerial.h> // 블루투스 통신을 위한 SoftwareSerial 라이브러리를 불러온다.
SoftwareSerial BTSerial(2, 3); // SoftwareSerial(RX, TX)
byte buffer[1024]; // 데이터를 수신 받을 버퍼
int bufferPosition; // 버퍼에 데이타를 저장할 때 기록할 위치
boolean temp = 0;
void setup(){
BTSerial.begin(9600);
Serial.begin(9600);
pinMode(13, OUTPUT);
bufferPosition = 0; // 버퍼 위치 초기화
}
void loop(){
if (BTSerial.available()){ // 블루투스로 데이터 수신
byte data = BTSerial.read(); // 수신 받은 데이터 저장
Serial.write(data); // 수신된 데이터 시리얼 모니터로 출력
buffer[bufferPosition++] = data; // 수신 받은 데이터를 버퍼에 저장
if(data == '1'){ // 블루투스를 통해 '1' 이 들어오면
if(temp == 0){ // LED가 꺼있을 경우 LED를 켭니다.
digitalWrite(13, HIGH);
temp = 1;
}else{ // LED가 켜져있을 경우 LED를 끕니다.
digitalWrite(13, LOW);
temp = 0;
}
}
if(data == '\n'){ // 문자열 종료 표시
buffer[bufferPosition] = '\0';
bufferPosition = 0;
}
}
}
우선 아두이노에 블루투스 모듈을 연결하고 위의 코드를 업로드 합니다. 아두이노에서는 이 두 과정만 하면 준비가 완료됩니다.
아두이노 준비가 완료되었으면, 그다음으로는 블루투스 모듈과 스마트폰을 페어링 합니다. 디바이스 설정 -> 블루투스를 들어가셔서 검색을 누르시면 맨 왼쪽 화면과 같이 목록이 나옵니다. 그중에서 블루투스 모듈을 찾아서 선택합니다.(위에서 사용한 블루투스 모듈은 HC-05입니다.)
블루투스 모듈을 선택하면 가운데 사진과 같이 PIN번호를 입력하는 화면이 나옵니다. 여기에 1234나 0000을 입력하신 후 확인을 누르세요.(HC-05는 1234를 입력하시면 됩니다.)
PIN번호를 입력하셧으면 마지막 사진과 같이 등록된 기기에 블루투스 모듈이 있는것을 확인할 수 있습니다. 여기까지 하셧으면 블루투스 모듈과 스마트폰 사이에 페어링이 완료 되었습니다.
그다음 링크를 통해 블루투스로 LED를 제어할 안드로이드 어플(BT_Button1.apk)을 받으신 후, 실행하시면 등록된 블루투스 모듈 목록이 나옵니다. 이 목록에서 자신의 블루투스 모듈을 선택합니다. 그러면 밑의 화면과 같이 나옵니다. LED Control 버튼을 누르시면 아두이노 내장 LED의 불이 켜집니다.(13번 LED)
if (BTSerial.available()){ // 블루투스로 데이터 수신
byte data = BTSerial.read(); // 수신 받은 데이터 저장
Serial.write(data); // 수신된 데이터 시리얼 모니터로 출력
buffer[bufferPosition++] = data; // 수신 받은 데이터를 버퍼에 저장
if(data == '1'){
if(temp == 0){
digitalWrite(13, HIGH);
temp = 1;
}else{
digitalWrite(13, LOW);
temp = 0;
}
}
스마트폰에서 버튼을 누르게 되면 '1'이라는 문자값을 보냅니다.( ★ 숫자 1이 아닙니다.) 아두이노에서는 블루투스를 통해 신호가 들어오면 data라는 변수에 저장하고, 이 값을 비교해서 '1'일 경우엔 LED를 제어하고 그 외일 경우는 무시합니다.(안드로이드 어플에서 다 제어해서 보내므로 1아니면 \n(엔터)값만 들어오게 됩니다.)
LED의 상태값을 저장하기 위해 temp 변수를 선언하여 LED가 켜져있을 경우 temp값은 1로, LED가 꺼져있을 경우 temp값을 0으로 저장 합니다.
이 컨텐츠를 응용하여 아두이노의 다른 부품을 제어하실 경우 버튼을 누를 때 '1' 문자값이 오는것을 기억하시고 이를 이용해서 if문을 통해 제어하시면 됩니다.(안드로이드 어플을 수정하실 수 있으신 분은 댓글로 문의 남기시면 어플 코드를 직접 보내드립니다.)
* 다음 컨텐츠는 블루투스를 이용하여 아두이노 3색 LED를 각각 제어해 보겠습니다.(Seekbar or Button)
kocoafabeditor
항상 진취적이고, 새로운 것을 추구하는 코코아팹 에디터입니다!
안녕하세요. 아두이노 열심히 공부하고 있는 초보 개발자 입니다. 어플소스가 필요한데 어플 소스좀 부탁 드립니다.
2hyoin@naver.com .
수고하세요
앞으로 모바일 어플리케이션 및 다양한 소스가 "튜토리얼 > 다운로드"에 공개될 예정입니다.
다양한 활동을 통해 획득한 포인트로 다운로드 가능하니, 자주 방문하셔서 여러분의 많은 이야기를 나눠주세요. ^^
특히 프로젝트 공간에 여러분의 하시는 것에 대한 이야기를 나눠주시면 많은 도움이 되실거에요.
안녕하세요 해당 글에대한 안드로이드 소스코드를 참고하고 싶은데ㅜㅜ 보내주실 수 있으시면 lsg3514@naver.com 로 보내주시면 감사하겠습니당!
kocoafabeditor 2016-02-22 16:34:18
죄송합니다. 위에서 만든 어플은 apk 파일만 공유하고있습니다. ble관련 어플 소스는 튜토리얼 > 다운로드 탭에 있는 어플 소스 코드를 이용하셔서 해보시면 좋을 것 같습니다!
안녕하세요!! 제가 Led제어를 공부하고 있는데 모르는 게 너무 많아서요ㅜㅠ
어플소스코드 부탁드려요!!! thj0905@naver.com
안녕하세요! 안드로이드 아두이노 블루투스통신 공부하는 학생입니다.
안드로이드 소스 좀 공유 가능하신가요!
제 메일은jinm1357@naver.com입니다.
아두이노 안드로이드 연동으로 플젝진행하려는 학생입니다.
소스좀 보내주시면 공부하는데 많은 도움이 될 것 같습니다!!
grabass@naver.com 메일주소입니다.
부탁드리겠습니다!! 감사합니다~~!!
아두이노 안드로이드 연동으로 플젝진행하려는 학생입니다.
소스좀 보내주시면 공부하는데 많은 도움이 될 것 같습니다!!
grabass@naver.com 메일주소입니다.
부탁드리겠습니다!! 감사합니다~~!!
안녕하십니까! 좋은 글 감사합니다!!
저도 어플 소스를 좀 보내주시면 도움이 많이 될 것 같습니다!!
kimmail93@naver.com 로 시간이 가능하실 때 보내주시길 바랍니다!
감사합니다!!!
안녕하세요
이번에 아두이노 관련 프로젝트를 하고 있습니다.
이번 예제의 안드로이드 소스코드를 보면서 공부하고 싶습니다.
sh21kang@naver,com 으로 안드로이드 소스좀 부탁드립니다.
아두이노 블루투스 모듈관련 프로젝트진행중입니다.
안드로이스 소스에서 많은 도움을 받을수 있을 것 같습니다.
dhakdd@naver.com 으로 안드로이드 소스좀 보내주실수 있으신가요?
아두이노 블루투스 모듈관련 프로젝트진행중입니다.
소스를 보면서 공부하고 싶습니다.
소스좀 보내주실수 있으신가요? 부탁드립니다.
dmstjdnet@naver.com
안녕하세요. 졸업 작품으로 블루투스에서 아두이노로 신호를 넘기는 부분에서 막혀서 조언 부탁드립니다.(블루투스에서 아두이노 센서로 신호를 넘겨서 DC 모터의 속도를 바꾸는 겁니다.) 관련 소스도 같이 받을수 있을까요? kst911005@nate.com
안녕하세요 대학교 1학년 전공수업 프로젝트에서 안드로이드 신호를 블루투스로 넘겨야하는데 apk파일의 소스코드가 궁금해서요 부탁드립니다 jw6343@naver.com
안녕하세요! 아두이노와 안드로이드를 공부하고있는 대학생입니다!
어플소스 좀 받아볼수있을까요??ㅠㅠ kaee4@naver.com 으로 꼭부탁드립니다!
안녕하세요 tmddnjs103@naver.com 안드로이드 어플 소스 받을수있나요 ㅠㅠ?
지금 안드로이드랑 아두이노를 공부중인데 안드로이드에서 너무 막혀서요ㅠㅠ..
대학생 작품에 안드로이드로 아두이노를 블루투스 통신하여 안드로이드를 제어하는것을 연구중인데 잘 안되서 소스를 참고하고 싶습니다 소스좀 보내주세요 dmstn1124@naver.com입니다 부탁드립니다~
안드로이드 블루투스 공부하고있는데 어플소스를 참고해서 테스트 해보고 싶습니다. 공유 부탁드릴게요. khr8160@nate.com 입니다.
안녕하세요, 블루투스를 공부하고 있는데 아두이노와 통신해서 led 연결하는 데 연결이 잘 안되서 소스를 통해 테스트하고 싶습니다. 공유 부탁드려요!
hhjung97@naver.com
안녕하세요 안드로이드와 아두이노간 블루투스 통신을 하려 합니다 혹시 안드로이드 어플 소스를 테스트 하고 싶은데 코드 공유 가능하신가요 부탁드립니다 uyh1023@naver.com
안녕하세요 블루투스 공부중인 학생입니다. 혹시 앱 소스를 공유해주실수 있으신가요??ㅠㅠㅠㅠ s2017s35@e-mirim.hs.kr 입니다. 부탁드립니다 ㅠㅠ 너무 좋은 자료여서요 ㅠㅠㅠ
안녕하세요. 아두이노 안드로이드 통신 공부중인 학생입니다.
혹시 안드로이드 소스 공유해주실 수 있으신가요?
지금 안드로이드에서 막혀서 아무것도 못하는 상태여서
공유부탁드리고싶습니다.rlarbwjs@naver.com
아두이노 블루투스 관련 프로젝트 진행하고 있는 학생입니다. 혹시 앱소스코드를 따로 공유해주실 수 있으신가요?
가능하시다면 ain5977@hanmail.net으로 부탁드립니다!!!
안녕하세요
대학교에서 공부중인데 어플리케이션 소스좀 보면서 더 공부하고싶은데
어플소스좀 부탁 드려도 될까요????
rjsdud5635@naver.com 부탁드립니다.
안녕하세요
전자공학과 학생입니다.
안드로이드로 아두이노 led를 제어하는 공부를 하는중인데
어플 소스코드좀 참고 하고싶습니다.
vnvnalsdn1@naver.com
부탁드립니다ㅠ.ㅠ
안녕하세요! 전자공학과 학생입니다!
아두이노 사용해서 led 제어법 공부하는 학생인데, 어플소스쫌 정말 간곡히 부탁드립니다!!
jeong4726@naver.com
안녕하세요 매번 좋은 자료로 많은 공부하고 있습니다!!
혹시 죄송하지만 어플소스 좀 부탁드려도 될까요~
ash950310@naver.com
lilysilver 2019-10-20 21:32:11
안녕하세요!
아두이노와 안드로이드를 공부하고 있는 학생입니다.
안드로이드 앱 소스를 참고 할 수 있을까요?
dlffldk8060@naver.com
안녕하세요!!
안드로이드와 아두이노를 공부하고 있는 직딩입니다.
어플 소스 공유해 주시면 공부하는데 많은 도움 될것 같습니다. 감사합니다.
ricez@naver.com
안녕하세요!
안드로이드를 활용하여 아두이노를 제어하는 것을 공부하는데 위에 어플을 참고하고 싶습니다.
안드로이드 소스를 받을 수 있을까요?
sophia1122@naver.com
안녕하세요!
안드로이드를 활용하여 아두이노와 PC연결해서 전원을 제어 하는것을 목표로하고 있는데 위에 어플을 참고하여 공부를 하고싶습니다. 혹시 안드로이드 어플 소스를 부탁드려도 될까요? 공유해주신다면 많은 도움이 될것같습니다. 감사합니다
fx123123@naver.com
안녕하세요 어플제작 관련 공부중에 너무 잘 되있어서 참고하고 싶습니다
어플 소스 공유 부탁드려도 될까요??
dlrhksdn321@naver.com
김선호 2015-05-02 11:51:09
그대로 따라했는데 안되네요. 아마 수신을 못하는 것 같은데(시리얼 모니터에서 스마트폰으로 데이터 보내기는 성공했습니다.) 불량일까요? 아니면 제가 뭔가 놓친부분이 있나요?