|  | 
 
| 现在在使用c6748,发现程序一直在中断服务程序里面,没有跳出来,不知道中断配置是不是有问题????请工程师指点 
 中断配置如下:
 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);
 }
 
 
 中断服务程序如下:
 
 void Irq05_navdata_gen(void)
 {
 
 
 
 // 禁用 GPIO BANK 3 中断
 GPIOBankIntDisable(SOC_GPIO_0_REGS, 3);
 IntEventClear(SYS_INT_GPIO_B3INT);
 
 
 if(GPIOPinIntStatus(SOC_GPIO_0_REGS, 61))
 {
 // 清除 GPIO3[12] 中断状态
 GPIOPinIntClear(SOC_GPIO_0_REGS, 61);
 
 /*中断服务程序*/
 
 }
 
 
 // 使能 GPIO BANK 3中断
 GPIOBankIntEnable(SOC_GPIO_0_REGS, 3);
 
 
 return;
 }
 
 
 | 
 |