最近打算做IAP升级,用的STM32F4,遇到一个问题,就是IAP升级时是一边收数据一边写flash好还是等bin文件都收完了一次写flash好。因为有时APP程序会大于SRAM的大小,这样就不能一次收完bin文件再写了。但是一边收一边写flash(假如收2k的数据后就写flash),如果中间通信故障,那么升级失败,连原来的APP程序也运行不了了。
有什么好的办法可以避免这种问题。(也想过先把原来的APP备份在某个扇区,如果中间升级失败在回退,但是不知道这样会不会很耗时间)
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
请问你是分包接收还是一次性接收的bin文件?用的哪种校验方式?想参考下,谢谢
严格来说我基本都算不上校验,就是检测一下接收到的数据的一些标志。网络升级的校验完全就是靠协议,完全不担心数据丢失。这个是SD卡升级的:http://www.openedv.com/forum.php ... id=90835&extra=,这个是网络升级的:http://www.openedv.com/forum.php ... d=104667&extra=
一周热门 更多>