IAP升级程序后,APP无法进入中断

2019-07-21 00:34发布

我的IAP和APP中都开启了USART1接收中断,但是在APP执行过程中,当USART1接收到数据时,只能跳转到IAP中的USART1中断处理函数,不会执行APP的中断处理函数。网上有的方法都尝试过了,还是不行。我在APP中加入了按键控制发送,就是按下按键后,就通过USART1发送一个1给上位机,是可以实现的,也就是串口是正常的,但就是进不了APP的中断处理函数。我的APP在FLASH起始地址及中断向量便宜设置如下: 1.png

int main()
{

        SCB->VTOR = FLASH_BASE | 0x3000;
       
        RCC_INIT();
        USART_GPIO_INIT();
        NVIC_INIT();
        USART_INIT();
        LED_Init();
        while(1)
        {
                LED_Sets(0x0F);
        }
}



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
49条回答
一起哈皮
1楼-- · 2019-07-21 04:47
你工程没改VECT_TAB_OFFSET的值,就不要把SystemInit放进工程里,因为系统初始化函数会初始化中断向量表的。去掉SystemInit,如果你要自定义时钟就参考例程自己重写一个RCC_Config替代它。
午夜狼嚎
2楼-- · 2019-07-21 06:18
 精彩回答 2  元偷偷看……
PURSRE
3楼-- · 2019-07-21 06:43
在APP里打开中断enable__irq();函数
午夜狼嚎
4楼-- · 2019-07-21 08:11
 精彩回答 2  元偷偷看……
zdphpn
5楼-- · 2019-07-21 10:19
int main()
{               
  NVIC_SetVectorTable(NVIC_VectTab_FLASH,0x3000);
  __enable_irq();
午夜狼嚎
6楼-- · 2019-07-21 13:19
 精彩回答 2  元偷偷看……

一周热门 更多>