MCU差分升级请教

2019-12-13 18:23发布

有人做过MCU的差分升级吗?有对应的开源库么?这个理论上来说,是不是需要预先保留等同于程序大小的ROM空间,用于重新合成新的代码,需要的ram的资源又是多少呢,请知道的指导一下,谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
dreambox
1楼-- · 2019-12-14 17:28
很难没改一行代码,整个bin/hex都会大改的,除非你把函数单独弄出来,然后做成函数跳转表,后通过patch更新函数
lyz3432
2楼-- · 2019-12-14 21:32
我们是soc端进行差分升级,单片机评估下来没有必要啊,本来就几百k的东西,一套升级流流程下来3分钟不到。。。
sinc_mark
3楼-- · 2019-12-15 00:41
lyz3432 发表于 2019-2-26 10:28
我们是soc端进行差分升级,单片机评估下来没有必要啊,本来就几百k的东西,一套升级流流程下来3分钟不到。 ...

你是在SOC端重新将差分包组合成新的包更新程序吧?这个我可以理解,我只是想知道,有项目在MCU端差分复原升级的么?而且,在MCU端资源足够么?
lyz3432
4楼-- · 2019-12-15 00:42
 精彩回答 2  元偷偷看……
lyz3432
5楼-- · 2019-12-15 01:29
lyz3432 发表于 2019-2-26 10:39
按照mcu flash block为基本单位比较 有不一样的整块擦除在写

我们的产品一般都是soc+mcu这种搭配,mcu进入bootloader后从第一块flash开始读,在与soc(or代码服务器)中的mcu bin 按块对比决定是否擦写,差分升级是这么对比的。
后来发现太慢了,所幸就直接把app擦了,直接升级app了。
ayuanshop
6楼-- · 2019-12-15 05:09
lyz3432 发表于 2019-2-26 10:39
按照mcu flash block为基本单位比较 有不一样的整块擦除在写

那基本上每块都不一样了。
又不是按照文件系统来对比

一周热门 更多>