RT-Thread OTA升级失败The application must link to the begin of app partition!

使用官方的固件,并且按照BootLoader的分区改写了程序的偏移,下载没问题,但是重启升级会提示链接地址错误。
在这里插入图片描述
由于STM32的内部Flash是从0x08000000开始存储的,而CM3上电后是从0x00000000开始取指的,所以当BOOT选择00方式启动后,会自动把0x08000000映射到0x00000000,即对于用户来说,这两片地址是重叠的。
了解了这一点,博主在修改Flash偏移的时候就直接将BootLoader生成时写的偏移粘贴过来了,即没有加上0x08000000这个基地址,但是BootLoader显然没做容错,虽然生成的时候让你填0x20000,但实际的程序里做验证的时候必须得为0x08020000才行。
在这里插入图片描述

在这里插入图片描述
修改后再用OTA工具打包,再次传输到download分区,升级成功。在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_27508477/article/details/115430463
今日推荐