HX-B1-M1 多连蓝牙模组
蓝牙模组一主50从使用说明书
蓝牙模组硬件规格书
AT指令总集
蓝牙模组HX-B1-M1硬件封装
蓝牙模组HX-B1-M1使用演示(视频)
一主多从性能调整说明
常见问题汇总
一主多从性能实测参数
蓝牙主机添加从机实现和逻辑
如无权限阅读,请联系微信:17625815328
-
+
首页
AT指令总集
# 一主多从蓝牙模组 AT 指令总集 本文系统介绍红旭无线一主多从的蓝牙模组 AT 指令,其中分蓝牙主机指令和蓝牙从机指令,主机和从机部分指令重复。蓝牙主机和从机的指令本文分开描述。 该 AT 命令透传固件有如下功能: 1. BLE 串口透传,即 BLE 协议的数据转化为串口数据 2. 在默认固件 1 对 50 多连的场景下,串口单次发包的最大有效载荷包限制为 120 字节;如果不需要 50 个多连并发,此限制可以根据具体的应用场景更改 3. 设备硬件或者软件复位之后,会打印输出 `Build Time:编译该固件的时间\r\n`,如: > `Build Time:22:44:06-Apr 26 2023\r\n` 下述的所有 AT 指令,如果对端设备成功接收到,那么均会响应相对应的命令;同时,所有的指令以**字符串**的形式发送,同时都要加上 > \r\n 串口的配置信息如下: - 波特率:主机: 460800,从机:115200。 - 校验位:None - 数据位:8 - 停止位:1 - 流控制:无 - TX: 模块的 IO 9 - RX: 模块的 IO 10 ![](https://docdisk.wireless-tech.cn/img/2023/06/12/2023-06-12_221756_5944140.7474346375157764.png) # 蓝牙主机支持的 AT 指令 - [AT](#at) - [AT+MAC](#atmac) - [AT+RESET](#atreset) - [AT+VERSION](#atversion) - [AT+FAC](#atfac) - [AT+START](#atstart) - [AT+LIST](#atlist) - [AT+TX](#attx) - [AT+WHITE\_BLACK\_LIST](#atwhite_black_list) - [AT+REMOVE](#atremove) - [AT+IO](#atio) - [从机上线和离线指示](#离线上线指示) ## AT **作用:** 用于测试串口通讯是否正常 --- **命令格式:** > AT **返回的命令格式:** > +OK **示例:** > AT\r\n<br> > +OK\r\n ## AT+MAC **作用:** 查询主从设备的 MAC 地址 --- **命令格式:** > AT+MAC=Parameter1 Parameter1 的含义如下所示: - ?:查询设备的 MAC 地址信息 - 其他的值无效 **返回的命令格式:** > +MAC:Parameter1,Parameter2 Parameter1 的含义如下所示: - 6 字节的 MAC 址 Parameter2 的含义如下所示: - MAC 地址类型: - 0x00:公有地址 - 0x01:随机地址 其他的返回值,参考[错误码](#错误码) **示例:** > AT+MAC=?\r\n<br> > +MAC:0x123456789012,0x01\r\n ## AT+RESET **作用:** 对**主或从**设备进行软复位 --- **命令格式:** > AT+RESET=Parameter1 Parameter1 的含义如下所示: - 1:软复位 - 其他值无效 **返回的命令格式:** > Build Time:编译该固件的时间\r\n 其他的返回值,参考[错误码](#错误码) **示例:** > AT+RESET=1\r\n<br> > Build Time:22:44:06-Apr 26 2023\r\n ## AT+VERSION **作用:** 查询当前固件的版本号 --- **命令格式:** > AT+VERSION=Parameter1 Parameter1 的含义如下所示: - ?:查询当前固件的版本号和其他相关信息 - 其他值目前无效。 **返回的命令格式:** > +VERSION:Parameter1 Parameter1 的含义如下所示: - 返回的固件版本号 - 其他的返回值,参考[错误码](#错误码) **示例:** > AT+VERSION=?\r\n<br> > +VERSION:S_V0.0.1\r\n ## AT+FAC **作用:** 恢复出厂设置并复位,**仅对 Master 有效!!!** --- **命令格式:** > AT+FAC=Parameter1 Parameter1 的含义如下所示: - 1:恢复出厂设置并复位 - 其他值目前无效 **返回的命令格式:** > Build Time:固件编译时间 其他的返回值,参考[错误码](#错误码) **示例:** > AT+FAC=1\r\n<br> > Build Time:22:44:06-Apr 26 2023\r\n ## AT+START **作用:** 开始搜索周围红旭的广播设备并创建连接,默认 120 秒后会关闭该功能 **(该命令仅对 Master 有效!!!)**。 - 如果遇到掉线,但还没有达到最大的连接个数,会继续扫描并尝试与红旭的广播设备建立连接; - 如果建立连接的个数已经达到上限了,则会自动停止扫描,再次发起该命令则会报错; --- **命令格式:** > AT+START=Parameter1 Parameter1 的含义如下所示: - 1:搜索周围的红旭广播设备并与其建立连接 - 0:停止搜索周边的广播设备 - ?:查询当前的状态 - 其他的值均无效 **返回的命令格式:** > +START:Parameter Parameter 的含义如下所示: - 0x01:处于搜索状态 - 0x00:处于停止状态 **(默认的状态)** - OK:命令成功执行 - 其他的返回值,参考[错误码](#错误码) **示例:** > AT+START=1\r\n<br> > +START:OK\r\n ## AT+LIST **作用:** - 主机,查询当前所连接的从机信息 - 从机,查询当前所连接的主机信息 --- **命令格式:** > AT+LIST=Parameter1 Parameter1 的含义如下所示: - ?:查询当前所连接的主、从机信息 - 其他值目前无效。 **返回的命令格式:** > +LIST:Parameter1,Parameter2,Parameter3,Parameter4 Parameter1 的含义如下所示: - 返回主、从机的索引值 Parameter2 的含义如下所示: - 返回主、从机的 MAC 地址 Parameter3 的含义如下所示: - 返回当前的连接句柄值,如果出现 0x0000 值,说明对应的从机还在白名单,只不过是主机复位重启了 Parameter4 的含义如下所示: - 当前的设备是否在线 - 1,在线 - 0,离线 其他的返回值,参考[错误码](#错误码) **示例:** > AT+LIST=?\r\n<br> > +LIST:0x00,0x565C3C39A0A0,0x0801,0x01\r\n ## AT+TX **作用:** 向指定的**主或从**设备透传数据 --- **发送命令格式:** > AT+TX=Parameter1,Parameter2,Parameter3 Parameter1 的含义如下: - 00~59: 表示**主或从**设备的索引值,可以通过下述的[AT+LIST](#AT+LIST)获取**主或从**设备的索引值 Parameter2 的含义如下: - 00:想要透传的是 16 进制数据类型 - 01:想要透传的是字符串数据类型 Parameter3 的含义如下: - 想要透传的数据 **返回的命令格式:** > +TX:Parameter Parameter 的含义如下所示: - 0x00:发送成功 - 其他的返回值,参考[错误码](#错误码) **接收命令格式:** 如果收到对端设备发送的数据,那么则会以下述的方式携带数据: > +RX:Parameter1,Parameter2 Parameter1 的含义如下: - 接收到的数据长度,16 进制表示 Parameter2 的含义如下: - 携带的透传数据内容 **示例:** **发送方** > AT+TX=01,00,1234567890\r\n<br> > +TX:0x00\r\n **接收方** > +RX:05,1234567890\r\n > 其中,**05**表示接收的数据长度为 5 个字节 ## AT+WHITE_BLACK_LIST **作用:** 查询黑或白名单列表中的内容 **(该命令仅对 Master 有效!!!)**; --- **命令格式:** > AT+WHITE_BLACK_LIST=Parameter1,Parameter2 Parameter1 的含义如下所示: - 0: 黑名单 - 1: 白名单 - 其他值目前无效。 Parameter2 的含义如下所示: - ?: 查询黑、白名单列表的内容 - 其他值目前无效。 **返回的命令格式:** > +WHITE_BLACK_LIST:索引值,对应的 MAC 地址 其他的返回值,参考[错误码](#错误码) **示例:** > AT+WHITE_BLACK_LIST=0,?\r\n<br> > +WHITE_BLACK_LIST:0x00,0x123456789012\r\n ## AT+REMOVE **作用:** 从黑或白名单列表中移除指定的设备 **(该命令仅对 Master 有效!!!)**; **注意:** - 如果是白名单列表中移除指定的设备,该命令断开对应的从机连接,并把对应的信息从白名单擦除,同时将该设备加入黑名单,整个过程不会很快(因为连接超时时间比较长); - 如果是黑名单列表中移除指定的设备,该命令把对应的从机信息从黑名单中擦除,并立即生效; --- **命令格式:** > AT+REMOVE=Parameter1,Parameter2 Parameter1 的含义如下所示: - 00~49:分别对应的黑或白名单列表的索引值 - 其他值目前无效 Parameter2 的含义如下所示: - 0: 黑名单 - 1: 白名单 - 其他值目前无效。 **返回的命令格式:** > +REMOVE:OK 其他的返回值,参考[错误码](#错误码) **示例:** > AT+REMOVE=00,1\r\n<br> > +REMOVE:OK\r\n ## AT+IO **作用:** 配置模块的 IO0/1/2 的电平,默认均为高电平 **(时间紧迫,目前该功能还未实现)** --- **命令格式:** > AT+IO=Parameter1,Parameter2 Parameter1 的含义如下所示: - 0/1/2:分别对应模块的 IO0/1/2 - 其他值目前无效 Parameter2 的含义如下所示: - 0: 低电平 - 1: 高电平 - 其他值目前无效。 **返回的命令格式:** > +IO:OK 其他的返回值,参考[错误码](#错误码) **示例:** > AT+IO=00,00\r\n<br> > +IO:OK\r\n ## 主从设备离线在线提醒指令 **作用:** 主、从机在连上或者断开连接时会有上线和离线的提醒,该指令是蓝牙模组主动向 MCU 发送的。且该指令会有几秒的延迟。尤其是离线通知。在从机离线后,可能需要几秒才能发出 +LEAVE 指令。 --- - 上线,**+ONLINE:对应设备的索引值,对应设备的 MAC 地址,连接句柄** - 离线,**+LEAVE:对应设备的索引值,对应设备的 MAC 地址,连接句柄** # 蓝牙从机支持的 AT 指令 - [AT](#at) - [AT+MAC](#atmac) - [AT+RESET](#atreset) - [AT+VERSION](#atversion) - [AT+LIST](#atlist) - [AT+TX](#attx) - [AT+DIRCON](#atdircon) - [AT+RESET](#atreset) - [从机上线和离线指示](#离线上线指示) ## AT **作用:** 用于测试串口通讯是否正常 --- **命令格式:** > AT **返回的命令格式:** > +OK **示例:** > AT\r\n<br> > +OK\r\n ## AT+MAC **作用:** 查询主从设备的 MAC 地址 --- **命令格式:** > AT+MAC=Parameter1 Parameter1 的含义如下所示: - ?:查询设备的 MAC 地址信息 - 其他的值无效 **返回的命令格式:** > +MAC:Parameter1,Parameter2 Parameter1 的含义如下所示: - 6 字节的 MAC 址 Parameter2 的含义如下所示: - MAC 地址类型: - 0x00:公有地址 - 0x01:随机地址 其他的返回值,参考[错误码](#错误码) **示例:** > AT+MAC=?\r\n<br> > +MAC:0x123456789012,0x01\r\n ## AT+RESET **作用:** 对**主或从**设备进行软复位 --- **命令格式:** > AT+RESET=Parameter1 Parameter1 的含义如下所示: - 1:软复位 - 其他值无效 **返回的命令格式:** > Build Time:编译该固件的时间\r\n 其他的返回值,参考[错误码](#错误码) **示例:** > AT+RESET=1\r\n<br> > Build Time:22:44:06-Apr 26 2023\r\n ## AT+VERSION **作用:** 查询当前固件的版本号 --- **命令格式:** > AT+VERSION=Parameter1 Parameter1 的含义如下所示: - ?:查询当前固件的版本号和其他相关信息 - 其他值目前无效。 **返回的命令格式:** > +VERSION:Parameter1 Parameter1 的含义如下所示: - 返回的固件版本号 - 其他的返回值,参考[错误码](#错误码) **示例:** > AT+VERSION=?\r\n<br> > +VERSION:S_V0.0.1\r\n ## AT+LIST **作用:** - 主机,查询当前所连接的从机信息 - 从机,查询当前所连接的主机信息 --- **命令格式:** > AT+LIST=Parameter1 Parameter1 的含义如下所示: - ?:查询当前所连接的主、从机信息 - 其他值目前无效。 **返回的命令格式:** > +LIST:Parameter1,Parameter2,Parameter3,Parameter4 Parameter1 的含义如下所示: - 返回主、从机的索引值 Parameter2 的含义如下所示: - 返回主、从机的 MAC 地址 Parameter3 的含义如下所示: - 返回当前的连接句柄值,如果出现 0x0000 值,说明对应的从机还在白名单,只不过是主机复位重启了 Parameter4 的含义如下所示: - 当前的设备是否在线 - 1,在线 - 0,离线 其他的返回值,参考[错误码](#错误码) **示例:** > AT+LIST=?\r\n<br> > +LIST:0x00,0x565C3C39A0A0,0x0801,0x01\r\n ## AT+TX **作用:** 向指定的**主或从**设备透传数据 --- **发送命令格式:** > AT+TX=Parameter1,Parameter2,Parameter3 Parameter1 的含义如下: - 00~59: 表示**主或从**设备的索引值,可以通过下述的[AT+LIST](#AT+LIST)获取**主或从**设备的索引值 Parameter2 的含义如下: - 00:想要透传的是 16 进制数据类型 - 01:想要透传的是字符串数据类型 Parameter3 的含义如下: - 想要透传的数据 **返回的命令格式:** > +TX:Parameter Parameter 的含义如下所示: - 0x00:发送成功 - 其他的返回值,参考[错误码](#错误码) **接收命令格式:** 如果收到对端设备发送的数据,那么则会以下述的方式携带数据: > +RX:Parameter1,Parameter2 Parameter1 的含义如下: - 接收到的数据长度,16 进制表示 Parameter2 的含义如下: - 携带的透传数据内容 **示例:** **发送方** > AT+TX=01,00,1234567890\r\n<br> > +TX:0x00\r\n **接收方** > +RX:05,1234567890\r\n > 其中,**05**表示接收的数据长度为 5 个字节 ## AT+DIRCON **作用:** 用于开启或者解除或者查询定向连接功能,默认是不开启定向连接功能;**(该命令仅对 Slave 有效!!!,目前该功能已关闭)** **注意:** 该命令不会立即生效,仅在下一次连接后生效;同时该命令仅在连接后调用方可有效,否则报错 --- **命令格式:** > AT+DIRCON=Parameter1 Parameter1 的含义如下所示: - ?:查询是否开启了定向连接功能 - 0:解除定向连接功能 - 1:开启定向连接功能 - 其他的值无效 **返回的命令格式:** > +DIRCON:Parameter1 Parameter1 的含义如下所示: - OK:表示开启或者解除定向连接功能成功 - 0x01:当前已开启定向连接功能 - 0x00:当前已关闭定向连接功能 - 其他的返回值,参考[错误码](#错误码) **示例:** > AT+DIRCON=1\r\n<br> > +DIRCON:OK\r\n ## AT+ERASE **作用:** 擦除定向连接的相关信息,擦除成功后,定向连接的功能解除,此时可以让任何的主机与其建立连接 **(该命令仅对 Slave 有效!!!,目前该功能已关闭)** --- **命令格式:** > AT+ERASE=Parameter1 Parameter1 的含义如下所示: - 1:表示要擦除定向连接的相关信息 - 其他的值无效 --- **返回的命令格式:** > +ERASE:OK 其他的返回值,参考[错误码](#错误码) --- **示例:** > AT+ERASE=1\r\n<br> > +ERASE:OK\r\n ## 主从设备离线在线提醒指令 **作用:** 主、从机在连上或者断开连接时会有上线和离线的提醒,该指令是蓝牙模组主动向 MCU 发送的。且该指令会有几秒的延迟。尤其是离线通知。在从机离线后,可能需要几秒才能发出 +LEAVE 指令。 --- - 上线,**+ONLINE:对应设备的索引值,对应设备的 MAC 地址,连接句柄** - 离线,**+LEAVE:对应设备的索引值,对应设备的 MAC 地址,连接句柄** # 操作演示 操作演示 见文档 [蓝牙模组 HX-B1-M1 使用演示](https://docs.wireless-tech.cn/doc/115/) 文档 # 错误码(适用于主机和从机) 上述所有 AT 指令的错误值返回的格式如下: > +ERR:错误码 其中,各个错误码表达的含义如下所示: - 0xED:黑名单列表已满 - 0xEE:黑或白名单的内容正在移除中 - 0xEF:指定的设备不存在 - 0xF0:指定的设备已在黑名单中 - 0xF1:数据类型无效 - 0xF2:黑或白名单的内容为空 - 0xF3:黑或白名单的内容已经移除 - 0xF4:定向连接已经除能 - 0xF5:定向连接已经使能 - 0xF6:当前的状态调用该命令无效 - 0xF7:连接句柄无效 - 0xF8:需要的发送据包长度超过固件支持的长度 - 0xF9:无效的索引值 - 0xFA:AT 命令中找不到等号 - 0xFB:AT 命令列表不存在该 AT 命令 - 0xFC:内存分配失败 - 0xFD:传入的实参为空 - 0xFE:该命令所携带的参数无效 - 0xFF:该命令此时无效 # 名词和特殊符号解释 1:回车换行符 > \r\n 上文中提及的\r\n 都是回车换行符,\r 对应的 HEX 的值是 0x0D,\n 对应的 HEX 的值是 0x0A。
红旭无线官2
2023年6月18日 19:15
307
0 条评论
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
欢迎关注红旭无线官方微信公众号
Markdown文件
PDF文档
PDF文档(打印)
分享
链接
类型
密码
更新密码
有效期