HM-10 Bluetooth Module CN: 두 판 사이의 차이

아두위키 : Arduwiki
(새 문서: {{#seo:|title=아두위키 : 아두이노 HM-10 블루투스 모듈 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, HM-10 블루투스 모듈, 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 HM-10 블루투스 모듈을 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}}파일:HM10대표이미지1.jpg|...)
 
잔글 (→‎库)
 
(같은 사용자의 중간 판 3개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{#seo:|title=아두위키 : 아두이노 HM-10 블루투스 모듈 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, HM-10 블루투스 모듈, 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 HM-10 블루투스 모듈을 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}}[[파일:HM10대표이미지1.jpg|가운데|class=coders100]]
{{#seo:|title=Arduino维基:Arduino HM-10蓝牙模块指南|title_mode=append|keywords=Arduino, 信息科学, 创客学习, 性能评估, HM-10蓝牙模块, Arduino作品, 毕业设计作品, Arduino示例代码|description=介绍如何使用Arduino控制HM-10蓝牙模块(基本信息、电路、示例代码)。可用于信息科学和创客课程。}}[[파일:HM10대표이미지1.jpg|가운데|class=coders100]]


블루투스 기능을 사용할 수 있는 모듈입니다.
这是一个可以使用蓝牙功能的模块。


비콘으로도 사용 가능합니다.
也可以用作信标。


== '''사양''' ==
== '''规格''' ==
* 工作电压:5V
* 蓝牙版本:4.0
* 默认名称:HMSoft
* 默认波特率(串行连接):9600


* 작동 전압 : 5V
* 블루투스 버전 : 4.0
* default name : HMSoft
* default baud rate(Serial Connection) : 9600
== '''필요 하드웨어''' ==


== '''所需硬件''' ==
* HM-10
* HM-10
* Arduino UNO
* Arduino UNO
* UNO cable
* UNO电缆
* F-M cable(4ea)
* F-M电缆(4根)


== '''연결''' ==
 
TXD, RXD를 UNO보드의 디지털 핀 중 원하는 번호로 설정하여 사용합니다. (본문에서는 D6, D7 사용)
== '''连接''' ==
将TXD、RXD设置为UNO板上任意数字引脚使用。(本文中使用D6、D7)
{| class="wikitable"
{| class="wikitable"
| colspan="1" rowspan="1" |HM-10
| colspan="1" rowspan="1" |HM-10
32번째 줄: 32번째 줄:
|-
|-
| colspan="1" rowspan="1" |TXD
| colspan="1" rowspan="1" |TXD
| colspan="1" rowspan="1" |D6(변경 가능)
| colspan="1" rowspan="1" |D6(可更改)
|-
|-
| colspan="1" rowspan="1" |RXD
| colspan="1" rowspan="1" |RXD
| colspan="1" rowspan="1" |D7(변경 가능)
| colspan="1" rowspan="1" |D7(可更改)
|}
|}
[[파일:HM-10 회로.png|가운데|class=coders100]]
[[파일:HM-10 회로.png|가운데|class=coders100]]


== '''라이브러리''' ==
== '''Library''' ==
SoftwareSerial (기본 라이브러리)
SoftwareSerial(基本库)
 


== '''AT command''' ==
== '''AT命令''' ==
* 可以使用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명령어를 사용하여 블루투스 상태 확인이 가능합니다.
* 시리얼 모니터로 AT 커맨드를 전송하여 사용 가능합니다.
* 데이터시트에 사용 가능한 AT명령어가 설명되어 있습니다. (HC-06 블루투스 모듈과 명령어 일부가 다릅니다.)  [https://people.ece.cornell.edu/land/courses/ece4760/PIC32/uart/HM10/DSD%20TECH%20HM-10%20datasheet.pdf HM-10 데이터시트]


== '''예제 코드''' ==
== '''示例代码''' ==
<syntaxhighlight lang="c++" line="1">
<syntaxhighlight lang="c++" line="1">
//시리얼 통신을 위한 라이브러리 추가
//添加串行通信库
#include <SoftwareSerial.h>
#include <SoftwareSerial.h>


//블루투스용 시리얼 통신용 객체 생성
//创建蓝牙串行通信对象
SoftwareSerial BTSerial(6,7);
SoftwareSerial BTSerial(6,7);


void setup()
void setup()
{
{
   //보드레이트 설정
   //设置波特率
   Serial.begin(9600);
   Serial.begin(9600);
   BTSerial.begin(9600);
   BTSerial.begin(9600);
   Serial.println("시리얼 통신 시작");
   Serial.println("串行通信开始");
}
}


void loop()
void loop()
{
{
   //블루투스 시리얼로 들어온 데이터가 있다면 시리얼에 작성되도록 한다.
   //如果蓝牙串行有输入数据,则写入串行
   while (BTSerial.available()>0)
   while (BTSerial.available()>0)
   {
   {
73번째 줄: 74번째 줄:
   }
   }


   //시리얼로 들어온 데이터가 있다면 블루투스 시리얼에 작성되도록 한다.
   //如果串行有输入数据,则写入蓝牙串行
   while (Serial.available()>0)
   while (Serial.available()>0)
   {
   {
82번째 줄: 83번째 줄:
</syntaxhighlight>
</syntaxhighlight>


=== 동작 확인 ===
=== 操作确认 ===
코드 업로드 후 시리얼 모니터에서 AT를 입력해 동작을 테스트합니다.
上传代码后,在串行监视器中输入AT来测试操作。


OK가 출력되었다면 정상적으로 동작이 가능한 상태입니다.
如果输出OK,则表示可以正常运行。


[[파일:HM-10 동작확인.png|가운데|class=coders50]]
[[파일:HM-10 동작확인.png|가운데|class=coders50]]


=== 블루투스 터미널 어플리케이션 테스트 ===
1. 스마트폰에서 블루투스 터미널 어플리케이션을 설치합니다. 어플리케이션 종류는 무관합니다.


2. 어플리케이션 내에서 HM-10 블루투스 모듈과 연결합니다.
=== 蓝牙终端应用程序测试 ===
 
1. 在智能手机上安装蓝牙终端应用程序。应用程序类型不限。


3. 앱에서 입력한 메시지는 시리얼 모니터에 표시되고, 반대로 시리얼 모니터에 입력한 메시지는 앱에 표시됩니다.
2. 在应用程序中连接HM-10蓝牙模块。
 
3. 在应用程序中输入的消息将显示在串行监视器上,反之,在串行监视器中输入的消息将显示在应用程序中。


[[파일:터미널 테스트.png|가운데|class=coders100]]
[[파일:터미널 테스트.png|가운데|class=coders100]]
== '''구매링크''' ==
[https://smartstore.naver.com/gongzipsa/products/7375915722 공집사몰]

2025년 3월 20일 (목) 17:20 기준 최신판

这是一个可以使用蓝牙功能的模块。

也可以用作信标。

规格

  • 工作电压:5V
  • 蓝牙版本:4.0
  • 默认名称:HMSoft
  • 默认波特率(串行连接):9600


所需硬件

  • HM-10
  • Arduino UNO
  • UNO电缆
  • F-M电缆(4根)


连接

将TXD、RXD设置为UNO板上任意数字引脚使用。(本文中使用D6、D7)

HM-10 Arduino UNO
GND GND
VCC 5V
TXD D6(可更改)
RXD D7(可更改)

Library

SoftwareSerial(基本库)


AT命令

  • 可以使用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. 在应用程序中输入的消息将显示在串行监视器上,反之,在串行监视器中输入的消息将显示在应用程序中。