第二讲 中断和复位.pptVIP

  • 9
  • 0
  • 约3.58千字
  • 约 25页
  • 2017-09-08 发布于湖北
  • 举报
第二讲 中断和复位

第二讲 中断和复位 ——单片机如何处理紧急事件 一、中断和堆栈 二、中断向量 三、复位 四、一个完整的示例 * 第一讲中的单片机程序,都是只有一个执行线索的程序,就好像一个人按照事先设定的“预案”在执行任务一样。这个“预案”就是程序。 单片机除了这种执行方式以外,它还要处理所包含的各种硬件产生的临时情况,这种情况相当紧急,往往等不及程序检查到状况后再去处理。 当硬件发生某种紧急状况时,计算机系统往往采用这种处理方式:cpu暂停执行当时的程序,保存各种状态,转而执行一段特殊的专门针对这种紧急状况的程序。当这段程序执行完毕之后,通过特定的指令返回当时中断的程序,回复原来保存的状态,接着往下执行,好像什么也没发生一样。 这样一个过程叫“中断”,这样一个特殊的程序叫“中断服务程序”。 中断程序 左边是中断程序的执行过程示意图。 中断程序执行后,CPU要返回原来的执行点,首先要保存下一条指令的地址,以便返回时接着实行。另外,还有保存诸如CPU的状态等必要的信息* 。 *通常把返回地址、CPU状态等叫做程序的“上下文”环境。把中断程序执行前的这个过程叫做上下文保存。 上下文保存通常通过堆栈机制来完成。CPU有一个叫做“堆栈指针”的寄存器sp,用来存储一段特定存储空间的地址。这段存储空间叫“堆栈空间”,把这段空间的一端叫“栈底”(堆栈的起始端)。 栈顶 栈底 栈顶 栈底 保存变量时,通常称为“入

文档评论(0)

1亿VIP精品文档

相关文档