使用 W800at 固件进行蓝牙透传的流程

发布于 2024-03-29 17: 27: 24

1. 使用的 sdk 版本: 1. 00. 10

1692954953451. rar

2. 使用到的命令 (只能用串口 0 和串口 1)

AT+BTEN 使能蓝牙协议栈
设置命令
功能:  打开蓝牙协议栈
命令:  AT+BTEN= "uart_index" ,  "log_level" 
响应:  OK
参数:  
Uart_index:  打印控制器侧日志的串口号,  强烈建议使用 255,  即不打印控制器日志功能 Log_level:   应用日志等级,  [0~6].  默认使用 6 即可
示例:  
AT+BTEN=255, 6
AT+BTDES 注销蓝牙协议栈
设置命令
功能:  注销蓝牙协议栈,  释放系统资源
命令:  AT+BTDES
响应:  OK
示例:  AT+BTDES
AT+BLEUDS 配置 AT 数据收发功能  (启动 server 并注册接收回调,  收到数据后会主动上报给串口)  
设置命令
功能:  用于开启或者关闭 AT 数据发送功能
命令:  AT+BLEUDS= "init" 
响应:  OK
参数:  init 1 开启 AT 数据发送,  0 关闭 AT 数据发送
示例:  
      AT+BTEN=255, 6  //打开蓝牙协议栈
      AT+BLEUDS=1   //使能 AT 数据发送功能
说明:  
      •本指令创建 FFF0 的 primary 的基本服务,  创建 characteristic 为 FFF1, 支持 indicate 功能,  创建 characteristic 为 FFF2 支持 client 的写操作;  
      •本指令执行后,  自动开启广播,  广播字段包含:  
名称为 WM-XX: XX: XX 其中 XX: XX: XX 为设备蓝牙地址的后 3 个字节,  
UUID 为 FFF0 的 16bit service UUID
•本指令执行后,  client 端可以扫描该设备,  连接后发起写操作.  设备端收到数据后,  打印格式为:  +DATA:  XXXXXXXX...  , XX 为 16 进制字符串
AT+BLEUSND AT 数据发送数据功能
设置命令
功能:  用于向 client 端发送数据
命令:  AT+BLEUSND= "hex_string" 
响应:  OK
参数:  hex_string 发送的数据内容,  为 HEX 的字符串,  如果发送 111A2B3C 实际发送内容为 0x11 0x1A 0x2B 0x3C 支持最长的字符串长度为:  256 个字符,  即 128BYTE 的数据
说明:  本指令通过 FFF1characteristic 的 indicate 功能向 client 端发送数据,  发送数据前,  client 端需要先使能该 indicate 功能.  

3. 演示流程

AT+BTEN=255, 6 //使能蓝牙协议栈
AT+BLEUDS=1 //开启 AT 指令收发数据
image. png

AT+BLEUSND=313233AABC //发送数据
image. png
image. png

其他说明:

AT+BLEUM 不建议使用, 默认串口需要满 244 个字节才能上报, 没有超时上报机制
使用的话用 AT+BTEN=255, 6 和 AT+BLEUM=1, 1 两个命令即可, 此命令暂时不能使用+++退出透传模式

0 条评论

发布
问题