• 资料介绍
  • 在线预览
  • 相关推荐
申请入驻 产业图谱

AN5247 STM32WB 系列微控制器OTA和无线固件更新

01/15 14:33
908
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

AN5247 STM32WB 系列微控制器OTA和无线固件更新

1.98 MB

本文档介绍了通过低功耗蓝牙连接在 STM32WB 设备上进行 OTA 固件更新的过程。它讲解如何使用 STM32Cube 固件包中提供的 OTA 应用程序,实现用户应用程序、无线固件和固件升级服务的更新。

OTA 固件更新原理

必须在设备生命周期内更新固件,以确保最佳性能、用新功能或更正的补丁更新应用程序并保持最高的安全级别。

用户应用程序、无线固件和 FUS 更新

STM32WB 系列微控制器基于双 Arm®(a)内核。

用户应用程序运行在 CPU1(Cortex® M4)上,而无线固件和 FUS 运行在 CPU2(Cortex® M0+)上。这三个应用程序可以独立更新。

由于无线和 FUS 以加密格式提供,其更新过程依赖于 STM32WB 安全固件以实现更新内容的解密以及 Flash 存储区内受保护区域的分配。

无线

可以通过物理链路(如 USB、UARTI2C)来完成固件的更新,但此过程需要对设备上特定端口进行物理访问。得益于 OTA,可以使用无线连接来远程更新固件。在本应用笔记中,无线连接使用低功耗蓝牙协议。

更新客户端

更新过程遵循客户端/服务端架构,由外部客户端发起。需更新设备作为服务端,通过响应客户端的请求实现新版本固件的升级。

本文介绍了意法半导体提供的基于低功耗蓝牙协议的两个 OTA 客户端的示例:

-ST BLE Sensor:用于 Android™或 iOS 设备的移动应用程序

-STMCubeMonitor-RF:在 HCI 透传模式下配置的与低功耗蓝牙 USB 蓝牙模块通信的 PC 工具

OTA 应用程序

OTA 应用程序是一个独立运行的应用程序,集成了用于管理固件传输及将其烧录到 Flash 存储器中准确位置的相关低功耗蓝牙服务。它在用户应用程序接收 OTA 请求后由 CPU1 激活和执行。

存储器架构

STM32WBFlash 存储器分为两部分:用户部分和安全部分。用户部分可供 CPU1 访问且包含 OTA应用程序,及用户应用程序代码和数据。安全部分仅可供 CPU2 访问且包含 FUS 和无线固件。此部分不可供调试端口、用户应用程序或自举程序访问。选项字节 SFSA 提供两个区域之间的边界,上述存储器为安全部分。SFSA 值取决于无线固件大小,可在安装过程中对其进行调整。

在线预览

相关推荐