关于单片机的中断

来源:百度知道 编辑:UC知道 时间:2024/05/23 11:05:03
刚学51单片机,我想知道若一个中断程序正在执行,同时产生一个更高级中断,单片机开始执行高级的,请问高级执行完后,前一个中断程序是继续执行还是被忽略?

一个中断程序正在执行,如果有一个更高级中断产生,则CPU记录当前断点,然后去执行高级中断,等高级中断执行完后,CPU再次执行之前记录的断点。即在低级中断的断点处继续执行。一直到低级中断执行完毕。

这种用法叫“中断嵌套”;51单片机是可以设置中断优先级的,在低级中断执行过程中,当有高级中断来的时候,程序会进行压栈处理进行保护,所以你必须了解中断会改变那些变量,在中断起始位置做压栈保护的时候要注意不要起冲突,保护好数据。
各方面都没有问题了后,你问题的答案就是:前一个中断是继续执行的。

会去执行的.这要定义不同的优先级,实现中断的嵌套 .

没有,等执行完那个高级的,再回去执行原先的中断
这个叫 什么内嵌 之类的 (学很久了 叫什么名给忘了 嘿嘿)

中断一定会保证被执行完成,这是最基本,如果被另一个中断卡嚓了,那就出大错了

循环嵌套