• 正文
  • 相关推荐
申请入驻 产业图谱

STM32WB一次性烧写 FUS+STACK+APP 实操指南:CLI 批量量产方案

2小时前
135
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

STM32WB 系列 MCU 的 FUS(固件更新服务)、BLE 协议栈(STACK)与用户应用(APP)可通过 STM32CubeProgrammer v2.11.0 及以上版本的 CLI(命令行接口)一次性烧写,无需多次手动操作,核心是通过串联-startfus-fwupgrade-d(下载 APP)和-hardRst命令,自动完成启动 FUS、升级 FUS/STACK、下载 APP 及复位全流程,大幅提升量产效率。

资料获取:STM32WB如何一次性烧写FUS+STACK+APP

1. 核心优势与适用场景

  • 效率提升:避免多次手动输入地址和选择文件,单次命令完成三部分烧写;
  • 量产适配:支持集成到脚本批量执行,减少人工操作错误;
  • 版本要求:仅需 STM32CubeProgrammer ≥v2.11.0,兼容 STM32WB 全系列(如 STM32WB5x)。

2. 前置准备工作

2.1 工具与环境

  • 安装 STM32CubeProgrammer v2.11.0 及以上版本,确保STM32_Programmer_CLI.exe可在命令行调用(配置环境变量或进入安装目录执行);
  • 硬件连接:通过 SWD 接口连接开发板 / 量产板,确保 RESET 引脚调试器相连(支持-hardRst硬复位)。

2.2 待烧写文件与地址

需提前准备三类文件,烧写地址需严格遵循 STM32WB 内存映射规则(文档示例地址通用,具体以数据手册为准):

烧写对象 文件类型 推荐烧写地址 说明
FUS FUS 固件(如 stm32wb5x_FUS_fw.bin) 0x080EC000 固件更新服务,需先启动
STACK BLE 协议栈(如 stm32wb5x_BLE_Stack_full_fw.bin) 0x080CE000 蓝牙协议栈固件
APP 用户应用二进制文件(如 BLE_HeartRate.bin) 0x08000000 用户主程序,默认启动地址

3. 核心操作:CLI 一次性烧写实现

<h3">3.1 命令行核心格式

通过串联关键命令,按 “启动 FUS→烧写 FUS→硬复位→烧写 STACK→硬复位→烧写 APP→硬复位” 顺序执行,完整命令格式如下:

STM32_Programmer_CLI.exe -c port=swd mode=UR 
-startfus 
-fwupgrade "FUS文件路径" FUS地址 -hardRst 
-fwupgrade "STACK文件路径" STACK地址 -hardRst 
-d "APP文件路径" APP地址 -hardRst

3.2 关键参数说明

  • -c port=swd mode=UR:配置 SWD 接口,连接模式为 “Under Reset”(复位下连接);
  • -startfus:启动 FUS 服务,为后续 FUS/STACK 升级做准备;
  • -fwupgrade <文件路径> <地址>:专门用于升级 FUS 或 BLE 协议栈,支持firstinstall=1(首次安装)、startstack=1(启动栈)等可选参数;
  • -d/-w <文件路径> <地址>:下载 APP 二进制文件,下载前自动擦除对应内存区域;
  • -hardRst:每步操作后硬复位,确保配置生效,避免烧写冲突。

3.3 完整实操示例

以 STM32WB5x 为例,假设文件路径和地址如下,直接复制修改路径即可执行:

STM32_Programmer_CLI.exe -c port=swd mode=UR 
-startfus 
-fwupgrade "C:STM32Cubestm32wb5x_FUS_fw.bin" 0x080EC000 -hardRst 
-fwupgrade "C:STM32Cubestm32wb5x_BLE_Stack_full_fw.bin" 0x080CE000 -hardRst 
-d "C:ProjectsBLE_HeartRate.bin" 0x08000000 -hardRst

4. 烧写验证与注意事项

4.1 验证方法

  • 烧写完成后,设备会自动硬复位并进入 APP 运行状态;
  • 若为 BLE 应用(如心率监测),可通过手机蓝牙搜索设备,能成功连接即说明烧写有效;
  • 查看命令行日志,出现 “Firmware Upgrade Success”“File download complete” 即表示各模块烧写成功。

4.2 关键注意事项

  • 文件路径:若路径含空格,需用英文双引号包裹(如示例中格式);
  • 地址准确性:FUS 和 STACK 地址不可混淆,需严格遵循 STM32WB 内存映射,避免覆盖;
  • 工具版本:低于 v2.11.0 的版本不支持批量串联命令,需升级工具;
  • 首次安装:若为首次烧写 FUS/STACK,需添加firstinstall=1参数(如-fwupgrade "xxx.bin" 0x080EC000 firstinstall=1)。

STM32WB 一次性烧写 FUS+STACK+APP 的核心是利用 STM32CubeProgrammer 的 CLI 命令串联能力,通过-startfus启动服务、-fwupgrade升级 FUS/STACK、-d下载 APP,配合-hardRst确保每步生效,完全适配量产场景的自动化需求。操作无需复杂配置,修改文件路径和地址即可直接使用。

相关推荐