F4 IAP中,APP程序需要设置中断向量表的偏移量

2019-07-20 18:28发布

我用的IAR,在软件配置中设置偏移量为0x08008000,但是这样的话我程序中中断进不去,串口或者CAN中断都进不了,定时器任务也进不了,如果像例程一样在main函数开头写  SCB->VTOR = FLASH_BASE |8000,软件配置中断向量表依旧为0x08000000,程序就都正常了,但是每次最后的软件复位都不能复位到IAP程序,而是直接复位到APP程序的main开始,如果两个都设置,程序就又进不了中断,求论坛大神,求原子哥










友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
hyperlikn918
1楼-- · 2019-07-20 21:54
#define VECT_TAB_OFFSET  0x00 /*!< Vector Table base offset field.
                                   This value must be a multiple of 0x200. */
要改这个宏里面的, 你调用了SystemInit(), 这里面又会设置SCB->VTOR;
Alicey
2楼-- · 2019-07-21 02:41
 精彩回答 2  元偷偷看……
Alicey
3楼-- · 2019-07-21 05:41
 精彩回答 2  元偷偷看……
hyperlikn918
4楼-- · 2019-07-21 08:31
Alicey 发表于 2016-11-28 14:30
好了,太棒了,太感谢了,都不知道这边还有个宏定义要改。。万分感谢

icf修改完了, 只需要改这个宏就可以了, 启动文件会调用SystemInit()函数的, 主函数都不需要再写的都可以

一周热门 更多>