单片机中断系统.ppt
第8章 中断系统,教学目标及要求:1 了解单片机中断源2 掌握单片机中断系统的控制主要内容:1 80C51的中断系统 2 中断处理过程 3 扩充外部中断源 4 中断系统的应用 教学重点和难点:重点熟悉单片机的中断系统的控制,难点掌握中断处理过程中的中断响应条件及中断程序的编写。,8.1 中 断 的 概 述,1.中断 中断是指计算机在执行某一程序的过程中,由于计算机系统内、外的某种原因,而必须中止原程序的执行,转去执行相应的处理程序,待处理结束之后,再回来继续执行被中止的原程序的过程。,采用了中断技术后的计算机,可以解决CPU与外设之间速度匹配的问题,使计算机可以及时处理系统中许多随机的参数和信息,同时,它也提高了计算机处理故障与应变的能力。,例如:篮球比赛中,一方要求暂停申请中断,经裁判同意响应中断,双方停下比赛,去商量对策中断处理,暂停时间到,回到场上继续比赛中断返回。,8.1 中 断 的 概 述,引进中断技术的优点1、分时操作解决快速的CPU与慢速的外设之间的矛盾,可以使CPU和外设同时工作。CPU在启动外设后,继续执行主程序,同时外设也在工作。2、实现实时处理外设的变化量可根据要求随时向CPU发出中断请求,要求CPU及时处理,CPU可以马上响应加以处理。3、故障处理,调用中断服务程序与调用子程序的主要区别:,1、调用子程序指令在程序中是事先安排好的;调用子程序指令在程序中是事先安排好的;,2、而何时调用中断服务程序事先却无法确知,因为中断的发生是由外部因素决定的,程序中无法事先安排调用指令,因而调用中断服务程序的过程是由硬件自动完成的。,中断请求与控制,图8-3 80C51的中断系统(P145),8.2.1 中断源,1.特殊功能寄存器TCON中的标志,(MSB),(LSB),图 5.2 TCON格式,2.特殊功能寄存器SCON,图 5.3 SCON格式,(MSB),LSB,5.2.2 中断控制,1.中断允许控制 MCS-51单片机有 5个(8052有 6个)中断源,为了使每个中断源都能独立地被允许或禁止,以便用户能灵活使用,它在每个中断信号的通道中设置了一个中断屏蔽触发器。只有该触发器有效,它所对应的中断请求信号才能进入CPU,即此类型中断开放。否则,即使其对应的中断标志位置1,CPU也不会响应中断,即此类型中断被屏蔽了。同时CPU内还设置了一个中断允许触发器,它控制CPU能否响应中断。,图 5.4 IE格式,(MSB),(LSB),2.中断优先级,(MSB),(LSB),IP的格式,(最低级),(最高级),8.3 中断出理(响应)的过程(1)在每条指令结束后,系统都自动检测中断请求信号,如果有中断请求,且CPU处于开中断状态下,则响应中断。(2)保护现场,在保护现场前,一般要关中断,以防止现场被破坏。保护现场一般是用堆栈指令将原程序中用到的寄存器推入堆栈。(3)中断服务,即为相应的中断源服务。,8.3 中断出理(响应)的过程(4)恢复现场,用堆栈指令将保护在堆栈中的数据弹出来,在恢复现场前要关中断,以防止现场被破坏。在恢复现场后应及时开中断。(5)返回,此时CPU将推入到堆栈的断点地址弹回到程序计数器,从而使CPU继续执行刚才被中断的程序。,中断响应的条件(1)有中断源发出中断申请;(2)中断总允许位 EA=1;(3)申请中断的中断源的中断允许位为1。,但CPU 正在执行一个高一级的中断服务程序时不会响应。,清除相应的中断请求标志位:(1)定时器溢出(TF)及 外部中断(I T 边沿触发)的中断标志在中断响应后,自动清除;(2)串行口中断标志(TI/RI),不能自动清除,必须用指令去清;(3)外部中断(I T 电平触发),不能自动清除,在用指令去清之前,应撤除外中断口(INT0/INT1)上的低电平;,INT1:;中断服务程序 PUSH ACC PUSH DPH PUSH DPL POP DPL POP DPH POP ACC RETI,8.4 中断系统的应用,8.4.1 利用定时器扩充外部中断源,例 3 假设有一个用户系统中已使用了两个外部中断源,并置定时器 T1 于方式2,作串行口波特率发生器用,现要求再增加一个外部中断源,并由 P1.0 口输出一个 5K Hz的方波(假设晶振频率为 6 MHz)。,多中断源:MCS-51 单片机有两个外部中断输入端,当有 2 个以上中断源时,它的中断输入端就不够了。此时,可以采用中断与查询相结合的方法来实现。可以使每个中断源都接在同一个外部中断输入端上,同时利用输入口线作为多中断源情况下各中断源的识别线。,图 8.6 多中断源,ORG 0003H LJMP INT0INT0:PUSH PSW PUSH ACC JB P0.7,DV1 JB P0.6,DV2 JB P0.5,DV3 JB P0.4,DV4GOBACK:POP ACC POP PSW RETI DV1:;装置1中断服务程序,AJMP GOBACKDV2:;装置2中断服务程序 AJMP GOBACKDV3:;装置3中断服务程序 AJMP GOBACKDV4:;装置4中断服务程序 AJMP GOBACK,参考书目1、张友德编单片微型机原理、应用与实验(第三版),复旦大学出版社2、张迎新单片微机原理(初级),北航出版社,作业:P1653、6、9、11,