第五章 中断及定时计数器.ppt.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《第五章 中断及定时计数器.ppt.ppt》由会员分享,可在线阅读,更多相关《第五章 中断及定时计数器.ppt.ppt(104页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、u5.1 中断的相关概念中断的相关概念u5.2MCS-51单片机的中断系统单片机的中断系统u5.3中断程序的设计及应用举例中断程序的设计及应用举例u5.4MCS-51单片机的单片机的定时定时器器/计数器计数器u5.5定时器定时器/计数器的应用举例计数器的应用举例第第5章章 MCS-51 中断系统中断系统与定时器与定时器/计数器计数器 实时测控,单片机能及时地响应和处理单片机外实时测控,单片机能及时地响应和处理单片机外部事件或内部事件所提出的中断请求。部事件或内部事件所提出的中断请求。5.1 5.1 中断的概念中断的概念u CPU CPU正在执行程序时,单片机外部或内部发生正在执行程序时,单片机
2、外部或内部发生的某一的某一事件事件,请求,请求CPUCPU迅速去处理。迅速去处理。CPU CPU暂时中止暂时中止当前的工作,转到中断服务处理程序处理所发生的当前的工作,转到中断服务处理程序处理所发生的事件。事件。处理完该事件后,再回到原来被中止的地处理完该事件后,再回到原来被中止的地方,继续原来的工作,这称为方,继续原来的工作,这称为中断中断。CPUCPU处理事件处理事件的过程,称为的过程,称为CPUCPU的的中断响应过程。中断响应过程。中断实际上是中断实际上是CPUCPU与外设之间交换信息的一种方式与外设之间交换信息的一种方式.5.1 中断的相关概念中断的相关概念u举一个生活类似的事例举一个
3、生活类似的事例 :在家看书在家看书中断发生时所执行的处理程序称为中断服务程序。中断发生时所执行的处理程序称为中断服务程序。中断方式中断方式优点优点:大大地大大地提高了提高了CPUCPU的工作效率。的工作效率。2.2.中断与调用子程序的区别中断与调用子程序的区别u子程序的执行是由子程序的执行是由程序员事先安排好的程序员事先安排好的(由一条调用(由一条调用子程序指令来转入),而中断服务程序是由子程序指令来转入),而中断服务程序是由随机的中断随机的中断事件引起的;事件引起的;u子程序的子程序的执行受到主程序或上一级子程序的控制执行受到主程序或上一级子程序的控制,而,而中断服务程序中断服务程序一般与被
4、中断的程序毫无关系一般与被中断的程序毫无关系;u有有可能发生多个中断事件同时请求可能发生多个中断事件同时请求CPUCPU服务的情况。服务的情况。几个基本概念:几个基本概念:u中断源:中断源:引起中断的原因引起中断的原因,中断申请的来源,中断源中断申请的来源,中断源可以是可以是I/O设备、故障、时钟、调试中人为设设备、故障、时钟、调试中人为设置。置。中断源向中断源向CPUCPU提出的处理请求,称为提出的处理请求,称为中断中断请求请求(或中断申请或中断申请)。u保护现场:保护现场:保护有关的工作寄存器、累加器、标志位等保护有关的工作寄存器、累加器、标志位等信息信息u恢复现场恢复现场:在完成中断服务
5、程序后,恢复有关的工作寄在完成中断服务程序后,恢复有关的工作寄存器,累加器,标志位内容存器,累加器,标志位内容u中断返回中断返回 单片机执行完中断中断服务程序后,再单片机执行完中断中断服务程序后,再回到原来中断的地方,这称为中断返回回到原来中断的地方,这称为中断返回u中断优先级中断优先级 更重要的事就是优先级较高的事情更重要的事就是优先级较高的事情 通常情况下,一个计算机系统中会带有几个中断源,如磁盘机、磁带机、打印机、键盘等,这就可能出现两个或两个以上的中断源同时提出中断请求的情况,另外,当CPU正在处理某个中断源的中断请求并执行它的中断服务程序时,又有新的中断源发出中断请求,这时CPU将如
6、何处理呢?这就牵涉到中断优先级或优先权的问题。所谓中断优先级是用户事先根据各个中断源中断请求的轻重缓所谓中断优先级是用户事先根据各个中断源中断请求的轻重缓急,来确定急,来确定CPU对每一个中断源响应的顺序。对每一个中断源响应的顺序。例如磁盘机和打印机相比,前者的中断优先级就高。这样一来,CPU就可以根据中断源的优先级顺序,先响应中断优先级高的中断请求,再响应中断优先级低的中断请求。实现优先级判别的方法,可分为软件、硬件二种。实现优先级判别的方法,可分为软件、硬件二种。(一一)软件法软件法 当CPU响应某个中断后,首先进入一个软件查询程序,按照事先确定的中断优先级别从高到低依次查询,先查到的中断
7、请求先响应,这就实现了先响应的是优先级别高的中断源。下图是一个软件中断优先级排队的接口电路,它把8个外设的中断请求触发器组组合合成成一一个个端端口口,作为中断寄存器使用,并并赋赋以以地地址址。各外设的中断请求信号相“或”后作为中断请求信号INT送给CPU,只要一个或多个外设有中断请求,都能向CPU提出中断请求,CPU在查询时,读取中断寄存器端口的内容,从高位到低位依次检测,先检测到的,就先执行相应的中断服务程序,由于寄存器从高位到低位,依次是优先级高到低的中断源的中断请求触发器的状态,故查询实现了优先级高的先响应。图中给出了查询式中断的流程。(二二)硬件排队硬件排队实现中断优先级排队的硬件电路
8、常用的有链式电路链式电路和优先级编码电路优先级编码电路。这里介绍优先级编码电路,如图613。核心部件是一个用编码器组成的中断优先级判决器,它有八个输入端,可以分别联到八个中断源的中断请求输入端,当八个中断源中只要有一个有中断请求时,判断电路就会产生一个中断请求信号送往CPU,在CPU响应这个中断请求并送回一个中断响应信号INTA给判断电路以后,判断电路的内部控制逻辑将自动向CPU送出当前提出中断请求的所有中断源中优先级别最高的那个中断源的编码并把这一编码作为中断向量或是中断类型号送给CPU,从而得到该中断源的中断服务程序的入口地址。在上述编码器电路中可以用000111分别表示八个中断源的中断类
9、型号,若000为编码最高级,则111为编码最低级,使用时应将优先级最高的中断源的中断请求信号接到对应为000的那个信号输入端,其余依照优先级的顺序从高到低分别接到对应信号为001111的输入端。在以上提到的二种方法各自特点:软件查询不需要增加设备,但中断源较多时,查询所花费时间也较长,影响CPU的响应速度,而硬件电路的响应时间不受中断源数量的影响,响应速度较快,但费用增加。u中断嵌套中断嵌套 发生在一个中断已产生,又有一个中断发生在一个中断已产生,又有一个中断产生的情况产生的情况3.3.中断的作用中断的作用 中断作为一项重要的计算机技术,在计算机中得到了广中断作为一项重要的计算机技术,在计算机
10、中得到了广泛的应用。中断技术实质上就是一种资源共享技术,其主要泛的应用。中断技术实质上就是一种资源共享技术,其主要作用如下:作用如下:中断技术能实现中断技术能实现CPUCPU与多个外部设备并行工作,提高了与多个外部设备并行工作,提高了CPUCPU的利用率及数据的输入的利用率及数据的输入/输出效率输出效率;中断技术能对计算机运行过程中中断技术能对计算机运行过程中某个事件的出现或突然某个事件的出现或突然发生的故障发生的故障,做到及时发现并进行自动处理,做到及时发现并进行自动处理,即实现实时处理;即实现实时处理;中断技术能使我们中断技术能使我们通过键盘发出请求,随时对运行中的通过键盘发出请求,随时对
11、运行中的计算机进行干预,即可以实现人机联系;计算机进行干预,即可以实现人机联系;实现多道程序的切换运行;实现多道程序的切换运行;在多机系统中,实现各处理机之间的信息交换和任务切在多机系统中,实现各处理机之间的信息交换和任务切换。换。中断源名称及入口地址中断源名称及入口地址中断源符号、名中断源符号、名 称称默认优先级默认优先级中断入口中断入口(汇编)(汇编)序号(序号(C C语言)语言)INT0-外部中断外部中断0 0最高最高0003H0INT1-外部中断外部中断1 1第第2 20013H1T0-定时器定时器0 0中断中断第第3 3000BH2T1-定时器定时器1 1中断中断第第4 4001BH
12、3TI/RI-串行口中断串行口中断第第5 50023H4单片机执行中断时程序跳转过程单片机执行中断时程序跳转过程:5 5个中断请求源,两个中断优先级。中断系统结构示意图个中断请求源,两个中断优先级。中断系统结构示意图5.2MCS-51单片机的中断系统1 1、TCONTCON为定时器为定时器/计数器的控制寄存器,计数器的控制寄存器,字节地址为字节地址为8888H H。包含:包含:(1 1)T0T0和和T1T1的溢出中断请求标志位的溢出中断请求标志位TF1TF1和和TF0TF0(2 2)外部中断请求标志位外部中断请求标志位IE1IE1与与IE0IE0。格式如格式如图图所示:所示:各标志位的功能:各
13、标志位的功能:(1 1)IT0IT0选选择择外外中中断断请请求求0 0为为跳跳沿沿触触发发方方式式还还是是电电平平触触发发方方式:式:IT0=0 IT0=0,为为电平触发电平触发方式。方式。IT0=1 IT0=1,为为跳沿触发跳沿触发方式。方式。可由软件置可由软件置“1”“1”或清或清“0”“0”。(2 2)IE0IE0外部中断请求外部中断请求0 0的中断请求标志位。的中断请求标志位。IE0=0 IE0=0,无中断请求无中断请求。IE0=1IE0=1,外外部部中中断断0 0有有中中断断请请求求。当当CPUCPU响响应应该该中中断断,转转向向中中断服务程序时,由硬件清断服务程序时,由硬件清“0”
14、“0”IE0IE0。(3 3)IT1IT1外外部部中中断断请请求求1 1为为跳跳沿沿触触发发方方式式还还是是电电平平触触发发方方式式,意义与意义与IT0IT0类似。类似。(4 4)IE1IE1外部中断请求外部中断请求1 1的中断请求标志位,意义与的中断请求标志位,意义与IE0IE0类似。类似。(5 5)TF0TF0T0T0溢出中断请求标志位。溢出中断请求标志位。T0T0计计数数后后,溢溢出出时时,由由硬硬件件置置“1”“1”TF0TF0,向向CPUCPU申申请请中中断断,CPUCPU响响应应TF0TF0中中断断时时,硬硬件件自自动动清清“0”“0”TF0TF0,TF0TF0也也可可由由软软件清
15、件清0 0。(6 6)TF1TF1T1T1的溢出中断请求标志位,功能和的溢出中断请求标志位,功能和TF0TF0类似。类似。TR1 TR1、TR0 TR0 2 2个位与中断无关。个位与中断无关。当当MCS-51MCS-51复位后复位后,TCONTCON被清被清0 0,则,则CPUCPU关中断,关中断,所有中断请求所有中断请求被禁止。被禁止。2 2、SCONSCON为串行口控制寄存器,字节地址为为串行口控制寄存器,字节地址为9898H H。串行口的。串行口的发发送中断送中断和和接收中断接收中断的中断请求标志的中断请求标志TITI和和RIRI,格式如格式如图图。各标志位的功能:各标志位的功能:(1
16、1)TITI发送中断请求标志位。串口每发送完一帧串行数发送中断请求标志位。串口每发送完一帧串行数据后,硬件自动置据后,硬件自动置“1”“1”TITI。必须在中断服务程序中用必须在中断服务程序中用软件软件对对TITI标志清标志清“0”“0”。2 2)RIRI接收中断请求标志位。串口接收完一个数据帧,硬接收中断请求标志位。串口接收完一个数据帧,硬件自动置件自动置“1”“1”RIRI标志。标志。必须在中断服务程序中用必须在中断服务程序中用软件软件对对RIRI标志清标志清“0”“0”。3 3、中断允许寄存器、中断允许寄存器IEIE CPUCPU对中断源的开放或屏蔽,由片内的对中断源的开放或屏蔽,由片内
17、的中断允许寄存器中断允许寄存器IEIE控控制。制。字节地址字节地址A8HA8H,可位寻址。格式如下可位寻址。格式如下图图。IEIE对中断的开放和关闭为对中断的开放和关闭为两级两级控制控制 总的开关中断控制位总的开关中断控制位EAEA(IE.7IE.7位)位):EA=0 EA=0,所有中断请求被屏蔽。,所有中断请求被屏蔽。EA=1 EA=1,CPUCPU开放中断,但五个中断源的中断请求是否允许,开放中断,但五个中断源的中断请求是否允许,还要由还要由IEIE中的中的5 5个中断请求允许控制位决定。个中断请求允许控制位决定。IEIE中各位的功能如下:中各位的功能如下:(1 1)EAEA:中断允许总控
18、制位中断允许总控制位0 0:CPUCPU屏蔽所有的中断请求屏蔽所有的中断请求(CPUCPU关中断关中断);1 1:CPUCPU开放所有中断开放所有中断(CPUCPU开中断开中断)。(2 2)ESES:串行口中断允许位串行口中断允许位0 0:禁止串行口中断;禁止串行口中断;1 1:允许串行口中断。允许串行口中断。(3 3)ET1ET1:定时器定时器/计数器计数器T1T1的溢出中断允许位的溢出中断允许位0 0:禁止禁止T1T1溢出中断;溢出中断;1 1:允许允许T1T1溢出中断。溢出中断。(4 4)EX1EX1:外部中断外部中断1 1中断允许位中断允许位0 0:禁止外部中断禁止外部中断1 1中断;
19、中断;1 1:允许外部中断允许外部中断1 1中断。中断。(5 5)ET0ET0:定时器定时器/计数器计数器T0T0的溢出中断允许位的溢出中断允许位0 0:禁止禁止T0T0溢出中断;溢出中断;1 1:允许允许T0T0溢出中断。溢出中断。(6 6)EX0EX0:外部中断外部中断0 0中断允许位。中断允许位。0 0:禁止外部中断禁止外部中断0 0中断;中断;1 1:允许外部中断允许外部中断0 0中断。中断。MCS-51MCS-51复位后复位后,IEIE清清0 0,所有中断请求被禁止。所有中断请求被禁止。若使某一个中断源被允许中断,若使某一个中断源被允许中断,除了除了IEIE相应的位的被置相应的位的被
20、置“1”“1”,还必须使,还必须使EAEA位位=1=1。改变改变IEIE的内容,可由位操作指令来实现,即:的内容,可由位操作指令来实现,即:SETB bitSETB bit;CLR bit CLR bit。例例:若若允允许许片片内内2 2个个定定时时器器/计计数数器器中中断断,禁禁止止其其它它中中断断源源的的中断请求。编写设置中断请求。编写设置IEIE的相应程序段的相应程序段(1 1)用位操作指令来编写如下程序段)用位操作指令来编写如下程序段:CLR ES CLR ES ;禁止串行口中断;禁止串行口中断 CLR EX1 CLR EX1 ;禁止外部中断禁止外部中断1 1中断中断CLR EX0CL
21、R EX0;禁止外部中断禁止外部中断0 0中断中断 SETB ET0 SETB ET0 ;允许定时器允许定时器/计数器计数器T0T0中断中断 SETB ET1 SETB ET1 ;允许定时器允许定时器/计数器计数器T1T1中断中断 SETB EA SETB EA ;CPUCPU开中断开中断(2 2)用字节操作指令来编写)用字节操作指令来编写:MOV IEMOV IE,#8AH#8AH或者用:或者用:MOV 0A8HMOV 0A8H,#8AH#8AH ;A8HA8H为为IEIE寄存器字节地址寄存器字节地址4 4、中断优先级寄存器中断优先级寄存器IPIP两个中断优先级,可实现两级中断嵌套。如两个中
22、断优先级,可实现两级中断嵌套。如图图5-65-6。可归纳为下面可归纳为下面两条基本规则两条基本规则:(1 1)低优先级可被高优先级中断,反之则不能。)低优先级可被高优先级中断,反之则不能。(2)同级中断不会被它的同级中断源所中断。)同级中断不会被它的同级中断源所中断。若若CPUCPU正在执行高优先级的中断,则不能被任何中断源所中断正在执行高优先级的中断,则不能被任何中断源所中断。图图5-5-6 6中中断断优优先先级级寄寄存存器器IPIP,其其字字节节地地址址为为B8HB8H,格格式式如如图图5-75-7。IPIP各个位的含义:各个位的含义:(1 1)PSPS串行口中断优先级控制位串行口中断优先
23、级控制位1 1:高优先级中断;高优先级中断;0 0:低优先级中断。低优先级中断。(2 2)PT1PT1定时器定时器T1T1中断优先级控制位中断优先级控制位1 1:高优先级中断;高优先级中断;0 0:低优先级中断。低优先级中断。(3 3)PX1PX1外部中断外部中断1 1中断优先级控制位中断优先级控制位1 1:高优先级中断;高优先级中断;0 0:低优先级中断。低优先级中断。(4 4)PT0PT0定时器定时器T0T0中断优先级控制位中断优先级控制位1 1:高优先级中断;高优先级中断;0 0:低优先级中断。低优先级中断。(5 5)PX0PX0外部中断外部中断0 0中断优先级控制位中断优先级控制位1
24、1:高优先级中断;高优先级中断;0 0:低优先级中断。低优先级中断。由软件可改变各中断源的中断优先级。由软件可改变各中断源的中断优先级。MCS-51MCS-51的中断系统的中断系统有有两个两个不可寻址的不可寻址的“优先级激活触发器优先级激活触发器”:一个一个用来指示某高优先级的中断正在执行,所有后来的中断用来指示某高优先级的中断正在执行,所有后来的中断均被阻止。均被阻止。另一个另一个用来指示某低优先级的中断正在执行,所有同级中断用来指示某低优先级的中断正在执行,所有同级中断都被阻止,但不阻断高优先级的中断请求。都被阻止,但不阻断高优先级的中断请求。在同时收到在同时收到几个同一优先级的中断请求几
25、个同一优先级的中断请求时,时,优先响应哪一个优先响应哪一个中断,取决于中断,取决于内部的查询顺序内部的查询顺序。查询顺序查询顺序如如表表5-15-1:表表5-15-1 中断查询次序中断查询次序中断源中断源 中断级别中断级别外部中断外部中断0 0最高最高T0T0溢出中断溢出中断外部中断外部中断1 1T1T1溢出中断溢出中断串行口中断串行口中断最低最低例例5-15-1 设置设置IPIP寄存器的初始值,使寄存器的初始值,使2 2个外中断请求为高优先个外中断请求为高优先级,其它中断请求为低优先级。级,其它中断请求为低优先级。(1 1)用位操作指令)用位操作指令 SETB PX0 SETB PX0 ;2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第五章 中断及定时计数器.ppt 第五 中断 定时 计数器 ppt
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内