반응형





아두이노! 블루투스사용하여 시리얼 통신하기!


오늘은 아두이노와 블루투스 모듈을 사용하여 시리얼 통신을 하는 방법을 아주 쉽.게. 알려드리려고 합니다.


이번에 사용하는 블루투스 모듈을 HC-05블루투스 모듈입니다.

(아이폰이 HC-05에서 된다고해서 이걸로 샀는데 ^^... 근데 그거 거짓부렁입니다 여러분!!!)




빨간색은 +5V , 검정색은 GND, 초록색은 2Pin, 파란색은 3Pin에 연결해주세요.





(검정색선을 데이터핀으로 연결하고 바꾸지 않은건 귀찮아서 그런게 맞습니다.. 노랑이가 GND면 어때서!! )




소스코드입니다. 복사 붙여넣기 하시고 업로드 해주시면 됩니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <SoftwareSerial.h>
 
SoftwareSerial BTSerial(23);   //bluetooth module Tx:Digital 2 Rx:Digital 3
 
void setup() {
  
  Serial.begin(9600);
  BTSerial.begin(9600);
}
 
void loop() {
  if (BTSerial.available())
    Serial.write(BTSerial.read());
  if (Serial.available())
    BTSerial.write(Serial.read());
}
cs


SoftwareSerial에서 블루투스 Rx,Tx를 설정해줍니다.


통신 속도는 9600으로 맞췄습니다. 

원래 HC-05의 기본속도는 38400이지만, 9600으로 쓰도록 하겠습니다.


그리고 시리얼속도와 블루투스 통신 속도가 같아야지 시리얼 모니터에 정상적으로 표시가 됩니다.


loop에서 위에 if문은 안드로이드에서 아두이노로 보내는 조건문이고

아래 if문은 아두이노에서 안드로이드로 보내는 조건문입니다.




다음으로 안드로이드OS기기에서 <블루투스 컨트롤러> 어플리케이션을 설치해줍니다. 꼭 이 어플리케이션이 아니더라도 다른 종류의 컨트롤러도 많습니다. 취향별로 골라 쓰세요.

[어플다운로드]


어플 실행해서 장치검색을 통하여 블루투스와 연결해주시고 (이름 기본 HC-05)

키 설정에서 이름과 데이터를 설정해주시고 데이터를 전송을 해주시면 됩니다.


전송을 해주시면 시리얼 모니터에 전송한 글자가 이렇게 표시가 되는 것을 볼 수 있습니다. 어때요 참 쉽죠?

다음번에는 HC-05에서 WakeUp과 State를 변경하는 방법을 한번 알아보도록 하겠습니다.




반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기