STM32WB如何一次性燒寫FUS+STACK+APP

1.前言

在使用STM32WB系列MCU時,通過STM32CubeProgramer GUI方式更新FUS,Stack,User APP,需要操作多次,並且要輸入不同的地址,比較煩瑣,不適合在量產中操作使用。 根據RN0109:STM32CubeProgrammer v2.11.0 release information描述,在 STM32CubeProgrammer v2.11.0 中已經支持通過CLI的方式自動更新FUS,STACK,以及User APP。

圖1.版本更新信息


2.操作方法

根據 UM2237 STM32CubeProgrammer command line interface (CLI) for MCUs 文檔描述,升級 FUS,STACK,User APP 會用到以下命令。

-startfus:啟動 FUS


-fwupgrade:升級 BLE 協議棧或 FUS

-w,--write,-d,--download:下載二進制文件,下載前會先進行擦除操作。


-hardRst:硬復位

單獨升級 FUS 或協議棧時,根據以上的語法規則操作命令即可,同時升級FUS+STACK+APP 時,在 STM32CubeProgrammer v2.11.0 版本中只需通過命令行將三條命令合成一條即可,見下圖。

圖2.燒寫命令


路徑和地址,需要根據自己實際的路徑和要燒寫的文件決定。

STM32_Programmer_CLI.exe -c port=swd mode=UR -startfus -fwupgrade "C:\Users\zhaomaso\STM32Cube\Repository\STM32Cube_FW_WB_V1.14.1\Projects\STM32WB_Copro_Wireless_Binaries\STM32WB5x\stm32wb5x_FUS_fw.bin" 0x080EC000 -HardRst -fwupgrade "C:\Users\zhaomaso\STM32Cube\Repository\STM32Cube_FW_WB_V1.14.1\Projects\STM32WB_Copro _Wireless_Binaries\STM32WB5x\stm32wb5x_BLE_Stack_full_fw.bin" 0x080CE000 -HardRst -d "C:\Users\zhaomaso\STM32Cube\Repository\STM32Cube_FW_WB_V1.14.1\Projects\P-NUCLEO-WB55.Nucleo\Applications\BLE\BLE_HeartRate\EWARM\BLE_HeartRate\Exe\BLE_HeartRate.bin" 0x08000000 -HardRst


3.燒錄驗證

由於命令中包含硬復位,所以燒錄成功後,系統會被復位,復位後會進入用戶燒寫過的 APP執行,此時就可以直接去連接藍牙並驗證應用了。

燒錄過程會產生Log信息,見附錄。

4.總結

一鍵燒寫在產線上是比較實際的需求,目前更新到的 STM32CubeProgrammer v2.11.0 版本已支持通過 CLI 的方式進行更新燒錄,在後續版本中可能會有更方便的操作方 式。當然也可以將這些命令做成腳本的方式,更方便的去使用。


5.附錄

LOG 日誌:





★博文內容參考自 網站,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

參考來源

false: https://www.stmcu.com.cn/Designresource/detail/LAT/711623

評論