中断系统与定时计数器.ppt
《中断系统与定时计数器.ppt》由会员分享,可在线阅读,更多相关《中断系统与定时计数器.ppt(127页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 第第 5 5 章章 中中 断断 系系 统统 与定时与定时/计数器计数器5.1单片机中断系统单片机中断系统5.3定时器定时器/计数器计数器5.2外部中断源的扩展外部中断源的扩展第第5章章中断系统与定时、计数器中断系统与定时、计数器5.4综合应用举例综合应用举例8XC51单片机单片机中中断断系系统统5.1.1 5.1.1 中断技术中断技术5.1.2 5.1.2 中断系统与控制中断系统与控制5.1.3 5.1.3 中断响应过程中断响应过程5.1.4 5.1.4 中断请求的撤消中断请求的撤消5.1单片机中断系统单片机中断系统中断系统是计算机的重要特色之一。中断系统是计算机的重要特色之一。5.1 5.
2、1 中中 断断 技技 术术日日常常事事务务程程序序中中断断服服务务程程序序一、中一、中 断断 概概 念:念:某人看书某人看书 执行主程序执行主程序 中断过程中断过程电话铃响电话铃响 中断信号中断信号INTxINTx=0=0 中断请求中断请求暂停看书暂停看书 暂停执行主程序暂停执行主程序 中断响应中断响应书中作记号书中作记号 当前当前PC值值入栈入栈 保护断点保护断点电话谈话电话谈话 执行执行中断中断程序程序 中断服务中断服务继续看书继续看书 返回主程序返回主程序 中断返回中断返回5.1.15.1.1中断概述中断概述一、中断和中断系统一、中断和中断系统 CPUCPU正在处理某件事的时正在处理某件
3、事的时候,外部发生了另一事件,候,外部发生了另一事件,请求请求CPUCPU迅速处理,迅速处理,CPUCPU暂时暂时停止当时的工作停止当时的工作,转入处理,转入处理所发生的事件,处理结束后,所发生的事件,处理结束后,再回到原来的地方,继续原再回到原来的地方,继续原来的工作,这样的过程称为来的工作,这样的过程称为中断,如图中断,如图5-15-1所示。所示。RETI主主程程序序中中断断服服务务中中断断请请求求图图5-1中断过程示意图中断过程示意图中断系统中断系统实现中断功能的部件实现中断功能的部件中断源中断源产生中断请求的根源产生中断请求的根源二、中断优先级二、中断优先级 一一般般计计算算机机系系统
4、统允允许许有有多多个个中中断断源源。当当几几个个中中断断源源同同时时向向CPUCPU请请求求中中断断,要要求求服服务务时时,就就存存在在CPUCPU优优先先响响应应哪哪一一个个中中断断请请求求的的问问题题。为为此此系系统统根根据据中中断断源源的的轻轻重重缓缓急急进进行行排排队队,规规定定每每个个中中断断源源都都有有一一个个中中断断优优先级别,优先处理最紧急事件的中断请求。先级别,优先处理最紧急事件的中断请求。三、中断嵌套三、中断嵌套 中断嵌套中断嵌套是指是指CPUCPU正正在处理一个中断源请求的在处理一个中断源请求的时候,又发生了另一个优时候,又发生了另一个优先级比它高的中断源请求,先级比它高
5、的中断源请求,使使CPUCPU能够暂时中止执行能够暂时中止执行原来的处理程序,转而去原来的处理程序,转而去处理优先级更高的中断请处理优先级更高的中断请求,处理结束后,再继续求,处理结束后,再继续执行原来的低级中断处理执行原来的低级中断处理程序的过程。程序的过程。图图5-2二级中断嵌套过程示意图二级中断嵌套过程示意图主主程程序序低低级级中中断断高高级级中中断断四、中断过程四、中断过程对对于于不不同同的的计计算算机机,中中断断过过程程可可能能不不尽尽相相同同,但但是是一一般般应应包包括括中中断断请请求求、中中断断响响应应、中中断断处处理理和中断返回和中断返回等四个步骤。等四个步骤。1.1.中断请求
6、中断请求 中中断断过过程程是是由由中中断断源源向向CPUCPU发发出出中中断断请请求求而而开开始始的的。有有效效中中断断请请求求信信号号应应该该一一直直保保持持到到CPUCPU作出响应为止。作出响应为止。2.2.中断响应中断响应CPUCPU检测到中断请求信号后,在满足一定条件检测到中断请求信号后,在满足一定条件的情况下进行响应。其的情况下进行响应。其主要条件是主要条件是:中断标志是:中断标志是否开放,是否高级中断,是否执行完一条指令等否开放,是否高级中断,是否执行完一条指令等。3.3.中断处理中断处理中中断断处处理理或或称称为为中中断断服服务务,就就是是执执行行中中断断源源所所要要求求的的中中
7、断断服服务务程程序序。在在中中断断服服务务程程序序中中需要完成的主要工作是:需要完成的主要工作是:保护现场保护现场根据需要把断点处有关存储器根据需要把断点处有关存储器的内容压入堆栈,以保护主程序运行的结果。的内容压入堆栈,以保护主程序运行的结果。开开/关中断标志关中断标志根据根据CPUCPU响应中断后开响应中断后开/关中断情况,适当处理中断标志,以确保保护关中断情况,适当处理中断标志,以确保保护/恢复现场的正确进行,确保所需中断嵌套的恢复现场的正确进行,确保所需中断嵌套的实现。实现。中断处理中断处理根据中断源的要求,完成相根据中断源的要求,完成相应的任务,这是中断服务的核心。应的任务,这是中断
8、服务的核心。恢恢复复现现场场在在完完成成中中断断服服务务之之后后,返返回回被被中中断断的的主主程程序序之之前前,恢恢复复堆堆栈栈中中保保护护的的各各有有关关寄寄存存器的内容。器的内容。4.4.中断返回中断返回 在在中中断断服服务务程程序序后后,用用一一条条中中断断返返回回指指令令(RETIRETI),),保证返回主程序继续执行被中断的程序。保证返回主程序继续执行被中断的程序。5.1.2 MCS-515.1.2 MCS-51中断系统与控制中断系统与控制 MCSMCS 5151的的5151子子系系列列(80318031、80518051、87518751等等)有有5 5个个中中断断源源,它它们们有
9、有两两个个优优先先级级,通通过过4 4个个中中断断控控制制器器(IEIE、IPIP、TCONTCON、SCONSCON)进进行行中中断断管管理理,其其结结构构原理如图原理如图5-35-3所示。所示。一、中断系统一、中断系统参见书参见书P84 P84 图图5.15.1PT1ITN1 INT0 T0T1IE1PX010 ET0PS10 ESEA ET1 EX1 EX0 RI IE IP中断源高高级级中中断断请请求求低低级级中中断断请请求求 TXRX TISCON中断标志中断标志 源允许源允许总允许总允许优先级优先级硬件查询硬件查询TF1IE0TF0 TCON图图5-3中断系统结构中断系统结构10中
10、断源PT010PX110.实现实现CPU与外设的速度配合与外设的速度配合;.实现实时控制实现实时控制-即被控对象可以即被控对象可以随随 时向时向CPU发出请求发出请求:要求及时处理要求及时处理,以确保被控对象保持在最佳状态以确保被控对象保持在最佳状态;.实现故障的及时发现实现故障的及时发现(如断电如断电.运运算出错等算出错等)处理处理;.实现人机对话实现人机对话(如人可以通过键盘如人可以通过键盘.按钮等对按钮等对CPU进行干预进行干预.控制控制).二、二、MCS-51MCS-51中断的实际应用中断的实际应用 主要有四个方面主要有四个方面:三、中断源:三、中断源:能发出中断请求信号的各种事件。能
11、发出中断请求信号的各种事件。如如I/O设备、定时时钟、系统故障、软件设定等。设备、定时时钟、系统故障、软件设定等。有有3类共类共5个中断:个中断:1、外中断、外中断2个:个:INT0、INT1 由引脚由引脚INT0(P3.2)和)和INT1(P3.3)引入。)引入。2、定时中断、定时中断2个:个:T0、T1 无引入端,请求在芯片内部发生。以记数溢出信号无引入端,请求在芯片内部发生。以记数溢出信号作为中断作为中断 请求去置位一个溢出标志位。请求去置位一个溢出标志位。3、串行中断、串行中断1个:个:RI/TI 无引入端,请求在芯片内部发生。接收或发送完一无引入端,请求在芯片内部发生。接收或发送完一
12、帧串行数据时,就产生一个中断请求。帧串行数据时,就产生一个中断请求。四、中断优先级控制原则和控制逻辑四、中断优先级控制原则和控制逻辑:中断优先级是为中断嵌套服务的。中断优先级是为中断嵌套服务的。如图,如图,MCS51MCS51具有具有2 2级优先级。级优先级。1 1、优先级控制原则:、优先级控制原则:(1 1)低优先级中断不能打断高优先级的中断服务;)低优先级中断不能打断高优先级的中断服务;但高优先级中断请求信号可以打断低优先级但高优先级中断请求信号可以打断低优先级 的中断服务,从而实现中断嵌套。的中断服务,从而实现中断嵌套。(2 2)如果一个中断请求已被响应,则同级的其它)如果一个中断请求已
13、被响应,则同级的其它 中断服务将被禁止。即同级中断不能嵌套。中断服务将被禁止。即同级中断不能嵌套。(3 3)如同级的多个中断请求同时出现,则按)如同级的多个中断请求同时出现,则按CPUCPU 查询次序确定哪个中断请求被响应。查询次序确定哪个中断请求被响应。查询次序为:查询次序为:INTINT0 0T T0 0INTINT1 1T T1 1RI/TIRI/TI。2 2、控制逻辑:控制逻辑:(1 1)利用中断优先级控制寄存器;)利用中断优先级控制寄存器;(2 2)2 2个优先级状态触发器:状态个优先级状态触发器:状态“0”0”或或“1”1”。主主程序程序中断服中断服务程序务程序1中断服务中断服务程
14、序程序2 *中断源与其中断服务程序入口地址之间的关系中断源与其中断服务程序入口地址之间的关系是固定的,见表是固定的,见表5 5 1 1。表表5 5 1 8XC511 8XC51中断服务程序入口地址表中断服务程序入口地址表 0003H 定时器定时器T0 000BH 0013H 定时器定时器T1 001BH 串行口中断串行口中断 0023H中中断断源源中断服务程序入口中断服务程序入口INT1INT0 表表5 5 1 1中的中的5 5个中断服务个中断服务程序入口地址之间,各有程序入口地址之间,各有8 8个单元的空间,一般情况个单元的空间,一般情况下难以容纳一个完整的中下难以容纳一个完整的中断服务程序
15、。通常,断服务程序。通常,总是总是在中断入口处安排一条无在中断入口处安排一条无条件转移指令条件转移指令,使程序转,使程序转向实际存放中断服务程序向实际存放中断服务程序的存储器区域。例如:若的存储器区域。例如:若INTINT0 0中断服务程序始址在中断服务程序始址在1000H1000H单元,则如下指令执单元,则如下指令执行后便可转入行后便可转入1000H1000H处执行处执行中断服务程序中断服务程序:ORG0003HLJMP1000H五、中断系统的初始化五、中断系统的初始化 中断系统初始化中断系统初始化就是用户对管理中断系统就是用户对管理中断系统的特殊功能寄存器中的各控制位进行赋值。的特殊功能寄
16、存器中的各控制位进行赋值。中断系统初始化步骤如下中断系统初始化步骤如下:(1)(1)开相应中断源的中断开相应中断源的中断;(2)(2)设定所有中断源的中断优先级设定所有中断源的中断优先级;(3)(3)若为外部中断若为外部中断,则应规定低电平还是负边沿则应规定低电平还是负边沿的中断触发方式。的中断触发方式。例:请写出例:请写出INTINT0 0为低电平触发的中断系统为低电平触发的中断系统初始化程序。初始化程序。解:解:采用位操作指令(常用)采用位操作指令(常用)SETB EASETB EASETB EXSETB EX0 0 ;开;开INTINT0 0中断中断SETB PXSETB PX0 0 ;
17、令;令INTINT0 0为高优先级为高优先级CLR ITCLR IT0 0 ;令;令INTINT0 0为电平触发为电平触发 采用字节型指令采用字节型指令 MOV IEMOV IE,#81H#81H ;开;开INTINT0 0中断中断ORL IPORL IP,#01H#01H ;令;令INTINT0 0为高优先级为高优先级ANL TCONANL TCON,#0FEH#0FEH;令;令INTINT0 0为电平触发为电平触发二、中断控制二、中断控制(参见书参见书P8486)MCS-51MCS-51单单片片机机设设置置了了4 4个个专专用用寄寄存存器器用用于于中中断控制断控制 ,用户通过设置其状态来管
18、理中断系统。,用户通过设置其状态来管理中断系统。1.1.定时器控制寄存器(定时器控制寄存器(TCONTCON)(参见书参见书P84)P84)TCONTCON的格式如下:的格式如下:TCOND7D6D5D4D3D2D1D0(88H)TF1 TR1TF0TR0 IE1 IT1 IE0 IT0 如前所述,寄存器中如前所述,寄存器中TRTR1 1(TRTR0 0)用于定时器用于定时器/计数器的启动控制,其余计数器的启动控制,其余6 6位用于中断控制,位用于中断控制,其作用如下:其作用如下:ITIT0 0为外部中断为外部中断0 0请求信号方式控制位。请求信号方式控制位。ITIT0 0=1=1,脉冲方式(
19、负跳变有效);脉冲方式(负跳变有效);ITIT0 0=0=0,电平方式(低电平有效)。电平方式(低电平有效)。IEIE0 0为外部中断为外部中断0 0请求标志位,当请求标志位,当CPUCPU检测到检测到INTINT0 0 (P P3.23.2)端有中断请求信号时,由硬件置位,使端有中断请求信号时,由硬件置位,使IEIE0 0 =1=1请求中断,中断响应后转向中断服务程序时,请求中断,中断响应后转向中断服务程序时,由由硬件自动清零硬件自动清零。ITIT1 1为外部中断为外部中断1 1请求信号方式控制位,其作请求信号方式控制位,其作用同用同ITIT0 0。IEIE1 1为外部中断为外部中断1 1请
20、求标志位,其作用同请求标志位,其作用同IE0IE0。TFTF0 0(TFTF1 1)为定时器为定时器/计数器溢出标志位,此标计数器溢出标志位,此标志作用将在定时器志作用将在定时器/计数器一节说明。计数器一节说明。2.2.串行口控制寄存器(串行口控制寄存器(SCONSCON)(参见书参见书P85)P85)SCONSCON格式如下格式如下:SCOND7D6D5D4D3D2D1D0(98H)TIRI串行口控制寄存器格式及各位功能将在串行接口串行口控制寄存器格式及各位功能将在串行接口一节介绍,其中高一节介绍,其中高6 6位用于串行口控制,低位用于串行口控制,低2 2位位(RIRI、TITI)用于中断控
21、制,其作用如下:用于中断控制,其作用如下:TITI为串行口发送中断请求标志位,发送完一帧为串行口发送中断请求标志位,发送完一帧串行数据后串行数据后,由由硬件置硬件置1 1,其,其清零须由软件完清零须由软件完成成。CLR TICLR TI RIRI为为串串行行口口接接收收中中断断请请求求标标志志位位,接接完完一一帧帧串串行行数数据据后后,由由硬硬件件置置1 1,其其清清零零须须由由软软件件完完成成。CLR RICLR RI 在在MCS-51MCS-51单片机串行口中,单片机串行口中,TITI和和RIRI的逻辑的逻辑“或或”作为一个内部中断源,二者之一置位都可以产作为一个内部中断源,二者之一置位都
22、可以产生串行口中断请求,然后在中断服务程序中测试生串行口中断请求,然后在中断服务程序中测试这两个标志位,以决定是发送中断还是接收中断。这两个标志位,以决定是发送中断还是接收中断。3.3.中断允许控制寄存器(中断允许控制寄存器(IEIE)(参见书参见书P85)P85)中断允许寄存器格式如下:中断允许寄存器格式如下:IED7D6D5D4D3D2D1D0(A8H)EA/ESET1EX1ET0EX0 ESES为为串行口中断允许位串行口中断允许位,ES=1ES=1时,允许串行口时,允许串行口中断;中断;ES=0ES=0时,禁止串行口中断。时,禁止串行口中断。寄存器中用于控制中断的共寄存器中用于控制中断的
23、共6 6位,实现中断的管理位,实现中断的管理(该位该位1/0 1/0 允许允许/禁止禁止),其作用如下:),其作用如下:EXEX1 1为为外外部部中中断断1 1允允许许控控制制位位,EXEX1 1=1=1允允许许外外部部中中断断1 1中断,中断,EXEX1 1=0=0,禁止外部中断禁止外部中断1 1中断。中断。ETET1 1为为定定时时器器/计计数数器器1 1(T T1 1)中中断断允允许许控控制制位位,ETET1 1=1=1时,允许时,允许T1T1中断;中断;ETET1 1=0=0时,禁止时,禁止T T1 1中断。中断。ET0ET0为为定时器定时器/计数器计数器0 0(T0T0)中断允许控制
24、位中断允许控制位,其控制功能同其控制功能同ET1ET1。EX0EX0为为外部中断外部中断0 0允许控制位允许控制位,其控制功能同,其控制功能同EX1EX1。EAEA为为中断允许中断允许总控制位(总闸)总控制位(总闸)MCSMCS 5151单单片片机机中中断断系系统统的的管管理理是是由由中中断断允允许许总总控控制制位位EAEA和和各各中中断断源源的的中中断断控控制制位位联联合合作作用用实现的实现的,缺一不可。缺一不可。4.4.中断优先级控制寄存器(中断优先级控制寄存器(IPIP)(参见书参见书P86)P86)中断优先级控制寄存器的格式如下:中断优先级控制寄存器的格式如下:IPD7D6D5D4D3
25、D2D1D0(B8H)/PSPT1PX1PT0PX0MCS-51单单片片机机规规定定了了两两级级中中断断优优先先级级:高高级级中中断断和和低低级级中中断断,用用中中断断优优先先级级寄寄存存器器(IP)的的5位状态管理位状态管理5个中断源的优先级别。个中断源的优先级别。相相应应位位是是“0”的的中中断断源源为为低低级级中中断断,相相应应位是位是“1”的中断源为高级中断。的中断源为高级中断。各状态位的作用如下:各状态位的作用如下:PSPS为为串串行行口口中中断断优优先先控控制制位位,PS PS=1 1,串串行行口口为为高高优优先先级级中中断断;PS PS=0 0,串串行行口口为为低低优优先先级中断
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中断 系统 定时 计数器
限制150内