HC-05-嵌入式蓝牙串口通讯模块
介绍
Hc-05, 是一种嵌入式蓝牙串口通讯模块. 其结构图为:
实物图, 正面如:
背面:
其有两种工作模式:
- 自动连接工作模式
- 命令响应工作模式
自动连接工作模式
此模式下, 设备可分为三种 roles:
- Master (主设备), 是控制连接的设备, 它负责发起和控制与从设备的通信. 在自动连接工作模式下, 主设备会自动搜索并连接到指定的从设备. 在一个蓝牙网络 (Piconet) 中, 只能有一个主设备
- Slave (从设备), 是被控制的设备, 它接收主设备的连接请求, 并响应主设备的通信请求. 在自动连接工作模式下, 从设备会等待主设备的连接. 一个蓝牙网络中可以有多个从设备
- Loopback (回环设备), 是一种特殊的测试模式. 在此模式下, 发送到设备的所有数据都会被立即返回 (即 “回环”) 到发送者. 这种模式主要用于测试和调试, 例如用于检查设备的传输和接收是否正常
模块会按照事先设定的方式进行连接和数据传输.
命令响应工作模式
此模式下, 通过客户端向模块发送 AT 指令来设置参数以及行为控制. (AT 指令是一种用于配置和控制 HC-05 模块的命令. “AT” 的含义来自于 “Attention”, 即 “注意” 的意思)
有哪些可用的 AT 命令则需要查表. 常用的附在 blog 的最后.
工作模式转换
通过控制模块外部引脚 PIO11
的输入电平以实现工作模式的动态转换:
- 低电平/悬空, 蓝牙常规工作模式 (自动连接工作模式)
- 高电平, AT 命令响应工作模式
在有些 HC-05 上, PIO11
与正面的一个按钮相连, 按下时为高电平:
信号指示
PIO8
连接到 LED, 用于指示模块的工作模式, 不同的闪烁间隔代表不同的工作模式.
(LED 的位置如上图)
大致有三种闪烁频率:
- 每隔 1s 亮/灭, 是 AT 命令响应模式
- 快速闪烁, 是自动连接工作模式
- 连续两次闪烁, 表明已经连接成功
模块复位
给复位电路重新上电即完成复位.
设置为 master 的步骤
PIO11
置高电平后上电 (即按下 HC-05 表面的按钮之后再上电), 此时会进入 AT 命令响应模式- 用串口工具 (如 cutecom), 设置波特率 38400, 数据位 8 位, 停止位 1 位, 无校验位, 无流控制
- 串口工具发送字符 “AT+ROLE=1”, 接收返回信息 “OK”
PIO11
置低电平后重新上电 (也就是不按 HC-05 表面的按钮之后上电), 此时模块已设置为 master, 且进入自动连接模式, 自动搜索 slave 并建立连接
常用 AT 指令
测试
1 |
|
响应:
1 |
|
复位
1 |
|
响应:
1 |
|
获取模块蓝牙地址
1 |
|
设置/查询设备名称
1 |
|
设置/查询模块角色
1 |
|
设置为:
- 0, slave
- 1, master
- 2, slave-loop
设置/查询设备类
1 |
|
可设置为 32 位参数, 用于标识蓝牙设备的类型.
Cutecom 配置 AT 命令模式
首先需要用 USB 转串行适配器, 把 HC-05 的 TX 和 RX 引脚连接到 Linux 设备的串行接口.
需设置波特率为 38400, 数据位是 8, 停止位是 1, 无奇偶校验.
1 |
|
(注意 “CR/LF”)
此时点击左上角的 Open 之后即可发送 AT 指令, 如发送 AT
回复得到 OK
.
AT 命令表
HC-05-嵌入式蓝牙串口通讯模块
http://example.com/2024/05/03/HC-05-嵌入式蓝牙串口通讯模块/