最近,学习了单片机的一些知识,今天我想说说中断,所谓中断其实就是指单片机由于收到某个请求而停止手头上的事情转而去处理这个请求,最后再继续执行自己手头上的事情。那这个过程是怎样的呢?
第一步,主程序即单片机正在执行的程序在接受到请求后,将自己正在执行的指令完成。(与堆栈相对应的就有堆栈寄存器,存放指向堆栈的地址)。
第二步,接下来将下一条指令的地址送到堆栈中保存起来,我们将这称之为中断响应。
第三步,若中断处理程序需要工作寄存器,psw寄存器,即就是程序状态寄存器,还有累加器这些寄存器,我们这时也需要把这些寄存器中的内容保存起来,我们称之为保护现场。若不需要,则不必做这些事情。
第四步,此时程序寄存器中的内容已是下一条指令的地址,意味着现在程序将要开始执行我们的中断处理程序了,在处理完之后,我们将要返回到主程序中去,返回的过程是进入的逆过程,即先恢复中断,然后在返回到主程序中去继续执行。
我们将第三步称之为中断处理,也可以称之为中断服务。
以上就是单片机处理中断的整个过程。
单片机之中断
最新推荐文章于 2024-07-31 10:25:30 发布