谈谈对ST 的IAP功能的改进
ST的IAP 设计的不是很好。 为什么, 第一,默认IAP与APP是分开设计,分开编译链接的。是两个独立的程序。 这样来说,生产的时候就要两次烧写代码,很麻烦。
改进方法, IAP+APP都在一个程序代码里面。这个本人以前用的其他公司的芯片IAP方案就是这样的。
IAP+APP一体化后, 程序通过串口通信监测上级。如果收到升级指令,就开始接收串口发来的代码,一包一包接收,一包一包写入FLASH. 最后复位。简单的这么说。
ST的方案, IAP+APP是分开设计的。两个独立的代码, 要用工具把编译的BIN/HEX文件链接为一个BIN文件。 这样 就一次烧写这个BIN文件就可以了。
|
你这个方法有个前提,就是 FLASH 足够大。分二次烧写也是有办法解决的,我请别人帮忙写了一个Windows软件,把二个bin文件合并后,就可以一次性烧写,没任何问题。