HM-10 Bluetooth Module CN: 두 판 사이의 차이
(새 문서: {{#seo:|title=아두위키 : 아두이노 HM-10 블루투스 모듈 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, HM-10 블루투스 모듈, 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 HM-10 블루투스 모듈을 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}}파일:HM10대표이미지1.jpg|...) |
잔글편집 요약 없음 |
||
| 1번째 줄: | 1번째 줄: | ||
{{#seo:|title= | {{#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 | |||
== '''所需硬件''' == | |||
* HM-10 | * HM-10 | ||
* Arduino UNO | * Arduino UNO | ||
* | * UNO电缆 | ||
* F- | * F-M电缆(4根) | ||
== ''' | |||
== '''连接''' == | |||
将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" | | | colspan="1" rowspan="1" |D6(可更改) | ||
|- | |- | ||
| colspan="1" rowspan="1" |RXD | | colspan="1" rowspan="1" |RXD | ||
| colspan="1" rowspan="1" | | | colspan="1" rowspan="1" |D7(可更改) | ||
|} | |} | ||
[[파일:HM-10 회로.png|가운데|class=coders100]] | [[파일:HM-10 회로.png|가운데|class=coders100]] | ||
== ''' | == '''库''' == | ||
SoftwareSerial(基本库) | |||
== ''' | == '''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数据表] | |||
== ''' | == '''示例代码''' == | ||
<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来测试操作。 | |||
如果输出OK,则表示可以正常运行。 | |||
[[文件:HM-10 操作确认.png|居中|class=coders50]] | |||
=== 蓝牙终端应用程序测试 === | |||
1. 在智能手机上安装蓝牙终端应用程序。应用程序类型不限。 | |||
2. 在应用程序中连接HM-10蓝牙模块。 | |||
3. 在应用程序中输入的消息将显示在串行监视器上,反之,在串行监视器中输入的消息将显示在应用程序中。 | |||
[[文件:终端测试.png|居中|class=coders100]] | |||
== ''' | == '''购买链接''' == | ||
[https://smartstore.naver.com/gongzipsa/products/7375915722 | [https://smartstore.naver.com/gongzipsa/products/7375915722 GongzipsaMall] | ||
2025년 3월 19일 (수) 20:31 판

这是一个可以使用蓝牙功能的模块。
也可以用作信标。
规格
- 工作电压: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(可更改) |

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