代码拉取完成,页面将自动刷新
@TOC
为了演示bootloader_stm32f103项目差分升级功能,故有了这篇。
bootloader_stm32f103恰如其名,就是一个bootloader,它支持差分升级包的IAP功能。
上图演示的基本功能:
涉及的命令说明:
ymodem app
,烧录应用程序到app分区,bootloader收到这个命令后,会先擦除分区,因此需要等待片刻。然后发送ymodem文件(这里是uold_1024k.bin)到开发板。发送完成后,开发板会复位跳转到应用程序运行。
ymodem patch
,烧录应用程序到patch分区,bootloader收到这个命令后,同样会先擦除分区。然后发送ymodem文件(这里是patch_1024k.bin)到开发板。发送完成后,开发板会复位开始升级。
为了演示差分升级功能,工程需要编译2次(使用Rebuild按钮),第一次产生的文件将作为基础文件,第二次编译对比前次的文件生成差分包。
在工程目录tools下有生成所有文件的工具软件和脚本文件,这些脚本文件将在编译过程中调用,如下图
两次编译产生的固件,唯一的区别就是编译时间不同,这点将在运行时打印出来。同时正是因为差别很小,可以看到最后产生的差分升级包(patch_1024k.bin)很小,只有几百字节。
注意,为了正确编译,需要将fromelf
命令路径加入系统环境变量,这个文件在keil\ARM\ARMCC\bin
目录下。
https://gitee.com/eming/bootloader_stm32f103
https://gitee.com/eming/demo_stm32f103
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。