HM-10 블루투스 모듈

아두위키 : Arduwiki

블루투스 기능을 사용할 수 있는 모듈입니다.

비콘으로도 사용 가능합니다.

사양

  • 작동 전압 : 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. 앱에서 입력한 메시지는 시리얼 모니터에 표시되고, 반대로 시리얼 모니터에 입력한 메시지는 앱에 표시됩니다.

구매링크

공집사몰