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.

关于28x中断响应流程

上图为截取自《TMS320x2833x, 2823x System Control and Interrupts Reference Guide.pdf》115页的中断流程图,对比了一下2812手册,是一致。

对于Stage H中IERx=0,在论坛里看到了这个帖子“求专业解答 28335进入中断后IFRx=0, IERx=0,如果IERx=0,那么后面的中断怎么进入?”

帖子里说IERx = 0是手册里写错了。

用仿真器跟了一下,原来置1的IERx进到中断程序里面IERx确实为0了,这个动作应该是所谓的“CPU responds”吧

但是手册里并没有写明IERx如何恢复成1,是需要用户在中断子程序代码中添加相应语句还是“CPU responds”,我用仿真器跟踪的结果是退出中断函数后,IERx自动变成1了,所以IERx恢复成1应该也是“CPU responds”。

再有一点就是Stage J中的INTM = 0,这个阶段的第一句是“Interrupt service routine responds”,我当初理解就是这一阶段的所有动作都应该是用户在中断子程序中实现的,而实际上从仿真器跟踪的结果看,这个INTM = 0也是在退出中断函数时自动实现的,觉得也应该是“CPU responds”,而不需要用户在退出中断函数前添加EINT语句。手册里这点似乎写得并不合适。

还有就是发现了一个datasheet中的一个错误

从上下文看,INTM=1开关断开,INTM=0开关闭合,这个图里的7标的不对