标题: 如何获知,当前单片机程序里哪个中断被触发了? [打印本页]

作者: hhcb2020    时间: 2021-1-8 10:44
标题: 如何获知,当前单片机程序里哪个中断被触发了?
诸位,我的单片机程序里使用了中断 0, 1, 5 这几个中断。但是,发现了不能很好的进入中断函数。

所以想做个实验:读取现在程序中那个中断号被调用了,然后记录下来。但是不清楚单片机里,如何获知当前中断号。 不知道是否方便提供一个思路。

谢谢





作者: csmyldl    时间: 2021-1-8 12:06
一种方法是通过仿真调试查看进入了哪一个中断,另一种方法是在进入中断后设置一个变量,把当前的变量显示出来,如进入1号中断该变量赋值1,如进入2号中断该变量赋值2等,主程充把当前的变量值显示出来
作者: lefulan的小迷妹    时间: 2021-1-8 13:33
很多方法,LED显示,串口打印调试信息。
作者: 人人学会单片机    时间: 2021-1-8 14:36
定时器里面用一个普通IO口翻转 搞个逻辑分析仪抓一下就出来了
作者: Y_G_G    时间: 2021-1-9 11:00
你可以设定中断对应一个IO端口
触发中断就置位这个IO就可以知道是哪个中断触发了
作者: munuc_w    时间: 2021-1-9 11:08
单片机里都有一个中断状态寄存器(ARM中叫中断挂起寄存器),记录中断的中作状态,读出来判断一下就知道了。
作者: a庚    时间: 2021-1-9 11:46
读所有的中断Pending 位,哪个被置起就是哪个被触发




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1