F429 IAP程序升级方案

2019-07-20 13:59发布

之前没有做过IAP方式的程序升级,看了些资料,大多都是在BootLoader里面串口接收程序升级包然后进行升级在进入主程序。我现在是想在主应用程序中接收升级包然后复位板子进入BootLoader让其进行升级,那么有什么好的方案呢?我这样想可行吗:我BootLoader程序的设置是 360截图20170613101552932.jpg 即留了64K字节的空间给BootLoader,主应用程序的地址就是0x8010000。主程序负责接收程序升级包,升级包存放在没有用到的ROM区域,BootLoader的作用就是把升级包拷到0x8010000地址然后启动新的程序,这样可行吗,或者有其他好的方式?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
VIP小太子456
1楼-- · 2019-07-20 14:39
可行..
Jeffer
2楼-- · 2019-07-20 17:27
 精彩回答 2  元偷偷看……
llyaiyyl
3楼-- · 2019-07-20 23:13
如果要复位升级,就涉及到保存程序包的问题
1,保存程序包
  可以保存在内部,或者外挂Flash,根据程序量选择吧
2.
闪电之舞
4楼-- · 2019-07-21 00:31
可以参考庆科wifi模块stm32里面存放的方法
JasonWangSE
5楼-- · 2019-07-21 03:56
 精彩回答 2  元偷偷看……
DongInker
6楼-- · 2019-07-21 09:52
我觉得你是想实现 主程序跳转到boot,并更新主程序的功能吧。
我的设计方法是
1 主程序要进入升级,触发升级事件。
2 标记内存记号。
3 主程序软重启。
4 重启boot代码检测内存标记对比(前提boot工程设计是“不对”内存标记的地址初始化,保证主程序写入重启数据不倍擦除)
5 对比符合进入boot更新代码。

一周热门 更多>