单片机原理及接口技术(C51编程)第6章-中断系统课件.ppt
《单片机原理及接口技术(C51编程)第6章-中断系统课件.ppt》由会员分享,可在线阅读,更多相关《单片机原理及接口技术(C51编程)第6章-中断系统课件.ppt(59页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 第第6 6章章 AT89S51AT89S51单片机的中断系统单片机的中断系统1 6.1 AT89S516.1 AT89S51中断技术概述中断技术概述 中中断断技技术术主主要要用用于于实实时时监监测测与与控控制制,要要求求单单片片机机能能及及时时地地响响应应中中断断请请求求源源提出的服务请求,并快速响应与及时处理。提出的服务请求,并快速响应与及时处理。当当中中断断请请求求源源发发出出中中断断请请求求时时,如如中中断断请请求求被被允允许许,单单片片机机暂暂时时中中止止当当前前正正在在执执行行的的主主程程序序,转转到到中中断断服服务务处处理理程程序序处处理理中中断断服服务务请请求求,处处理理完完中
2、中断断服服务务请请求求后后,再再回回到到原原来来被被中中止止的的程程序序之之处处(断断点点),继继续续执执行行被被中中断断的的主主程序。程序。图图6-16-1显示单片机对外设中断服务请求整个中断响应和处理过程。显示单片机对外设中断服务请求整个中断响应和处理过程。图图6-16-1 中断响应和处理过程中断响应和处理过程 如如没没有有中中断断系系统统,单单片片机机大大量量时时间间可可能能会会浪浪费费在在查查询询是是否否有有服服务务请请求求的的定定时查询操作上,即不论是否有服务请求,都必须去查询。时查询操作上,即不论是否有服务请求,都必须去查询。采采用用中中断断技技术术完完全全消消除除查查询询方方式式
3、的的等等待待,大大大大提提高高单单片片机机工工作作效效率率和和实实时时性。性。6.2 AT89S516.2 AT89S51中断系统结构中断系统结构中中断断系系统统结结构构见见图图6-26-2。中中断断系系统统有有5 5个个中中断断请请求求源源(简简称称中中断断源源),2 2个个中中断断优优先先级级,可可实实现现2 2级级中中断断服服务务程程序序嵌嵌套套。每每一一中中断断源源可可用用软软件件独独立立控控制制为允许中断或关闭中断状态;每一个中断源的优先级均可用软件设置。为允许中断或关闭中断状态;每一个中断源的优先级均可用软件设置。6.2.1 6.2.1 中断请求源中断请求源 由图由图6-26-2,
4、中断系统共有,中断系统共有5 5个中断请求源,它们是:个中断请求源,它们是:(1 1)INT0*INT0*外外部部中中断断请请求求0 0,外外部部中中断断请请求求信信号号(低低电电平平或或负负跳跳变变有有效效)由由INT0*INT0*引脚输入,中断请求标志为引脚输入,中断请求标志为IE0IE0。(2 2)INT1*INT1*外外部部中中断断请请求求1 1,外外部部中中断断请请求求信信号号(低低电电平平或或负负跳跳变变有有效效)由由INT1*INT1*引脚输入,中断请求标志为引脚输入,中断请求标志为IE1IE1。(3 3)定时器)定时器/计数器计数器T0T0计数溢出的中断请求,标志为计数溢出的中
5、断请求,标志为TF0TF0。(4 4)定时器)定时器/计数器计数器T1T1计数溢出的中断请求,标志为计数溢出的中断请求,标志为TF1TF1。(5 5)串行口中断请求,标志为发送中断)串行口中断请求,标志为发送中断TITI或接收中断或接收中断RIRI。6.2.2 6.2.2 中断请求标志寄存器中断请求标志寄存器5 5个个中中断断请请求求源源的的中中断断请请求求标标志志分分别别由由特特殊殊功功能能寄寄存存器器TCONTCON和和SCONSCON相相应应位位锁锁存(见图存(见图6-26-2)。)。1 1TCONTCON寄存器寄存器为为定定时时器器/计计数数器器的的控控制制寄寄存存器器,字字节节地地址
6、址为为88H88H,可可位位寻寻址址。既既包包括括定定时时器器/计计数数器器T0T0、T1T1溢溢出出中中断断请请求求标标志志位位TF0TF0和和TF1TF1,也也包包括括两两个个外外部部中中断断请请求求的的标标志志位位IE1IE1与与IE0IE0,还还包包括括两两个个外外部部中中断断请请求求源源的的中中断断触触发发方方式式选选择择位位。TCONTCON格式见格式见图图6-36-3。图图6-3 特殊功能寄存器特殊功能寄存器TCON的格式的格式 (5 5)IT1IT1选择外中断请求选择外中断请求1 1为跳沿触发还是电平触发方式。为跳沿触发还是电平触发方式。0-0-电电平平触触发发方方式式,加加到
7、到INT0*INT0*脚脚上上的的外外中中断断请请求求输输入入信信号号为为低低电电平平有有效效,并把并把IE1IE1置置“1”1”。转向中断服务程序时,则。转向中断服务程序时,则由硬件自动把由硬件自动把IE1IE1清清“0”0”。1-1-跳跳沿沿触触发发方方式式,加加到到INT1*INT1*脚脚上上的的外外中中断断请请求求输输入入信信号号从从高高到到低低的的负负跳跳变变有有效效,并并把把IE1IE1置置“1”1”。转转向向中中断断服服务务程程序序时时,则则由由硬硬件件自自动动把把IE1IE1清清“0”0”。(6 6)IT0IT0选选择择外外中中断断请请求求0 0为为跳跳沿沿触触发发方方式式还还
8、是是电电平平触触发发方方式式,与与IT1IT1类类似。似。当当AT89S51AT89S51复位后复位后,TCONTCON被清被清“0”0”,5 5个中断源的中断请求标志均为个中断源的中断请求标志均为0 0。TR1TR1(D6D6位)、位)、TR0TR0(D4D4位)这位)这2 2位与中断系统无关,仅与位与中断系统无关,仅与定时器定时器/计数器计数器T1T1和和T0T0有关,将在第有关,将在第6 6章定时器章定时器/计数器中介绍。计数器中介绍。2 2SCONSCON寄存器寄存器串串行行口口控控制制寄寄存存器器,字字节节地地址址为为98H98H,可可位位寻寻址址。SCONSCON的的低低二二位位锁
9、锁存存串串口口的的发送中断发送中断和和接收中断接收中断的中断请求标志的中断请求标志TITI和和RIRI,格式见格式见图图6-46-4。图图6-46-4 SCON SCON中的中断请求标志位中的中断请求标志位6.3 6.3 中断允许中断允许与与中断优先级的控制中断优先级的控制实实现现中中断断允允许许控控制制和和中中断断优优先先级级控控制制分分别别中中断断允允许许寄寄存存器器IEIE和和中中断断优优先先级级寄存器寄存器IPIP实现。下面介绍两个特殊功能寄存器。实现。下面介绍两个特殊功能寄存器。6.3.1 中断允许寄存器中断允许寄存器IE 各中断源开放或屏蔽,是由片内中断允许寄存器各中断源开放或屏蔽
10、,是由片内中断允许寄存器IE控制。控制。IE字节地址为字节地址为A8H,可进行位寻址,格式,可进行位寻址,格式见见图图6-5。IEIE中各位的功能如下:中各位的功能如下:(1 1)EAEA中断允许总开关控制位。中断允许总开关控制位。EA=0EA=0,所有的中断请求被屏蔽。,所有的中断请求被屏蔽。EA=1EA=1,所有的中断请求被开放。,所有的中断请求被开放。(2 2)ESES串行口中断允许位。串行口中断允许位。ES=0ES=0,禁止串行口中断。,禁止串行口中断。ES=1ES=1,允许串行口中断。,允许串行口中断。(3 3)ET1ET1定时器定时器/计数器计数器T1T1溢出中断允许位。溢出中断允
11、许位。ET1=0ET1=0,禁止,禁止T1T1溢出中断。溢出中断。ET1=1ET1=1,允许,允许T1T1溢出中断。溢出中断。(4 4)EX1EX1外部中断外部中断1 1中断允许位。中断允许位。EX1=0EX1=0,禁止外部中断,禁止外部中断1 1中断。中断。EX1=1EX1=1,允许外部中断,允许外部中断1 1中断。中断。(5 5)ET0ET0定时器定时器/计数器计数器T0T0的溢出中断允许位。的溢出中断允许位。ET0=0ET0=0,禁止,禁止T0T0溢出中断。溢出中断。ET0=1ET0=1,允许,允许T0T0溢出中断。溢出中断。(6 6)EX0EX0外部中断外部中断0 0中断允许位。中断允
12、许位。EX0=0EX0=0,禁止外部中断,禁止外部中断0 0中断。中断。EX0=1EX0=1,允许外部中断,允许外部中断0 0中断。中断。AT89S51AT89S51复复位位后后,IEIE被被清清“0”“0”,所所有有中中断断请请求求被被禁禁止止。IEIE中中与与各各个个中中断断源源相相应应位位可可用用指指令令置置“1”“1”或或清清“0”“0”,即即可可允允许许或或禁禁止止各各中中断断源源的的中中断断申申请请。若若使使某某一一个个中中断断源源被被允允许许中中断断,除除了了IEIE相相应应位位被被置置“1”“1”外外,还还必必须须使使EAEA位位置置“1”“1”。图图6-6 两级中断嵌套过程两
13、级中断嵌套过程 各中断源的中断优先级关系,可归纳为下面两条基本规则:各中断源的中断优先级关系,可归纳为下面两条基本规则:(1 1)低优先级可被高优先级中断,高优先级不能被低优先级中断。)低优先级可被高优先级中断,高优先级不能被低优先级中断。(2 2)任任何何一一种种中中断断(不不管管是是高高级级还还是是低低级级)一一旦旦得得到到响响应应,不不会会再再被被它它的的同同级级中中断断源源所所中中断断。如如果果某某一一中中断断源源被被设设置置为为高高优优先先级级中中断断,在在执执行行该该中中断断源的中断服务程序时,则不能被任何其他的中断源的中断请求所中断。源的中断服务程序时,则不能被任何其他的中断源的
14、中断请求所中断。AT89S51AT89S51片片内内有有一一个个中中断断优优先先级级寄寄存存器器IPIP,字字节节地地址址为为B8HB8H,可可位位寻寻址址。只只要要用用程程序序改改变变其其内内容容,即即可可进进行行各各中中断断源源中中断断优优先先级级设设置置,IPIP寄寄存存器器格格式式见图见图6-76-7。图图6-7 IP寄存器的格式寄存器的格式中断优先级寄存器中断优先级寄存器IPIP各位含义:各位含义:(1 1)PSPS串行口中断优先级控制位,串行口中断优先级控制位,11高级;高级;00低级。低级。(2 2)PT1PT1T1T1中断优先级控制位,中断优先级控制位,11高级;高级;00低级
15、。低级。(3 3)PX1PX1外部中断外部中断1 1中断优先级控制位,中断优先级控制位,11高级;高级;00低级。低级。(4 4)PT0PT0T0T0中断优先级控制位,中断优先级控制位,11高级;高级;00低级。低级。(5 5)PX0PX0外部中断外部中断0 0中断优先级控制位,中断优先级控制位,11高级;高级;00低级。低级。中中断断优优先先级级控控制制寄寄存存器器IPIP各各位位都都可可由由程程序序置置“1”“1”和和清清“0”“0”,用用位位操操作作指指令或字节操作指令可更新令或字节操作指令可更新IPIP的内容,改变各中断源的中断优先级。的内容,改变各中断源的中断优先级。AT89S51A
16、T89S51复位后,各中断源均为低优先级中断。复位后,各中断源均为低优先级中断。IPIP内容为内容为0 00 0下面介绍下面介绍AT89S51AT89S51的中断优先级结构。的中断优先级结构。中中断断系系统统有有两两个个不不可可寻寻址址的的“优优先先级级激激活活触触发发器器”,其其中中一一个个指指示示某某高高优优先先级级中中断断正正在在执执行行,所所有有后后来来中中断断均均被被阻阻止止;另另一一个个触触发发器器指指示示某某低低优优先先级级中中断断正正在在执执行行,所所有有同同级级中中断断都都被被阻阻止止,但但不不阻阻断断高高优优先先级级的的中中断断请请求。求。在在同同时时收收到到几几个个同同优
17、优先先级级的的中中断断请请求求时时,哪哪一一个个中中断断请请求求能能优优先先得得到到响响应应,取取决决于于内内部部查查询询顺顺序序。这这相相当当于于在在同同一一个个优优先先级级还还存存在在另另一一辅辅助助优优先先级结构,其级结构,其查询顺序见表查询顺序见表6-16-1。由由表表6-16-1,各各中中断断源源在在同同一一优优先先级级条条件件下下,外外部部中中断断0 0中中断断优优先先权权最最高高,串行口中断的优先权最低。串行口中断的优先权最低。6.4 6.4 响应中断请求的条件响应中断请求的条件一个中断源中断请求被响应,须满足以下必要条件:一个中断源中断请求被响应,须满足以下必要条件:(1 1)
18、总中断允许开关接通,即)总中断允许开关接通,即IEIE寄存器中的中断总允许位寄存器中的中断总允许位EA=1EA=1。(2 2)该中断源发出中断请求,即该中断源对应的中断请求标志为)该中断源发出中断请求,即该中断源对应的中断请求标志为“1”“1”。(3 3)该中断源的中断允许位)该中断源的中断允许位=1=1,即该中断被允许。,即该中断被允许。(4 4)无同级或更高级中断正在被服务。)无同级或更高级中断正在被服务。中中断断响响应应就就是是CPUCPU对对中中断断源源提提出出的的中中断断请请求求的的接接受受,当当查查询询到到有有效效的的中中断断请请求时,满足上述条件时,紧接着就进行中断响应。求时,满
19、足上述条件时,紧接着就进行中断响应。中断响应过程:中断响应过程:首首先先由由硬硬件件自自动动生生成成一一条条长长调调用用指指令令“LCALL“LCALL addr16”addr16”。即即程程序序存存储储区区中中相相应应的的中中断断入入口口地地址址。例例如如,对对于于外外部部中中断断1 1的的响响应应,硬硬件件自自动动生生成成的的长长调调用用指令为:指令为:LCALL 0013HLCALL 0013H 生生成成LCALLLCALL指指令令后后,紧紧接接着着就就由由CPUCPU执执行行该该指指令令。首首先先将将程程序序计计数数器器PCPC内内容容压压入入堆堆栈栈以以保保护护断断点点,再再将将中中
20、断断入入口口地地址址装装入入PCPC,使使程程序序转转向向响响应应中中断断请请求的中断入口地址。各中断源服务程序入口地址是固定的,见求的中断入口地址。各中断源服务程序入口地址是固定的,见表表6-26-2。其其中中两两个个中中断断入入口口间间只只相相隔隔8 8字字节节,一一般般情情况况下下难难以以安安放放一一个个完完整整的的中中断断服务程序。服务程序。(3 3)正正在在执执行行的的指指令令是是RETIRETI或或是是访访问问IEIE或或IPIP的的指指令令。因因为为按按中中断断系系统统的的规定,在执行完这些指令后,需再执行完一条指令,才响应新的中断请求。规定,在执行完这些指令后,需再执行完一条指
21、令,才响应新的中断请求。如如存存在在上上述述3 3种种情情况况之之一一,CPUCPU将将丢丢弃弃中中断断查查询询结结果果,不不能能对对中中断断进进行行响响应。应。6.5 外部中断的响外部中断的响应时间在使用外部中断时,有时需考虑从外部中断请求有效(外部中断请求标志置在使用外部中断时,有时需考虑从外部中断请求有效(外部中断请求标志置“1”)到转向中断入口地址所需要的响应时间,即外部中断响应的实时)到转向中断入口地址所需要的响应时间,即外部中断响应的实时性问题。下面就来讨论这个问题。性问题。下面就来讨论这个问题。外外中中断断最最短短响响应应时时间间为为3 3个个机机器器周周期期。其其中中中中断断请
22、请求求标标志志位位查查询询占占1 1个个机机器器周周期期,而而这这个个机机器器周周期期恰恰好好处处于于指指令令的的最最后后一一个个机机器器周周期期。在在这这个个机机器器周周期期结结束束后后,中中断断即即被被响响应应,CPUCPU接接着着执执行行1 1条条硬硬件件子子程程序序调调用用指指令令LCALLLCALL以以转转到相应的中断服务程序入口,这需要到相应的中断服务程序入口,这需要2 2个机器周期。个机器周期。6.6 6.6 外部中断的触发方式选择外部中断的触发方式选择 外部中断有两种触发方式:外部中断有两种触发方式:电平触发电平触发方式和方式和跳沿触发跳沿触发方式。方式。6.6.1 6.6.1
23、 电平触发方式电平触发方式 若若外外中中断断定定义义为为电电平平触触发发方方式式,外外部部中中断断申申请请触触发发器器状状态态随随着着CPUCPU在在每每个个机机器器周周期期采采样样到到的的外外部部中中断断输输入入引引脚脚电电平平变变化化而而变变化化,这这能能提提高高CPUCPU对对外外部部中中断断请请求求的的响响应应速速度度。当当外外部部中中断断源源被被设设定定为为电电平平触触发发方方式式时时,在在中中断断服服务务程程序序返返回回之之前前,外外部部中中断断请请求求输输入入必必须须无无效效(即即外外部部中中断断请请求求输输入入已已由由低低电平变为高电平),否则电平变为高电平),否则CPUCPU
24、返回主程序后会再次响应中断。返回主程序后会再次响应中断。所所以以电电平平触触发发适适合合于于外外部部中中断断以以低低电电平平输输入入且且中中断断服服务务程程序序能能清清除除外外部部中中断断请请求求源源(即即外外部部中中断断输输入入电电平平又又变变为为高高电电平平)的的情情况况。如如何何清清除除电电平平触发的外部中断请求源的电平信号,本章后将介绍。触发的外部中断请求源的电平信号,本章后将介绍。6.6.2 6.6.2 跳沿触发方式跳沿触发方式 外外部部中中断断若若定定义义为为跳跳沿沿触触发发方方式式,外外部部中中断断申申请请触触发发器器能能锁锁存存外外部部中中断断输输入入线线上上的的负负跳跳变变。
25、即即便便是是CPUCPU暂暂时时不不能能响响应应,中中断断请请求求标标志志也也不不会会丢丢失失。在在这这种种方方式式下下,如如果果相相继继连连续续两两次次采采样样,一一个个机机器器周周期期采采样样到到外外部部中中断断输输入入为为高高,下下一一机机器器周周期期采采样样为为低低,则则中中断断申申请请触触发发器器置置“1”“1”,直直到到CPUCPU响响应此中断时,该标志才清应此中断时,该标志才清“0”“0”。这样就不会丢失中断,但输入的负脉冲。这样就不会丢失中断,但输入的负脉冲宽宽度度至至少少要要保保持持1 1个个机机器器周周期期(若若晶晶振振频频率率为为6MHz6MHz,则则为为2s2s),才才
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 接口 技术 C51 编程 中断 系统 课件
限制150内