请问STM32F4 IAP升级是一边收数据一边写flash好还是等bin文件都收完了一次写flash好

2019-07-14 15:17发布

最近打算做IAP升级,用的STM32F4,遇到一个问题,就是IAP升级时是一边收数据一边写flash好还是等bin文件都收完了一次写flash好。因为有时APP程序会大于SRAM的大小,这样就不能一次收完bin文件再写了。但是一边收一边写flash(假如收2k的数据后就写flash),如果中间通信故障,那么升级失败,连原来的APP程序也运行不了了。
有什么好的办法可以避免这种问题。(也想过先把原来的APP备份在某个扇区,如果中间升级失败在回退,但是不知道这样会不会很耗时间)
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
7762642422d
1楼-- · 2019-07-15 00:09
无法避免,因为在写APP时已经无法避免了(升级前会先擦除APP扇区)。
你不是还有IAP吗?有IAP在就可以无限次数升级APP。
不会不会
2楼-- · 2019-07-15 04:03
flash1 flash2,一个crcerror 执行另一个
dingyang598
3楼-- · 2019-07-15 09:06
如果存储空间够大,备份一下现有的APP,好点时也没关系,在写APP时最好搞个标志,表示升级OK,在写完APP时设置这个存储区,以防中途断电导致升级到一半就挂了,后面IAP进来的话肯定会挂掉
Green_LJ
4楼-- · 2019-07-15 09:55
 精彩回答 2  元偷偷看……
sdfmsdm
5楼-- · 2019-07-15 12:59
不会不会 发表于 2018-12-12 11:41
flash1 flash2,一个crcerror 执行另一个

也是用的这种, BOOT, APP, APP_BACK, 三个区

一周热门 更多>