工程中使用两个中断,分别是4ms和20ms触发一次,两个中断分别映射到中断4和中断5,但现在的问题是程序可以进入中断4的服务程序,中断5的服务程序进不去,请工程师指点
中断初始化配置如下:
void InterruptInit(void)
{
// 初始化 DSP 中断控制器
IntDSPINTCInit();
IntGlobalEnable();
GPIOIntTypeSet(SOC_GPIO_0_REGS, 8, 1);//设置0[7]为下降沿触发
GPIOIntTypeSet(SOC_GPIO_0_REGS, 61, 1);//设置3[12]为下降沿触发
// 使能 GPIO BANK 中断
GPIOBankIntEnable(SOC_GPIO_0_REGS, 0); // USER0 KEY GPIO0
GPIOBankIntEnable(SOC_GPIO_0_REGS, 3);
IntEventMap(C674X_MASK_INT4,SYS_INT_GPIO_B0INT);//bank0对应中断号为65
IntEventMap(C674X_MASK_INT5,SYS_INT_GPIO_B3INT);//bank3对应中断号为52
// 使能中断
IntEnable(C674X_MASK_INT4);
IntEnable(C674X_MASK_INT5);
// 注册中断服务函数
IntRegister(C674X_MASK_INT4, Irq04_compute_freq_word);
IntRegister(C674X_MASK_INT5, Irq05_navdata_gen);
}
noaming:
代码上看不出错误,你可以先把中断4关掉,单独调试一下中断5,看中断5是否能够工作
jie tian2:
回复 noaming:
嗯,按照你说的,我单独调试一下中断5,我在服务程序中加入断点,每次都是可以进去的,但现在有一个问题:我全速调试,在程序中定义一个全局变量,让他每一次进中断就自增,我在watch窗口看那个变量,变量增加到几次之后就不变啦,此时停止debug,出现下图提示,不知道这是什么问题??
TI中文支持网

