HM-10 블루투스 모듈: 두 판 사이의 차이
편집 요약 없음 |
잔글편집 요약 없음 |
||
| (같은 사용자의 중간 판 6개는 보이지 않습니다) | |||
| 1번째 줄: | 1번째 줄: | ||
[[파일:HM10대표이미지1.jpg|가운데|class=coders100]] | {{#seo:|title=아두위키 : 아두이노 HM-10 블루투스 모듈 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, HM-10 블루투스 모듈, 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 HM-10 블루투스 모듈을 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}}[[파일:HM10대표이미지1.jpg|가운데|class=coders100]] | ||
블루투스 기능을 사용할 수 있는 모듈입니다. | 블루투스 기능을 사용할 수 있는 모듈입니다. | ||
비콘으로도 사용 가능합니다. | 비콘으로도 사용 가능합니다. | ||
== '''사양''' == | == '''사양''' == | ||
| 11번째 줄: | 11번째 줄: | ||
* default name : HMSoft | * default name : HMSoft | ||
* default baud rate(Serial Connection) : 9600 | * default baud rate(Serial Connection) : 9600 | ||
== '''필요 하드웨어''' == | == '''필요 하드웨어''' == | ||
| 18번째 줄: | 19번째 줄: | ||
* UNO cable | * UNO cable | ||
* F-M cable(4ea) | * F-M cable(4ea) | ||
== '''연결''' == | == '''연결''' == | ||
| 37번째 줄: | 39번째 줄: | ||
| colspan="1" rowspan="1" |D7(변경 가능) | | colspan="1" rowspan="1" |D7(변경 가능) | ||
|} | |} | ||
[[파일:HM-10 회로.png| | [[파일:HM-10 회로.png|가운데|class=coders100]] | ||
== '''라이브러리''' == | == '''라이브러리''' == | ||
SoftwareSerial (기본 라이브러리) | SoftwareSerial (기본 라이브러리) | ||
== '''AT command''' == | == '''AT command''' == | ||
| 47번째 줄: | 51번째 줄: | ||
* 시리얼 모니터로 AT 커맨드를 전송하여 사용 가능합니다. | * 시리얼 모니터로 AT 커맨드를 전송하여 사용 가능합니다. | ||
* 데이터시트에 사용 가능한 AT명령어가 설명되어 있습니다. (HC-06 블루투스 모듈과 명령어 일부가 다릅니다.) [https://people.ece.cornell.edu/land/courses/ece4760/PIC32/uart/HM10/DSD%20TECH%20HM-10%20datasheet.pdf HM-10 데이터시트] | * 데이터시트에 사용 가능한 AT명령어가 설명되어 있습니다. (HC-06 블루투스 모듈과 명령어 일부가 다릅니다.) [https://people.ece.cornell.edu/land/courses/ece4760/PIC32/uart/HM10/DSD%20TECH%20HM-10%20datasheet.pdf HM-10 데이터시트] | ||
== '''예제 코드''' == | == '''예제 코드''' == | ||
| 87번째 줄: | 92번째 줄: | ||
OK가 출력되었다면 정상적으로 동작이 가능한 상태입니다. | OK가 출력되었다면 정상적으로 동작이 가능한 상태입니다. | ||
[[파일:HM-10 동작확인.png|가운데|class= | [[파일:HM-10 동작확인.png|가운데|class=coders50]] | ||
=== 블루투스 터미널 어플리케이션 테스트 === | === 블루투스 터미널 어플리케이션 테스트 === | ||
| 97번째 줄: | 103번째 줄: | ||
[[파일:터미널 테스트.png|가운데|class=coders100]] | [[파일:터미널 테스트.png|가운데|class=coders100]] | ||
== '''구매링크''' == | == '''구매링크''' == | ||
[https:// | [https://gongzipsa.com/shop/1699939275 공집사몰] | ||
2025년 3월 19일 (수) 20:11 기준 최신판

블루투스 기능을 사용할 수 있는 모듈입니다.
비콘으로도 사용 가능합니다.
사양
- 작동 전압 : 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. 앱에서 입력한 메시지는 시리얼 모니터에 표시되고, 반대로 시리얼 모니터에 입력한 메시지는 앱에 표시됩니다.
