This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
最近在使用F28335做控制器,需要一些中断,现在问几个问题,看自己的理解对不对。
1. 从响应中断-即对IFR.X对应的中断作出相应,到进入ISR过程所有可屏蔽中断是不能打入的?
2. 在进入ISR后,执行EINT 后,比当前中断优先级高的中断可以打入?
3. 在进入ISR后,执行IER |= M_X; EINT; 重新使能当前中断后,当前中断和更高优先级中断可以打入?
4. 在例程中有
IER |= M_INT1;
IER &= MINT1;
后一语句的作用是什么,理解为屏蔽其它中断,为什么这样做?
请高手帮忙回答下
您好,请问该方法能实现不同组别中断的嵌套吗?
例如:欲实现在DMA中断中嵌套定时器中断1,下面的方式能实现吗?
interrupt void Dma_ISR(void)
{
IER |= M_INT7;
IER &= M_INT1;
PieCtrlRegs.PIEIER1.all &= 0x40;
PieCtrlRegs.PIEACK.all = 0xFFFF;
asm(" NOP");
EINT;
........
........
}
你好,请问下怎样的中断方式才叫做多级中断嵌套呢?
本人在中断嵌套这里遇到一个中断循环嵌套(自我理解只是一级嵌套),但是无法一直执行的问题,还望指点下,谢谢,非常感谢!
具体情况见附录文件
“这时候任何使能的中断都�够再让CPU去相应”,这句是不是意味着比当前中断优先级低的中断也能相应?
ERIC:
是,如果开中断嵌套后,那么低优先级的中断也可以打断被嵌套的高优先级中断。
您好,Eric Ma!
想请教一下您几个问题:
1.如果我想实现通过ePWM的SOC信号来触发ADC和DMA的中断,因为他们的中断不同组是否也涉及到中断嵌套的问题?
2.DMA触发源是有ePWM的SOC的,但是为什么DMA定义的头文件中只定义了前17个中断源,对18到31未作定义,可否用户自己定义,还是有其他的什么限制?
希望您可以回答,谢谢!
1.如果我想实现通过ePWM的SOC信号来触发ADC和DMA的中断,因为他们的中断不同组是否也涉及到中断嵌套的问题?
Eric:
同个触发源触发两个中断,那两个中断会被CPU根据优先级别来响应。不一定需要中断嵌套,除非你希望低优先级的中断打断高优先级的中断。
2.DMA触发源是有ePWM的SOC的,但是为什么DMA定义的头文件中只定义了前17个中断源,对18到31未作定义,可否用户自己定义,还是有其他的什么限制?
Eric:
有可能你看的是老版本的程序,去下载最新的controlSUITE。
struct MODE_BITS { // bits description
Uint16 PERINTSEL:5; // 4:0 Peripheral Interrupt and Sync Select Bits (R/W):
// 0 no interrupt
// 1 SEQ1INT & ADCSYNC
// 2 SEQ2INT
// 3 XINT1
// 4 XINT2
// 5 XINT3
// 6 XINT4
// 7 XINT5
// 8 XINT6
// 9 XINT7
// 10 XINT13
// 11 TINT0
// 12 TINT1
// 13 TINT2
// 14 MXEVTA & MXSYNCA
// 15 MREVTA & MRSYNCA
// 16 MXEVTB & MXSYNCB
// 17 MREVTB & MRSYNCB
// 18 ePWM1SOCA
// 19 ePWM1SOCB
// 20 ePWM2SOCA
// 21 ePWM2SOCB
// 22 ePWM3SOCA
// 23 ePWM3SOCB
// 24 ePWM4SOCA
// 25 ePWM4SOCB
// 26 ePWM5SOCA
// 27 ePWM5SOCB
// 28 ePWM6SOCA
// 29 ePWM6SOCB
我对“低优先级的中断也可以打断被嵌套的高优先级中断”这话感到怀疑。如果真这样的话,岂不是丧失了中断优先级的本质?难道没有一种合理的方式支持中断嵌套但又同时尊重优先级吗?