Zephyr 支持使用'mcuboot' 进行固件升级。以下是使用'mcuboot' 的简要步骤:

  1. 配置 Zephyr 项目以支持'mcuboot'。在项目的'prj.conf' 文件中增加以下配置:
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_BOOTLOADER_MCUBOOT_SIGNATURE_TYPE=RSA
  1. 编译和烧录 Zephyr 应用程序。在第一次烧录时,需要将'mcuboot' 烧录到设备上。这可以通过以下命令完成:
west flash -r mcuboot.bin

其中,'mcuboot.bin' 是'mcuboot' 的二进制文件,可以在 Zephyr 构建目录的'build/zephyr/' 子目录中找到。

  1. 配置设备以支持'mcuboot'。设备需要支持在运行时切换到'mcuboot',这可以通过在设备上设置引导选项来实现。具体步骤可能因设备而异,请参阅设备文档以获取详细信息。

  2. 准备要升级的新固件。新固件需要与'mcuboot' 一起编译,并使用'mcuboot' 签名工具生成签名。签名可以使用 RSA 或 ECDSA 算法生成。

  3. 将新固件烧录到设备上。这可以通过以下命令完成:

west flash -r my_app.bin

其中,'my_app.bin' 是新固件的二进制文件。

  1. 重启设备并将其切换回应用程序模式。设备将在运行时检测到新固件,并将自动切换到'mcuboot' 以完成升级。升级完成后,'mcuboot' 将自动切换回应用程序模式,并启动新固件。
Zephyr MCUBOOT 固件升级指南

原文地址: https://www.cveoy.top/t/topic/nVTV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录