按照官网提供的下面步骤 升级P-NUCLEO-WB55.USBDongle单板的FUS和无线协议栈后,单板在sw2 to boot0下,stm32cubeprogrammer选择usb模式无法再识别到DFU设备,感觉是FUS升级坏了。
有个疑问:按照介绍,stm32wb5x_FUS_fw.bin 是烧录在 0x080EC000位置,而stm32wb5x_BLE_Stack_fw.bin是烧录在0x080cb000位置,这两个位置之间相差0x21000,可是stm32wb5x_BLE_Stack_fw.bin文件的大小有160KB左右,这样烧录stm32wb5x_BLE_Stack_fw.bin时 不就会把FUS空间覆盖了吗?
STEP 1: Use STM32CubeProgrammer
Version 2.0 or higher.
It gives access to Firmware Upgrade Service (FUS) (AN5185 : ST firmware upgrade services for STM32WB Series.) through Bootloader.
It is currently available as Command Line Interface (CLI) mode.
STEP 2: Access to Bootloader USB Interface (system flash)
Boot mode selected by Boot0 pin set to VDD
For P-NUCLEO-WB55.Nucleo :
Jumper between CN7.5(VDD) and CN7.7(Boot0)
Power ON via USB_USER and Jumper JP1(USB_MCU)
For P-NUCLEO-WB55.USBDongle :
Move switch SW2 to Boot0
Connect P-NUCLEO-WB55.USBDongle
STEP 3 : Delete current wireless stack :
STM32_Programmer_CLI.exe -c port=usb1 -fwdelete
STEP 4 : Read and upgrade FUS Version
STM32_Programmer_CLI.exe -c port=usb1 -r32 0x20030030 1
0x20030030 : 00050300 : FUSv0.5.3 => Must be updated using STEP 5.
0x20030030 : 01000100 or 01000200 : FUSv1.0.x => Up to date, you can download the new wireless stack using STEP6.
STEP 5 : Download new FUS :
STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade [FUS_Binary] [Install@] firstinstall=0
Please check Firmware Upgrade Services Binary Table for Install@ parameter depending of the binary.
STEP 6 : Download new wireless stack :
STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade [Wireless_Coprocessor_Binary] [Install@] firstinstall=1
Please check Wireless Coprocessor Binary Table for Install@ parameter depending of the binary.
STEP 7 : Revert STEP 2 procedure to put back device in normal mode. |