STM32WB 系列是 ST 主打双核多协议的无线 MCU,Cortex-M4 负责应用、Cortex-M0 + 专职射频处理,完美支持 BLE、Thread、Zigbee、IEEE 802.15.4 等主流射频协议。官方应用笔记 AN5289,就是面向工程师的一站式射频开发手册,从架构、初始化到 BLE/Thread/MAC 开发、低功耗、FUOTA 升级全覆盖,直接落地量产级射频应用。
资料获取:【应用笔记】使用 STM32WB 系列微控制器构建射频应用
1. STM32WB 核心架构与协议支持
STM32WB 采用双核分离架构,射频与应用解耦,稳定性和实时性拉满:
- CPU1(Cortex-M4):运行用户应用、HAL 库、调度逻辑、业务代码
- CPU2(Cortex-M0+):固化射频协议栈,处理 BLE/Thread/802.15.4 底层时序
支持的射频协议与对应固件:
- BLE:全功能栈、轻量栈、HCI 协处理器模式
- Thread:FTD 全功能设备、MTD 精简设备
- 并发模式:BLE+Thread 静态 / 动态切换
- IEEE 802.15.4 MAC:原生 MAC 层开发
- Zigbee:FFD 全功能、RFD 精简设备
所有 CPU2 固件以加密二进制提供,CPU1 通过标准接口调用,无需关注射频底层实现。
2. 软件架构与核间通信
双核靠IPCC 邮箱完成命令、事件、数据交互,是射频开发的核心通道:
- 传输层 TL:管理系统通道、BLE 通道、内存通道
- 共享资源保护:RNG、FLASH、RCC 等外设通过硬件信号量互斥访问
- 系统服务:
开发时直接调用官方封装接口,不用处理双核竞争与时序冲突。
3. 系统初始化:射频启动必走流程
射频应用初始化必须遵循官方流程,缺一不可:
- 硬件初始化:时钟、GPIO、电源、UART 调试配置
- 传输层初始化:TL_Init → TL_SYS_Init → TL_MM_Init → TL_Enable
- CPU2 启动:等待系统就绪事件,这是发送射频命令的前提
- 协议栈初始化:SHCI_C2_BLE_Init(BLE)/SHCI_C2_THREAD_Init(Thread)
只有收到 CPU2 的 READY 事件,才能开始广播、扫描、组网等操作。
4. BLE 应用:从基础到量产功能
AN5289 把 BLE 开发拆成标准化步骤,直接照做就能跑通:
- 初始化:GAP/GATT 配置、发射功率、设备地址
- 广播 / 扫描:外设可发现、中央设备扫描,支持自定义广播数据
- GATT 服务:标准服务(心率、设备信息)、自定义服务快速添加
- 安全配对:Just Work、密码输入、安全连接,支持绑定存储
- 性能优化:2Mbps PHY 切换、连接参数更新、最大吞吐量配置
- 实用示例:
- DTM 透传:射频认证测试专用
- 心率传感器:标准 BLEProfile 落地
- P2P 点对点:自定义服务双向通信
- BLE FUOTA:无线升级 CPU1 应用与 CPU2 射频固件
5. Thread 应用:Mesh 低功耗组网开发
基于 OpenThread 栈,STM32WB 的 Thread 开发极简:
- 设备类型:FTD(支持路由 / Leader)、MTD(仅终端设备)
- 开发步骤:协议栈初始化 → 网络配置(信道、PANID)→ 使能 IPv6 → 启动 Thread
- 核心功能:
- CoAP 通信:资源定义、请求 / 响应、组播
- 配网:设备加入 Mesh 网络,支持本地配网
- 低功耗 SED:休眠终端,电池供电长效运行
- Thread FUOTA:Mesh 网络内无线批量升级
Thread 数据自动存储 Flash,掉网重连无需重新配置。
6. IEEE 802.15.4 MAC:原生底层开发
需要自定义 802.15.4 协议时,直接调用 MAC API:
- 设备角色:FFD 协调器、RFD 节点
- 核心接口:MLME(管理)、MCPS(数据)
- 开发流程:初始化 MAC → 配置地址 → 启动设备 → 关联组网 → 数据收发适合私有无线协议、工业点对点通信场景。
7. 工程关键要点:避坑必备
- Flash 管理:双核共享 Flash,写 / 擦除前获取信号量,射频活动时禁止擦除
- 低功耗:Stop2 是射频激活下的最深模式,退出后重新配置 PLL
- 并发模式:BLE/Thread 静态切换,禁用一个再启动另一个
- 调试:GPIO 输出射频状态、SRAM2 存储故障信息、UART 打印日志
- 故障恢复:ECC 错误自动处理、FUOTA 断电保护、Magic 关键字校验
AN5289 是 STM32WB 射频开发的官方实操手册,把双核通信、协议栈调用、低功耗、无线升级等难点全部标准化。不管是做 BLE 蓝牙设备、Thread Mesh 组网,还是 802.15.4 私有协议,照着文档配置、调用接口,就能快速完成从原型到量产的射频应用开发,大幅降低无线 MCU 的开发门槛。
375