初级会员

- 积分
- 108
- 金钱
- 108
- 注册时间
- 2015-5-23
- 在线时间
- 14 小时
|
5金钱
在IAP中的跳转部分用的是原子的《标准例程-V3.5库函数版本》IAP部分,可以成功跳转并且JLINK仿真过 ,都是可以的。
然后在APP中NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x10000);偏移了0X10000,并且Options 的IROM1设置的是0X8010000 SIZE:0X70000。问题是我在IAP中因为设置用户的地址之前__ASM("CPSID I");了,所以我需要在APP1中开启中断,但是这个__enable_irq();汇编函数我只要一加进入程序就死在startup_stm32f10x_hd.s中第324行也就是“ B .”这个地方,我查了一下这个相当于while(1); 如果不加这个__enable_irq();的话 因为我在APP的主函数里用延时写的LED闪烁,就可以执行,也就是说向量偏移正确,但是中断打不开...求大神啊......
|
-
IAP中跳转部分
-
APP1加了中断关闭以后死在这里了
最佳答案
查看完整内容[请看2#楼]
查看IPSR,看是哪个ISR没实现 。
另外可以参考:http://www.openedv.com/thread-64129-1-1.html
|