HM-10 블루투스 모듈
블루투스 기능을 사용할 수 있는 모듈입니다.
비콘으로도 사용 가능합니다.
사양
- 작동 전압 : 5V
- 블루투스 버전 : 4.0
- default name : HMSoft
- default baud rate(Serial Connection) : 9600
필요 하드웨어
- HM-10
- Arduino UNO
- UNO cable
- F-M cable(4ea)
연결
TXD, RXD를 UNO보드의 디지털 핀 중 원하는 번호로 설정하여 사용합니다. (본문에서는 D6, D7 사용)
HM-10 | Arduino UNO |
GND | GND |
VCC | 5V |
TXD | D6(변경 가능) |
RXD | D7(변경 가능) |
라이브러리
SoftwareSerial (기본 라이브러리)
AT command
- AT명령어를 사용하여 블루투스 상태 확인이 가능합니다.
- 시리얼 모니터로 AT 커맨드를 전송하여 사용 가능합니다.
- 데이터시트에 사용 가능한 AT명령어가 설명되어 있습니다. (HC-06 블루투스 모듈과 명령어 일부가 다릅니다.) HM-10 데이터시트
예제 코드
//시리얼 통신을 위한 라이브러리 추가
#include <SoftwareSerial.h>
//블루투스용 시리얼 통신용 객체 생성
SoftwareSerial BTSerial(6,7);
void setup()
{
//보드레이트 설정
Serial.begin(9600);
BTSerial.begin(9600);
Serial.println("시리얼 통신 시작");
}
void loop()
{
//블루투스 시리얼로 들어온 데이터가 있다면 시리얼에 작성되도록 한다.
while (BTSerial.available()>0)
{
byte data = BTSerial.read();
Serial.write(data);
}
//시리얼로 들어온 데이터가 있다면 블루투스 시리얼에 작성되도록 한다.
while (Serial.available()>0)
{
byte data = Serial.read();
BTSerial.write(data);
}
}
동작 확인
코드 업로드 후 시리얼 모니터에서 AT를 입력해 동작을 테스트합니다.
OK가 출력되었다면 정상적으로 동작이 가능한 상태입니다.
블루투스 터미널 어플리케이션 테스트
1. 스마트폰에서 블루투스 터미널 어플리케이션을 설치합니다. 어플리케이션 종류는 무관합니다.
2. 어플리케이션 내에서 HM-10 블루투스 모듈과 연결합니다.
3. 앱에서 입력한 메시지는 시리얼 모니터에 표시되고, 반대로 시리얼 모니터에 입력한 메시지는 앱에 표시됩니다.