zephyr笔记 5.3 设备固件升级DFU

本文介绍了Zephyr操作系统中的设备固件升级子系统,包括其组成部分和与MCUboot的兼容性。提供了使用MCUboot进行固件升级的具体步骤。

1 前言

设备固件升级子系统提供必要的框架以在运行时升级基于Zephyr的应用程序的映像。 它目前由两个不同的模块组成:

boot /:引导加载程序的接口代码
img_util /:镜像管理代码

DFU子系统处理镜像管理,但不涉及将镜像发送到目标设备所需的传输或管理协议本身。有关这些协议和框架的信息,请参阅管理部分。

我正在学习 Zephyr,一个很可能会用到很多物联网设备上的操作系统,如果你也感兴趣,可点此查看帖子zephyr学习笔记汇总

2 Bootloaders

2.1 MCUboot

Zephyr 直接与开源、跨RTOS的 Bootloader MCUboot 兼容。Zephyr 与 MCUboot 对接过,知道它所需的镜像格式,因此当使用 MCUboot 作为 Bootloader 时,Zephyr 的 Device Firmware Upgrade 可用。源码托管在 MCUboot GitHub Project 页面中。

为了在Zephyr中使用 MCUboot,您需要考虑以下几点:

1.您需要在设备树闪存分区中定义 MCUboot 所需的 MCUboot 分区。
2.您的应用程序的 .conf 文件需要启用 CONFIG_BOOTLOADER_MCUBOOT Kconfig 选项才能使 Zephyr 以 MCUboot 兼容方式构建。
3.您需要编译并烧写 MCUboot 到您的设备上。
4.您可能需要采取预防措施以避免大量擦除闪存,并以正确的偏移量(在引导加载程序之后) 烧写 Zephyr 应用程序映像。

有关 Zephyr 如何使用 MCUboot 的更多详细信息,请参见 MCUboot 网站上 MCUboot with Zephyr 的相关文档。


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值