아두이노 Arduino

HC-06 블루투스 아두이노에 연결해보기 (AT명령어, 안드로이드폰에 연결하기)

끄적끄적아무거나 2021. 3. 23. 19:33
반응형

하드웨어 연결(Arduino + HC-06)

 


 

그림1

그림1은 Frizting이라는 툴을 사용해서 회로도를 작성한 것이다. 

 

HC-06 블루투스 모듈과 아두이노는 통신라인과 전원라인만 간단히 연결하면 된다. 

 

RXD(HC06)은 3번에 TXD(HC06)은 2번에 연결한다. 3번 2번은 아두이노 코드에서 설정한 값이라 다른 포트로 변경도 가능하다. 

 

전원은 5V와 GND에 연결한다. 

 

 

그림2

그림2은 실제 자리에서 연결한 사진이다. 브래드보드 오른편에 연결되어 있는 것이 HC-06 블루투스 모듈이고 왼편에 있는 것은 가속도 센서이다. 이번 실험에서는 단순 블루투스 연결만을 위해 사용하므로 왼쪽에 모듈은 신경안써도 된다.

 

최종 연결은 가속도 센서에서 읽은 값을 블루투스를 통해 PC에 보내는 동작을 할 것이다. 

 

 

 

아두이노 코드


 

#include <SoftwareSerial.h>
 

SoftwareSerial bluetooth(2, 3);
 
void setup(){
  Serial.begin(9600);
  bluetooth.begin(9600);
}
 
void loop(){
  if (bluetooth.available()) {
    Serial.write(bluetooth.read());
  }
  if (Serial.available()) {
    bluetooth.write(Serial.read());
  }
}

 

코드 주석>>

 

아두이노에 bluetooth라는 모듈이 있어서 단순히 핀번호만 입력하면 연결할 수 있다. 그리고 setup에서 시리얼 통신과 블루투스 통신 시작을 한다. 

 

loop함수에서 블루투스 버퍼와 시리얼 통신 버퍼를 확인하면서 값이 들어오면 각 각 보내 준다. 

 

 

AT 명령어 테스트


 

그림3

아두이노에서 터미널을 열고 속도를 9600baudrate에 맞춘다. 그리고 Line ending 없음으로 설정해야 한다.

위와 같이 AT를 입력하면 OK라는 메세지를 받을 수 있다. 이는 블루투스 모듈과 아두이노가 잘연결되었음을 알수 있다.

 

그림4

그림4와 같이 AT+NAME바꾸고싶은이름 을 해서 블루투스 이름을 famtech로 변경하였다.

 

 

그림5

그림5처럼 이름을 확인할 수 있다.

 

그림6

AT+PIN 명령을 사용하여 비밀 번호를 4321로 변경하였다. 기본 default 는 1234이다. 이제 블루투스에 전원이 꺼졌다가 켜져도 비밀번호는 4321이다.

 

 

핸드폰에 연결하기


참고로 내 핸드폰은 갤럭시이다. HC-06은 안드로이드에서만 동작한다고 들었는데 애플에서는 안해봐서 모르겠다.

 

그림7

그림7처럼 핸드폰에 arduino bluetooth controller 앱을 설치한다.

 

그림8

편의상 다른 블루투스는 지웠다. 아래에 famtech라는 블루투스명이 떴다. 위에서 설정한 이름이다. 해당 블루투스를 연결하자.

 

 

그림9

비밀번호를 누르라고 한다. 전에 설정한 4321을 누르자.

 

그림10

그림10처럼 메뉴를 선택할 수 있는데 터미널모드를 하면 창이 뜬다. 

 

그림11

그림11처럼 텍스트를 입력하였고 이 메세지는 블루투스를 통해 아두이노에 전달된다. 그리고 아두이노는 현재 컴퓨터와 시리얼 통신중이다. 그래서 시리얼 통신으로 위 메세지를 아래 그림처럼 받았다.

 

 

반응형