《第5章AT89S51单片机的中断系统.ppt》由会员分享,可在线阅读,更多相关《第5章AT89S51单片机的中断系统.ppt(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第5章章 AT89S51单片机的中断系统单片机的中断系统5 AT89S515 AT89S51单片机的中断系统单片机的中断系统 5.1 AT895.1 AT89单片机的中断及中断请求源单片机的中断及中断请求源5.1.15.1.1中断简介中断简介 计计算算机机暂暂时时中中止止正正在在执执行行的的主主程程序序,转转去去执执行行中中断断服服务务程程序序,并并在在中中断断服服务务程程序序执执行行完完了了之之后后能能自自动动回回到到原原主主程程序序处处继继续执行,这个过程叫做续执行,这个过程叫做“中断中断”。中中断断需需要要解解决决两两个个主主要要问问题题:一一是是如如何何从从主主程程序序转转到到中中断
2、服务程序;二是如何从中断服务程序返回主程序。断服务程序;二是如何从中断服务程序返回主程序。第第5章章 AT89S51单片机的中断系统单片机的中断系统 大大体体说说来来,采采用用中中断断系系统统改改善善了了计计算算机机的的性性能能,主主要表现在以下几个方面:要表现在以下几个方面:(1)(1)有有效效地地解解决决了了快快速速CPUCPU与与慢慢速速外外设设之之间间的的矛矛盾盾,可使可使CPUCPU与外设并行工作与外设并行工作,大大提高了工作效率。大大提高了工作效率。(2)(2)可可以以及及时时处处理理控控制制系系统统中中许许多多随随机机产产生生的的参参数数与与信信息息,即即计计算算机机具具有有实实
3、时时处处理理的的能能力力,从从而而提提高高了了控控制系统的性能。制系统的性能。(3)(3)使使系系统统具具备备了了处处理理故故障障的的能能力力,提提高高了了系系统统自自身的可靠性。身的可靠性。第第5章章 AT89S51单片机的中断系统单片机的中断系统中断源一般分为软件中断和硬件中断。中断源一般分为软件中断和硬件中断。AT89S51AT89S51提供提供5 5个中断源,如图个中断源,如图5-25-2所示。所示。AT89S52AT89S52中多了一个中中多了一个中断源断源定时器定时器/计数器计数器T2T2,即有,即有6 6个中断源。个中断源。AT89S51AT89S51的的5 5个中断个中断源是:
4、源是:外部中断源外部中断源 :由:由P3.2P3.2输入。输入。外部中断源外部中断源 :由:由P3.3P3.3输入。输入。I/OI/O设备中断请求信号,或掉电故障等异常事件中设备中断请求信号,或掉电故障等异常事件中断请求信号都可以作为外部中断源连断请求信号都可以作为外部中断源连 、。定时器定时器/计数器计数器T0T0溢出中断:溢出中断:TF0TF0做标志,由做标志,由P3.4P3.4输出。输出。定时器定时器/计数器计数器T1T1溢出中断:溢出中断:TF1TF1做标志,由做标志,由P3.5P3.5输出。输出。片内串行口产生的中断:片内串行口产生的中断:RXRX、TXTX。第第5章章 AT89S5
5、1单片机的中断系统单片机的中断系统 图图5-2 AT89S515-2 AT89S51中断系统示意图中断系统示意图第第5章章 AT89S51单片机的中断系统单片机的中断系统1定时器定时器/计数器中断锁存寄存器计数器中断锁存寄存器TCONTCONTCONTCON为定时器为定时器/计数器计数器T0T0、T1T1的控制寄存器,同时也锁存的控制寄存器,同时也锁存T0T0、T1T1的溢出的溢出中断源和外部请求中断源等,与中断源有关的位如下:中断源和外部请求中断源等,与中断源有关的位如下:TF1TF1:T1T1溢出中断标志。溢出中断标志。T1T1被允许计数后,从初值开始加被允许计数后,从初值开始加1 1计数
6、。当计数。当产生溢出时硬件置产生溢出时硬件置“1 1”TF1TF1,向,向CPUCPU请求中断,一直保持到请求中断,一直保持到CPUCPU响应中断时,才由硬件清响应中断时,才由硬件清“0 0”(也可由查询软件清零)。(也可由查询软件清零)。TF0TF0:T0T0溢出中断标志。溢出中断标志。T0T0被允许计数后,从初值开始加被允许计数后,从初值开始加1 1计数。当产计数。当产生溢出时硬件置生溢出时硬件置“1 1”TF0TF0,向,向CPUCPU请求中断,一直保持到请求中断,一直保持到CPUCPU响应中断时,才由硬件清响应中断时,才由硬件清“0 0”(也可由查询软件清零)。(也可由查询软件清零)。
7、第第5章章 AT89S51单片机的中断系统单片机的中断系统IE1IE1:外部中断:外部中断1 1请求源标志。请求源标志。IE1 IE11 1,外部中断向,外部中断向CPUCPU请求中断,当请求中断,当CPUCPU响应该中断时由响应该中断时由硬件清硬件清“0 0”IE1IE1(边沿触发方式)。(边沿触发方式)。IT1IT1:由软件置位:由软件置位/复位选择外部中断复位选择外部中断1 1的跳变的跳变/电平激活中断请求。电平激活中断请求。当置位当置位IT1IT1为为1 1时,则外部中断时,则外部中断1 1端口由端口由“1 1”-“0 0”跳变(前一个机跳变(前一个机器周期为高电平,后一个机器周期为低
8、电平,即发生负跳变)时器周期为高电平,后一个机器周期为低电平,即发生负跳变)时激活中断请求标志位激活中断请求标志位IE1IE1,向主机请求中断处理;如果复位,向主机请求中断处理;如果复位IT1IT1为为0 0,则在端口出现低电平时,激活中断请求标志,则在端口出现低电平时,激活中断请求标志IE1IE1,向主机请求,向主机请求中断处理。中断处理。IE0IE0:外部中断:外部中断0 0请求源(请求源(P3.2P3.2)标志。)标志。IE0 IE01 1外部中断外部中断0 0向向CPUCPU请求中断,当请求中断,当CPUCPU响应外部中断时,响应外部中断时,由硬件清由硬件清“0 0”IE0 IE0(边
9、沿触发方式)。(边沿触发方式)。IT0IT0:外部中断:外部中断0 0触发方式控制位,其意义和功能与触发方式控制位,其意义和功能与IT1IT1类似。类似。第第5章章 AT89S51单片机的中断系统单片机的中断系统2 2串行口中断串行口中断SCONSCON为串行口控制寄存器,字节地址为为串行口控制寄存器,字节地址为98H98H。SCONSCON的低二位锁存的低二位锁存串行口的接收中断和发送中断标志,其格式如下:串行口的接收中断和发送中断标志,其格式如下:TITI:串串行行口口发发送送中中断断标标志志。在在串串行行口口以以方方式式0 0发发送送时时,每每当当发发送送完完8 8位位数数据据后后,由由
10、硬硬件件置置位位TI;TI;若若以以方方式式1 1、2 2、3 3发发送送时时,在在发发送送停停止止位位的的开开始始时时置置位位TITI。TI=1TI=1表表示示串串行行口口发发送送器器正正在在向向CPUCPU申申请请中中断。断。值值得得注注意意的的是是当当CPUCPU响响应应该该中中断断后后,转转向向中中断断服服务务程程序序时时并并不不复位复位TI,TITI,TI必须由用户在中断服务程序中用软件清必须由用户在中断服务程序中用软件清0 0(可用可用CLR TICLR TI或其它指令或其它指令)。第第5章章 AT89S51单片机的中断系统单片机的中断系统 RIRI:串串行行口口接接收收中中断断标
11、标志志。若若串串行行口口接接收收器器允允许许接接收收并并以以方方式式0 0工工作作,则则每每当当接接收收到到第第8 8位位数数据据时时置置位位RI;RI;若若以以方方式式1 1、2 2、3 3工工作作,且且SM2=0SM2=0时时,则则每每当当接接收收器器接接收收到到停停止止位位的的中中间间时时置置位位RI;RI;当当串串行行口口以以方方式式2 2或或方方式式3 3工工作作,且且SM2=1SM2=1时时,仅仅当当接接收收到到的的第第9 9位位数数据据RB8RB8为为1 1后后,同同时时还还要要接接收收到到停停止止位位的的中中间间时时置置位位RIRI。RIRI为为1 1表表示示串串行行口口接接收
12、收器器正正向向CPUCPU申申请请中中断断,同同样样RIRI必必须须由由用用户户在在中中断断服服务务程程序序中中清清0 0。AT89S51AT89S51复复位位后后,SCON,SCON也被清也被清0 0。第第5章章 AT89S51单片机的中断系统单片机的中断系统3中断允许控制中断允许控制 AT89S51AT89S51中断允许和禁止由寄存器控制。中断允许寄存器中断允许和禁止由寄存器控制。中断允许寄存器(IEIE)的字节地址为)的字节地址为A8HA8H,其格式如下:,其格式如下:位地址AFHAEHADHACHABHAAHA9HA8H符 号EA-ET2ESET1EX1ET0EX0IEIE寄存器中各位
13、均是:为寄存器中各位均是:为0 0时,禁止中断;为时,禁止中断;为1 1时,允许中断。时,允许中断。系统复位后,系统复位后,IEIE寄存器中各位均为寄存器中各位均为0 0,即此时禁止所有中断。,即此时禁止所有中断。EX0EX0(IE.0IE.0)外部中断外部中断0 0中断允许位。中断允许位。ET0ET0(IE.1IE.1)定时器定时器/计数器计数器T0T0中断允许位。中断允许位。EX1EX1(IE.2IE.2)外部中断外部中断1 1中断允许位。中断允许位。ET1ET1(IE.3IE.3)定时器定时器/计数器计数器T1T1中断允许位。中断允许位。ESES(IE.4IE.4)串行口中断允许位。串行
14、口中断允许位。EAEA(IE.7IE.7)CPUCPU中断允许位。当中断允许位。当EAEA1 1,所有中断开;当,所有中断开;当EAEA0 0,屏蔽所有中断。,屏蔽所有中断。ET2ET2(IE.5IE.5)定时器定时器T2T2中断请求位。中断请求位。第第5章章 AT89S51单片机的中断系统单片机的中断系统 5.2 5.2 中断的优先级中断的优先级 如如果果正正在在执执行行主主程程序序时时只只有有1 1个个中中断断源源请请求求中中断断,而而这这时时CPUCPU又又是是对对中中断断开开放放的的,那那么么这这个个中中断断立立即即得得到到响响应应。然然而而由由于于中中断断是是随随机机产产生生的的,中
15、中断断源源一一般般又又不不止止1 1个个,因因此此往往往往会会出出现现这这样样的的情情况况:几几个个中中断断源源同同时时请请求求中中断断;或或者者当当某某一一个个中中断断正正在在响响应应中中(即即正正在在执执行行该该中中断断源源的的中中断断服服务务程程序序),),又又有有其其它它的的中中断断源源请请求求中中断断,这时中断系统应如何处理呢这时中断系统应如何处理呢?在在一一般般情情况况下下,首首先先把把各各个个中中断断源源分分成成若若干干个个优先级优先级,然后再按如下原则进行处理:然后再按如下原则进行处理:第第5章章 AT89S51单片机的中断系统单片机的中断系统 (1)(1)不同级的中断源同时申
16、请中断时不同级的中断源同时申请中断时先高后低;先高后低;(2)(2)同级的中断源同时申请中断时同级的中断源同时申请中断时事先规定;事先规定;(3)(3)处理低级中断又收到高级中断请求时处理低级中断又收到高级中断请求时停低转高;停低转高;(4)(4)处理高级中断又收到低级中断请求时处理高级中断又收到低级中断请求时高不理低。高不理低。AT89S51AT89S51单单片片机机的的中中断断系系统统对对优优先先级级的的控控制制比比较较简简单单,只只规规定定了了两两个个中中断断优优先先级级,对对于于每每一一个个中中断断源源均均可可编编程程为为高高优优先先级级中中断断或或低低优优先先级级中中断断。在在同同1
17、 1个个优优先先级级中中,对对5 5个中断源的优先次序安排如下:个中断源的优先次序安排如下:最高优先级最高优先级最低优先级最低优先级 第第5章章 AT89S51单片机的中断系统单片机的中断系统 外部中断外部中断0(IE0)0(IE0)定时器定时器/计数器计数器T0T0溢出中断溢出中断(TF0)(TF0)外部中断外部中断1(IE1)1(IE1)定时器定时器/计数器计数器T1T1溢出中断溢出中断(TF1)(TF1)串行口中断串行口中断(RI+TI)(RI+TI)AT89S51AT89S51单单片片机机中中有有1 1个个中中断断优优先先级级寄寄存存器器IP,IP,字字节节地地址址为为B8HB8H。对
18、对于于每每1 1个个中中断断源源,均均可可通通过过对对IPIP的的设设置置来来确确定定其其优优先先等级等级,置置1 1为高优先级为高优先级,清清0 0为低优先级。为低优先级。IPIP寄存器的格式如表所示。寄存器的格式如表所示。第第5章章 AT89S51单片机的中断系统单片机的中断系统其中:其中:PX0PX0:外部中断:外部中断0 0优先级控制位。优先级控制位。PT0PT0:定时器:定时器0 0中断优先级控制位。中断优先级控制位。PX1PX1:外部中断:外部中断1 1优先级控制位。优先级控制位。PT1PT1:定时器:定时器1 1中断优先级控制位。中断优先级控制位。PSPS:串行口中断优先级控制位
19、。:串行口中断优先级控制位。上面优先级控制位规定上面优先级控制位规定1 1为高优先级为高优先级,0,0为低优先级为低优先级。第第5章章 AT89S51单片机的中断系统单片机的中断系统 5.3.1 5.3.1 中断响应过程中断响应过程 1.1.中断响应的条件中断响应的条件 单单片片机机响响应应中中断断的的条条件件为为中中断断源源有有请请求求(中中断断允允许许寄寄存存器器IEIE相相应应位位置置1),1),且且CPUCPU开开中中断断(即即EA=1)EA=1)。这这样样,在在每每个个机机器器周周期期内内,单单片片机机对对所所有有中中断断源源都都进进行行顺顺序序检检测测,并并可可在在任任1 1个个周
20、周期期的的S6S6期期间间,找找到到所所有有有有效效的的中中断断请请求求,还对其优先级进行排队。但是,必须满足下列条件:还对其优先级进行排队。但是,必须满足下列条件:第第5章章 AT89S51单片机的中断系统单片机的中断系统 (1)(1)无同级或高级中断正在服务无同级或高级中断正在服务;(2)(2)现行指令执行到最后现行指令执行到最后1 1个机器周期且已结束个机器周期且已结束;(3)(3)若若现现行行指指令令为为RETIRETI或或需需访访问问特特殊殊功功能能寄寄存存器器IEIE或或IPIP的的指指令令时时,执执行行完完该该指指令令且且紧紧随随其其后后的的另另1 1条条指指令令也已执行完。也已
21、执行完。单单片片机机便便在在紧紧接接着着的的下下1 1个个机机器器周周期期的的S1S1期期间间响响应应中断。否则中断。否则,将丢弃中断查询的结果。将丢弃中断查询的结果。第第5章章 AT89S51单片机的中断系统单片机的中断系统 2.2.中断响应过程中断响应过程 单单片片机机一一旦旦响响应应中中断断,首首先先对对相相应应的的优优先先级级有有效效触触发发器器置置位位。然然后后执执行行1 1条条由由硬硬件件产产生生的的子子程程序序调调用用指指令令,把把断断点点地地址址压压入入堆堆栈栈,再再把把与与各各中中断断源源对对应应的的中中断断服服务务程程序序的的入入口口地地址址送送入入程程序序计计数数器器PC
22、,PC,同同时时清清除除中中断断请请求求标标志志(串串行行口口中中断断和和外外部部电电平平触触发发中中断断除除外外),),从从而而程程序序便便转转移移到到中中断断服务程序。服务程序。以上过程均由中断系统自动完成。以上过程均由中断系统自动完成。第第5章章 AT89S51单片机的中断系统单片机的中断系统各中断源所对应的中断服务程序的入口地址如下:各中断源所对应的中断服务程序的入口地址如下:中断源入口地址中断源入口地址外部中断外部中断 0003H0003H定时器定时器T0T0中断中断 000BH000BH外部中断外部中断 0013H0013H定时器定时器T1T1中断中断 001BH001BH串行口中
23、断串行口中断 0023H0023H第第5章章 AT89S51单片机的中断系统单片机的中断系统 CPUCPU从从上上面面相相应应的的地地址址开开始始执执行行中中断断服服务务程程序序直直到到遇遇到到1 1条条RETIRETI指指令令为为止止。RETIRETI指指令令表表示示中中断断服服务务程程序序的的结结束束。CPUCPU执执行行该该指指令令,一一方方面面清清除除中中断断响响应应时时所所置置位位的的优优先先级级有有效效触触发发器器;另另一一方方面面从从堆堆栈栈栈栈顶顶弹弹出出断断点点地地址址送送入入程程序序计计数数器器PC,PC,从从而而返返回回主主程程序序。若若用用户户在在中中断断服服务务程程序
24、序的的开开始始安安排排了了保保护护现现场场指指令令(一一般般均均为为相相应应寄寄存存器器内内容容入入栈栈或或更更换换工工作作寄寄存存器器区区),),则则在在RETIRETI指指令令前前应应有有恢恢复复现现场场指指令令(相相应应寄寄存存器器内内容容出出栈栈或或换换回回原原工工作寄存器区作寄存器区)。第第5章章 AT89S51单片机的中断系统单片机的中断系统3.3.中断响应时间中断响应时间 所所谓谓中中断断响响应应时时间间是是指指从从查查询询中中断断请请求求标标志志位位到到转转入入中中断服务程序入口地址所需的机器周期数断服务程序入口地址所需的机器周期数(对单一中断源而言对单一中断源而言)。响响应应
25、中中断断最最短短需需要要3 3个个机机器器周周期期。若若CPUCPU查查询询中中断断请请求求标标志志的的周周期期正正好好是是执执行行1 1条条指指令令的的最最后后1 1个个机机器器周周期期,则则不不需需等等待待就就可可以以响响应应。而而响响应应中中断断执执行行1 1条条长长调调用用指指令令需需要要2 2个个机机器器周周期期,加加上上查查询询的的1 1个个机机器器周周期期,一一共共需需要要3 3个个机机器器周周期期才才开开始始执行中断服务程序执行中断服务程序。第第5章章 AT89S51单片机的中断系统单片机的中断系统 5.3.2 AT89S515.3.2 AT89S51单片机的中断矢量地址单片机
26、的中断矢量地址 处理器响应中断时,先置相应的优先级状态触发器(该触处理器响应中断时,先置相应的优先级状态触发器(该触发器指出发器指出CPUCPU开始处理的中断优先级别),然后执行一个硬件子开始处理的中断优先级别),然后执行一个硬件子程序的调用使控制转移到相应的入口,清零中断请求源申请标程序的调用使控制转移到相应的入口,清零中断请求源申请标志(志(TITI和和RIRI除外)。硬件子程序的调用程序的入口地址送程序除外)。硬件子程序的调用程序的入口地址送程序计数器计数器PCPC,各中断源服务程序的入口地址为:,各中断源服务程序的入口地址为:中断源中断源 入口地址入口地址 外部中断外部中断0 0003
27、H0 0003H定时器定时器/计数器计数器T0 000BHT0 000BH 外部中断外部中断1 0013H1 0013H定时器定时器/计数器计数器T1 001BHT1 001BH 串行口中断串行口中断 0023H0023H 第第5章章 AT89S51单片机的中断系统单片机的中断系统 5.3.3 5.3.3 中断的编程及应用中断的编程及应用 在中断服务程序编程时在中断服务程序编程时,首先要对中断系统进行初始化首先要对中断系统进行初始化,也也就是对几个特殊功能寄存器的有关控制位进行赋值。具体来说就是对几个特殊功能寄存器的有关控制位进行赋值。具体来说,就是要完成下列工作:就是要完成下列工作:1)1)
28、开中断和允许中断源中断。开中断和允许中断源中断。2)2)确定各中断源的优先级。确定各中断源的优先级。3)3)若是外部中断若是外部中断,则应规定是电平触发还是边沿触发。则应规定是电平触发还是边沿触发。例例5-1 5-1 若规定外部中断0为电平触发方式,高优先级,试写出有关的初始化程序。解:一般可采用位操作指令来实现:解:一般可采用位操作指令来实现:SETB EA SETB EA ;开中断;开中断SETB EX0 SETB EX0 ;允许外中断;允许外中断0 0中断中断SETB PX0 SETB PX0 ;外中断;外中断0 0定为高优先级定为高优先级CLR IT0 CLR IT0 ;电平触发;电平
29、触发第第5章章 AT89S51单片机的中断系统单片机的中断系统例例5-2若规定外部中断若规定外部中断1为边沿触发方式为边沿触发方式,低优先级低优先级,在中断服务程序中将寄存器在中断服务程序中将寄存器B的内的内容左环移一位容左环移一位,B的初值设为的初值设为01H。试编写主程序与中断服务程序。试编写主程序与中断服务程序。解解:程序如下:程序如下 ORG 0000H ;主程序;主程序 LJMP MAIN ;主程序转至;主程序转至MAIN处处 ORG 0013H ;中断服务程序;中断服务程序 LJMP INT ;中断服务程序转至;中断服务程序转至INT处处 MAIN:SETB EA ;开中断;开中断
30、 SETB EX1 ;允许外中断;允许外中断1中断中断 CLR PX1 ;设为低优先级;设为低优先级 SETB IT1 ;边沿触发;边沿触发 MOV B,01H ;设;设B的初值的初值HALT:SJMP HALT ;暂停等待中断;暂停等待中断INT:MOV A,B ;AB RL A ;左环移一位;左环移一位 MOV B,A ;回送;回送 RETI ;中断返回;中断返回第第5章章 AT89S51单片机的中断系统单片机的中断系统 例例5-35-3图图5-45-4所示为单片机数据传输示意图。外设数据经所示为单片机数据传输示意图。外设数据经P1P1口输口输入单片机,每准备好一个数据,外设发出选通信号,
31、经触发器和入单片机,每准备好一个数据,外设发出选通信号,经触发器和非门至。非门至。图图5-4 5-4 数据传输示意图数据传输示意图解:外设每准备好一个数据后,发出选通信号,使触发器输出解:外设每准备好一个数据后,发出选通信号,使触发器输出1 1再经非门得再经非门得0 0送至,向送至,向CPUCPU发出中断请求,发出中断请求,CPU CPU 响应这个中断请求响应这个中断请求后,在中断处理程序中先撤除中断请求信号,(通过后,在中断处理程序中先撤除中断请求信号,(通过P3.0=0P3.0=0,使,使INT0=1INT0=1)再由)再由P1P1口输入数据到单片机内部。口输入数据到单片机内部。第第5章章
32、 AT89S51单片机的中断系统单片机的中断系统ORG 0000HSTART:LJMP MAINORG 0003HLJMP INT0ORG 0030H ;主程序;主程序MAIN:CLR IT0 ;低电平触发;低电平触发SETB EASETB EX0 ;开中断;开中断MOV DPTR,#1000HORG 0100HINT0:PUSH PSW ;中断处理程序;中断处理程序PUSH ACCCLR P3.0 NOPNOPMOV A,P1 ;输入数据;输入数据MOVX DPTR,A ;保存数据;保存数据INC DPTR SETB P3.0 ;撤除;撤除INT0 POP ACC ;恢复现场;恢复现场POP
33、 PSWRETI ;返回主程序;返回主程序第第5章章 AT89S51单片机的中断系统单片机的中断系统 例例5-45-4利用外部中断利用外部中断0 0和和1 1,要求按动按键,要求按动按键K1K1,使某一存储单元,使某一存储单元的数值加的数值加1 1,按动按键,按动按键K2K2,使某一存储单元的数值减,使某一存储单元的数值减1 1。编写。编写程序。程序。图图5-5 5-5 按键示意图按键示意图解:如图解:如图5-55-5所示。所示。假设假设30H30H单元存放按键值。单元存放按键值。K1K1为为“加加1 1”按键,按键,K2K2为为“减减1 1”按键。按键。程序如下:程序如下:第第5章章 AT8
34、9S51单片机的中断系统单片机的中断系统ORG0000HAJMPMAINORG 0003H ;中断;中断0入口地址入口地址AJMPADDR ;加;加1子程序子程序ORG0013H ;中断;中断1入口地址入口地址AJMPMINUSR ;减;减1子程序子程序ORG0033HMAIN:MOVSP,#60H SETBEX0 ;打开外部中断;打开外部中断0SETBEX1 ;打开外部中断;打开外部中断1 SETBEA ;全局中断使能;全局中断使能SJMP$ADDR:CLREA ;关全局中断;关全局中断INC30HACALLDELAY ;1秒钟延时秒钟延时SETBEA;开全局中断;开全局中断RETIMINU
35、S:CLREA ;关全局中断;关全局中断DEC30HACALLDELAY ;1秒钟延时秒钟延时SETBEA;开全局中断;开全局中断RETI第第5章章 AT89S51单片机的中断系统单片机的中断系统 有以下几点需要说明:有以下几点需要说明:(1)(1)由由于于从从0003H0003H到到0023H0023H之之间间分分布布了了5 5个个中中断断源源的的入入口口地地址址,因因此此在在一一般般情情况况下下,主主程程序序与与中中断断服服务务程程序序均均用用长长转转移移指指令移至其它区域。令移至其它区域。(2)(2)本本例例题题未未考考虑虑保保护护现现场场与与恢恢复复现现场场的的问问题题,是是否否需需要要,应应 视具体情况而定。视具体情况而定。(3)(3)本例是单重中断本例是单重中断,若为多级中断若为多级中断,则情况要复杂得多。则情况要复杂得多。第第5章章 AT89S51单片机的中断系统单片机的中断系统作业作业P89 3、4、6