安信可PB-01/02模组AT指令全解析:从广播名修改到微信小程序连接,一篇就够了
安信可PB-01/02模组AT指令实战指南从基础配置到微信小程序深度集成在物联网设备开发中蓝牙低功耗(BLE)模组因其低功耗、高兼容性等特点成为连接物理世界与数字世界的桥梁。安信可PB-01/02系列模组凭借稳定的BLE-UART固件和丰富的AT指令集为开发者提供了快速实现无线通信的解决方案。本文将深入解析如何通过这些AT指令完成从基础配置到与微信小程序深度集成的全流程开发。1. 核心AT指令详解与应用场景1.1 设备身份标识配置ATBLENAME和ATBLEMAC是设备部署前必须配置的两个关键指令。广播名称作为设备在蓝牙扫描列表中的名片直接影响用户体验和识别效率# 设置设备广播名称为SmartLock-01 ATBLENAMESmartLock-01 # 查询当前广播名称 ATBLENAME? 返回: BLENAME:SmartLock-01MAC地址作为设备唯一标识在需要设备识别的场景尤为重要。PB系列模组支持自定义MAC地址格式为6字节的十六进制数# 设置MAC地址为A4:C1:38:12:34:56 ATBLEMACA4C138123456 # 查询当前MAC地址 ATBLEMAC? 返回: BLEMAC:A4C138123456注意修改广播名称和MAC地址后需要重启模组才能生效可使用ATRST指令重启1.2 连接参数优化ATCONRANG指令用于调整BLE连接参数平衡功耗与响应速度。参数包括最小连接间隔、最大连接间隔、从机延迟和连接超时参数取值范围默认值说明最小间隔6-3200 (1.25ms单位)24值越小响应越快但功耗越高最大间隔6-320040应≥最小间隔从机延迟0-4990允许跳过的连接事件数超时时间10-3200 (10ms单位)800连接超时判定典型智能家居设备配置示例# 设置连接间隔20-40ms无延迟超时2s ATCONRANG20,40,0,2001.3 广播参数调整ATBLEADVINTV控制广播间隔影响设备被发现的速度和功耗# 设置广播间隔为100ms(0x100256*0.625ms) ATBLEADVINTV100 # 查询当前广播间隔 ATBLEADVINTV? 返回: BLEADVINTV:100广播间隔与功耗的关系曲线显示间隔从100ms增加到500ms可降低约60%的广播功耗但会延长设备被发现的时间。2. 微信小程序集成实战2.1 蓝牙服务配置微信小程序BLE API要求特定的服务UUID格式。使用ATBLESERUUID修改主服务UUID# 设置自定义服务UUID(必须符合蓝牙规范) ATBLESERUUID0000FFE0-0000-1000-8000-00805F9B34FB微信小程序端需要匹配的服务和特征UUID// 小程序蓝牙配置 const serviceId 0000FFE0-0000-1000-8000-00805F9B34FB; const characteristicId 0000FFE1-0000-1000-8000-00805F9B34FB;2.2 数据通信实现模组进入透传模式后与小程序的数据交互流程模组执行ATTRANSENTER进入透传模式小程序初始化蓝牙适配器发现并连接目标设备获取服务及特征值启用特征值通知建立双向通信小程序关键代码片段// 启用特征值通知 wx.notifyBLECharacteristicValueChange({ deviceId, serviceId, characteristicId, success: res { console.log(通知已启用, res) } }) // 监听接收数据 wx.onBLECharacteristicValueChange(res { const data new Uint8Array(res.value) console.log(收到数据:, data) })2.3 常见问题排查问题现象可能原因解决方案小程序扫描不到设备广播名称含特殊字符使用ATBLENAME修改为简单英文名称连接频繁断开连接参数不合理调整ATCONRANG参数数据收发不全MTU设置过小使用ATBLEMTU增大MTU值(最大250)服务不可见UUID不匹配确认ATBLESERUUID与小程序代码一致3. 高级配置技巧3.1 发射功率优化ATBLERFPWR指令调整发射功率影响通信距离和功耗功率等级典型发射功率适用场景0-23dBm极短距离超低功耗1-6dBm室内近距离20dBm常规室内应用36dBm需要较长距离的应用# 设置发射功率为最大(6dBm) ATBLERFPWR33.2 自定义广播数据ATBLEADVDATA允许在广播包中添加自定义数据实现无连接的数据传输# 设置广播数据为0x01 0x02 0x03 0x04 ATBLEADVDATA01020304 # 启用广播 ATBLEADVEN1微信小程序可通过扫描结果直接读取这些数据wx.onBluetoothDeviceFound(res { const advertData res.devices[0].advertisData console.log(广播数据:, advertData) })3.3 低功耗模式配置ATSLEEP指令控制模组休眠模式显著降低功耗# 启用深度睡眠模式 ATSLEEP1 # 唤醒模组(通过RST引脚或特定串口信号) ATRST不同睡眠模式下的电流消耗对比模式典型电流唤醒方式活跃模式10mA-浅睡眠1mA串口数据深度睡眠50μA硬件引脚4. 实战案例智能门锁控制系统以智能门锁为例展示PB-02模组的完整应用硬件连接PB-02模组通过UART与主控MCU连接门锁电机驱动电路连接到MCU的GPIOAT指令初始化序列ATBLENAMESmartLock-01 ATBLEMACA4C138123456 ATBLESERUUID0000FFE0-0000-1000-8000-00805F9B34FB ATCONRANG20,40,0,200 ATRST微信小程序交互设计设备列表显示自定义广播名称连接后显示锁状态发送开锁指令到特征值数据协议设计开锁指令0x01关锁指令0x02状态查询0x03状态返回0x04(开)/0x05(关)异常处理机制连接超时重试指令应答超时数据校验失败处理在智能家居场景中合理配置的PB-02模组可实现平均响应时间100ms待机电流100μA的性能表现满足大多数电池供电设备的续航要求。