FUOTA = Firmware Update Over The Air, 译为“无线固件更新”,这项功能将为工程人员的升级及调试带来极大的便利。 随着正在和将要发生的物联网规模化落地,“无线连接”被广泛采用,因为可以带来更多更具想象力的应用场景,无线升级(FOTA:Firmware on the Air,亦称作空中升级)成为嵌入式设备的必备功能之一。 “无线连接”可以用两个字符概括表达:W & B,W = WIRELESS, B=BLE。这就是STM32WB后两个字符的由来。要“连接”,就会涉及到很多协议,比如BLE、Thread、Zigbee,它们在STM32WB芯片内部是如何布局?我们需要复盘一下STM32WB的双核架构。 STM32的双核结构 STM32WB是一个系统芯片方案,即只有一颗芯片,但包含了两颗独立内核,用以实时执行任务。相比单核的无线MCU使用的分时共享,STM32WB通过双核的分配和协同升级为实时执行,因而缩短了任务执行时间,达到降低功耗、延长电池续航时间的效果;双核的架构还提高了开发的灵活度,使开发更为简易快速。
FUS是什么?因何而来? STM32WB的两个内核具有不同的使用功能,M0+跑协议栈,M4跑用户应用。由于支持多种协议栈,因此芯片出厂前并未烧录协议栈,而是放了一个FUS,让用户自主选择并烧录协议栈。FUS,Firmware Update Service之意,是专门为 Firmware 升级来服务的一段特殊程序,但需要特别指出的是,此处的“Firmware”是专指由M0+内核运行的FUS本身和RF协议栈,不包括M4内核上运行的用户应用程序。 RF协议栈包含在STM32CubeWB包里,用户在拿到WB芯片后,最通常的做法应是:使用最新版本的STM32CubeWB固件包里,最新的RF协议栈和最新的FUS同步更新。 STM32WB的无线固件更新功能 我们更新STM32WB芯片里的RF协议栈和用户应用程序,可以有四种方式,如下图。
▲ 四种更新方式图解 近程/有线方式两种:一是通过USB通信接口,搭配STM32CubeProgrammer上位机软件更新;二是通过JTAG/SWD调试接口,搭配STLINKUtility使用。 另外一大类就是使用BLE接口的空中升级方式,即远程/无线方式(FUOTA)。如果STM32WB芯片里面已经有合适的BLE 协议栈和带BLE OTA功能的bootloader程序;那么即可通过手机或者装有STM32CubeProgrammer的上位机作为OTA客户端发起OTA请求,从而更新RF协议栈或新版的用户应用程序。 FUOTA具体如何操作呢?以下七节视频为你解答,并带你实际操作体验FUOTA的便利:(点击蓝字进入视频) |
| 收藏 |
好东东 |
STM32
超强工具——STM32CubeMX 你会用吗?
集结出发! STM32全国研讨会系列之一:ST智能门铃中国首秀
关于STM32启动文件的几个小问题
【银杏科技ARM+FPGA双核心应用】STM32H7系列35——USB_VCP_FS
【银杏科技ARM+FPGA双核心应用】STM32H7系列28——USB_HID
粉丝分享 | 图说CRC原理应用及STM32硬件CRC外设
STM32L151进入低功耗,并由RTC唤醒的故事
[转]stm32控制NFC模块(PN532)源码(P2P,模拟卡,读写卡等
STM32G070RB+LVGL移植
微信公众号
手机版