使用 STM32 通用 Bootloader ,让 OTA 更加 Easy

2019-04-01 17:59:00
viprt
原创
1668

随着物联网时代到来,越来越多的智能设备拥有了在线升级的能力,无论是系统更新,产品功能迭代还是漏洞修复都能在第一时间抵达用户手中的智能设备。

在线升级功能需要使用 OTA (Over-the-Air) 技术 ,OTA 技术简单地说就是通过网络来升级手中的智能设备,进而使用设备最新版本的功能。而 OTA 技术中必不可少的一环就是通过 Bootloader 来管理、升级设备固件。

打开百度App,看更多图片

由于 OTA 功能由多种复杂技术组成,因此添加 OTA 功能有一定的技术门槛。很多开发者遇到莫名其妙的问题,进而导致 OTA 升级失败,常见问题如下:

升级过程缺少专业的安全机制APP 无法正常启动程序莫名跑飞,出现 hardfault固件搬运失败固件解密解压错误升级不稳定等为了解决广大开发者在添加 OTA 功能时遇到的种种困难,RT-Thread 开发团队凭借在该领域深厚的技术积累,为开发者提供了 STM32 系列的通用 Bootloader ,开发者通过该 Bootloader 即可直接使用 RT-Thread OTA 功能。

通用 Bootloader 的功能特点

下图展示了 RT-Thread 通用 Bootloader 的软件框架:

RT-Thread 通用 Bootloader 有如下特点:

以 bin 文件的形式提供,无需修改即可使用资源占用小,ROM 最小只需要 16KB,最大 32KB适用于多系列 STM32 芯片(目前支持 F1 和 F4 系列 )支持各种 SPI Flash 存储固件支持固件加解密功能支持多种固件压缩方式支持恢复出厂固件功能以上功能均可自由配置获取方式及使用方法

在线生成 Bootloader

Bootloader 可以通过网页端在线生成的方式来获取。开发者根据自己使用的芯片,填写相关参数,然后点击生成按钮,即可在线生成 Bootloader,在线获取地址,请留言获取

Bootloader 生成页面如下所示:

填写板卡硬件配置

2. 配置分区表

3. 加密压缩配置

4. 配置 logo 和邮箱

点击生成按钮即可获取定制的 Bootloader。

制作 app 固件

可以通过阅读文档中心提供的 《STM32 通用 Bootloader 应用笔记》来详细了解如何制作可以被用作升级的 app 固件。

开始 OTA 升级

准备好适合板卡使用的 BootLoader,然后制作好可以用作升级的 app 固件,就可以开始体验 OTA 升级功能了。下图展示了 HTTP OTA 升级方式的过程:

评论列表
root 2019-05-23 15:27:00
来自百度的图片过期了,看不了。管理员修正一下吧。
viprt 2019-07-18 11:18:18
好的
1/1
发表评论
评论通过审核后显示。

关注RT-Thread

License许可证

RT-Thread实时操作系统遵循Apache许可证2.0版本,实时操作系统内核及所有开源组件可以免费在商业产品中使用,不需要公布应用程序源码,没有潜在商业风险。

联系RT-Thread

支持:support@rt-thread.com

媒体:news@rt-thread.com

商务:business@rt-thread.com

+86 021-31165890

上海浦东新区达尔文路88号半岛科技园11号楼5层