本文最后更新于 666 天前,其中的信息可能已经有所发展或是发生改变。
开始
这是Arduino
蓝牙模块通信的笔记,使用了以下两种模块:
- HC-05是主从模块,能做主机,从机。
- HC-06是从模块,只能做从机。
连接
Arduino UNO | HC-05 |
---|---|
5V | 5V |
GND | GND |
10 | TX |
11 | RX |
参考代码
#include <SoftwareSerial.h>
SoftwareSerial BT(10, 11); // 接收, 传送,程序中10为RX需要接hc-05的TXD,11为TX,需要接hc-05的RX。
char val;
void setup() {
Serial.begin(38400);
Serial.println("BT is ready!");
// HC-05默认,38400
BT.begin(38400);
}
void loop() {
if (Serial.available()) {
val = Serial.read();
BT.print(val);
}
if (BT.available()) {
val = BT.read();
Serial.print(val);
}
}
- 模块在AT模式下,固定波特率为38400。工作模式下默认波特率为9600。
- 按住HC05左上角的黑色按钮,再进行接线通电,指示灯间隔2秒闪烁一次,表示进入AT模式。
- 如果指示灯连续闪烁很快,说明在工作模式,未进入AT模式。
指令 | 意义 |
---|---|
AT+ORGL | 恢复出厂设置 |
AT+NAME=HUANG_TEST | 修改蓝牙模块名称为XXX |
AT+ROLE=0 | 蓝牙模式为从模式 |
AT+CMODE=1 | 蓝牙连接模式为任意地址连接模式,也就是说该模块可以被任意蓝牙设备连接 |
AT+PSWD=1234 | 蓝牙配对密码为1234 |
Arduino UNO | HC-05 |
---|---|
5V | 5V |
GND | GND |
RX | TX |
TX | RX |