TI中文支持网
TI专业的中文技术问题搜集分享网站

Nested interrupt

C6746Z中断文档中说:The nonmaskable(NMI) is not supported on all C6000 devices.关于Nested interrupt 中又提到:However,when the interrupt service routine is for one of the maskable interrupts(INT4-INT15),An NMI interrupt processing of the maskable interrupt.不矛盾吗?

  请问下,现在中断矢量表映射:定时中断-INT4,外部中断-INT5,可以使用外部中断-INT5来打断正在执行中的定时中断-INT4吗?

Adam Yao94020:

NMI可以打断非NMI中断(INT4-15),INT4-15之间也可以互相打断(如果在中断服务程序中没有关全局中断的话),但是这种打断只能是高优先级打断低优先级。中断的优先级按照INT编号的顺序,是4最高,15最低。所以你说的这种情况不会发生。

user1267603:

回复 Adam Yao94020:

Adam Yao,谢谢你的回复。是否只需要修改中断映射的序号高低就行了,

 CSL_FINS(dspintcregs->INTMUX1, DSPINTC_INTMUX1_INTSEL4,     CSL_INTC_EVENTID_T64P2_TINTALL); //IsrTimer0 CSL_FINS(dspintcregs->INTMUX1, DSPINTC_INTMUX1_INTSEL5,     CSL_INTC_EVENTID_GPIO_BNK0_INT); //ExtIntISR

修改为

 CSL_FINS(dspintcregs->INTMUX1, DSPINTC_INTMUX1_INTSEL5,     CSL_INTC_EVENTID_T64P2_TINTALL); //IsrTimer0 CSL_FINS(dspintcregs->INTMUX1, DSPINTC_INTMUX1_INTSEL4,     CSL_INTC_EVENTID_GPIO_BNK0_INT); //ExtIntISR

之后即可由INT4(外部中断)来打断INT5(定时中断)?

修改之后,定时中断不能启动,不知是否修改有问题?

赞(0)
未经允许不得转载:TI中文支持网 » Nested interrupt
分享到: 更多 (0)