IAP升级是不是要求程序量要小于内部flash的大小的一半?

2019-08-17 03:12发布

本帖最后由 yuzeyuan1 于 2017-7-6 10:15 编辑

比如256K的flash,程序量必须小于128?
我用的F407的片子,512Kflash。刚刚接触IAP升级,还不会弄,但是我hex文件的大小是265k。是应该看这个大小吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
yuzeyuan1
2019-08-17 15:52
本帖最后由 xsx127 于 2017-7-7 09:26 编辑
xsx127 发表于 2017-7-6 11:31
Flash分区:bootloader区,程序1区,程序2区。。。
只要你的程序bin文件加上bootloaderbin文件大小小于fla ...

您好,我刚刚拿代码测试了一下,实现了固件更新,但有两个问题
1:RAM那么小,为什么会有SRAM进行固件更新这个用法呢?有好处么?
2、flash里分bootloader区,程序1区,程序2区。程序1用到的所有数据都会在程序1区里,如果最开始程序1区是100kB,它会不会在程序运行过程中再变大了?比如变大到110kB。如果它会变大,我是不是要把程序2区的起始地址弄的远一些,以免被覆盖?

1,ram比程序小,却能更新程序是因为,分段更新,第一次往flash 0-100地址写数据,第二次往flash 100-200写数据,就算你程序很大,也只占用100字节的内存
2,程序的大小是编译后固定的,占用flash空间是固定的

一周热门 更多>