stm32IAP应用程序地址改为0X8002020,不能正常运行?

net6634219   2010-5-10 10:49 楼主
请问版主
我用IAP下载时,如果应用程序设为0X8002000,应用程序下载和运行都正常,但是如果地址改为0X8002020,加载正常读出来的数据也对,但运行却不正常,请问这是为何,难道是字节对齐的问题???

回复评论 (5)

                                 中断向量的Offset在NVIC里改了吗?
点赞  2010-5-10 10:51
                                 中断向量表有对齐要求,0x8002020显然不满足
点赞  2010-5-10 10:54
我的中断向量设置如下
#ifdef RELEASE
   NVIC_SetVectorTable(NVIC_VectTab_FLASH,0x2020);
#else
   NVIC_SetVectorTable(NVIC_VectTab_FLASH,0x0);
#endif
请问中断向量地址是如何对齐?
点赞  2010-5-10 10:59
                                 保险起见,最好按512字节对齐,即你的向量表地址的低9位为0.
点赞  2010-5-10 11:35
                                 知道了,谢谢!!
点赞  2010-5-10 12:17
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复