加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 资料介绍
    • OTA 固件更新原理
  • 资料预览
  • 相关推荐
申请入驻 产业图谱

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

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

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 值取决于无线固件大小,可在安装过程中对其进行调整。

资料预览

相关推荐