《单片机 第五章 单片机的中断系统精选PPT.ppt》由会员分享,可在线阅读,更多相关《单片机 第五章 单片机的中断系统精选PPT.ppt(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、单片机 第五章 单片机的中断系统第1页,此课件共26页哦第一节第一节中断的基本中断的基本概念概念1.中断概念中断概念:CPU在正常运行程序时,由于在正常运行程序时,由于CPU以外某一事件的发生,以外某一事件的发生,引起引起CPU暂停正在运行的程序,而转到为该事件的发生预先安排好暂停正在运行的程序,而转到为该事件的发生预先安排好的服务程序中去执行。的服务程序中去执行。主主程程序序断点断点PCXRETI中中断断服服务务程程序序继继续续执执行行主主程程序序中中断断响响应应返返回回主主程程序序PCPC中断入口地址中断入口地址中断流程示意图中断流程示意图中断源中断源入口地址入口地址外部中断外部中断000
2、03H定时器定时器T0中断中断000BH外部中断外部中断10013H定时器定时器T1中断中断001BH串行口中断串行口中断0023H第2页,此课件共26页哦2、中断源中断源(可由硬件或软件引起可由硬件或软件引起):引起中断的事件:引起中断的事件MSC51具有多个中断源,具有多个中断源,51子系列有子系列有5个个中断源,中断源,2个外部中断,个外部中断,2个定时中断和个定时中断和1个串行中个串行中断。断。(A).外中断:外部信号引起,共外中断:外部信号引起,共2个。个。即:即:外部中断外部中断“0”,中断请求信号由引脚,中断请求信号由引脚INT0(P3.2)引入;引入;外部中断外部中断“1”,中
3、断请求信号由引脚,中断请求信号由引脚INT1(P3.3)引入。引入。外部中断请求有两种信号形式:外部中断请求有两种信号形式:低低电平触发方式电平触发方式和和负跳脉冲触发方式:负跳脉冲触发方式:(B).定时器定时器/计数器中断:内部计数器计数溢出,溢出标志位计数器中断:内部计数器计数溢出,溢出标志位TFX作为单片机接受中断请求标作为单片机接受中断请求标志。志。信号来源:内部(定时)和外部(计数)。信号来源:内部(定时)和外部(计数)。(C).串行中断:串行数据传送(发送和接收)的需要而设置。串行中断:串行数据传送(发送和接收)的需要而设置。负跳脉冲触发方式:负跳信号有效,即负跳脉冲触发方式:负跳
4、信号有效,即CPU在连续两个周期对引入端在连续两个周期对引入端INTX采样,如果前周期为采样,如果前周期为高电平,后一周期为低电平,则为有效的负跳脉冲触发方式的外中断申请。高电平,后一周期为低电平,则为有效的负跳脉冲触发方式的外中断申请。低低电平触发方式:低电平有效,只要电平触发方式:低电平有效,只要CPU在每机器周期在每机器周期S5P2期间从引入端期间从引入端INTX采采样到低电平,就进入外中断。样到低电平,就进入外中断。第3页,此课件共26页哦IE-中断允许控制寄存器,中断允许控制寄存器,TCON-定时控制寄存器,定时控制寄存器,SCON-串行口控制寄存器。串行口控制寄存器。IP-中断优先
5、级控制寄存器,中断优先级控制寄存器,第二节第二节 MCS-51单片机的中断系统单片机的中断系统与中断控制有关的控制寄存器有四个:与中断控制有关的控制寄存器有四个:第4页,此课件共26页哦IE0AFH0AEH0ADH0ACH0ABH0AAH0A9H0A8HEA/ESET1EX1ET0EX01.中断允许控制寄存器中断允许控制寄存器IE用户软件设置用户软件设置寄存器地址为寄存器地址为A8H(2)EX0(EXl):外部中断允许控制位(:外部中断允许控制位(INT0、INT1)EX0(EXl)0禁止外中断禁止外中断EX0(EXl)l允许外中断允许外中断(1)EA:中断允许总控制位。:中断允许总控制位。E
6、A0中断总禁止,禁止所有中断,即不响应任何中断请求。中断总禁止,禁止所有中断,即不响应任何中断请求。EA1中断总允许,总允许后中断的禁止或允许由各中断源的中断允许中断总允许,总允许后中断的禁止或允许由各中断源的中断允许控制位进行设置。控制位进行设置。通过设置相关寄存器,达到控制中断工作的目的通过设置相关寄存器,达到控制中断工作的目的一、中断控制寄存器一、中断控制寄存器第5页,此课件共26页哦(4)ES:串行中断允许控制位:串行中断允许控制位ES0禁止串行中断禁止串行中断ES1允许串行中断允许串行中断结论:结论:MCS51通过中断允许控制寄存器对中断的允许实行通过中断允许控制寄存器对中断的允许实
7、行两级控制两级控制。以以EA位作为总控制位,以各中位作为总控制位,以各中断源的中断允许位作为分控制位。断源的中断允许位作为分控制位。MCS51单片机复位后单片机复位后(1E)00H,因此中断系统处于禁止状态。,因此中断系统处于禁止状态。单片机在中断响应后不会自动关闭中断。因此在转中断服务程序后,应使用有关指令禁止单片机在中断响应后不会自动关闭中断。因此在转中断服务程序后,应使用有关指令禁止中断,即以软件方式关闭中断。中断,即以软件方式关闭中断。(3)ET0(ETl):定时计数中断允许控制位(:定时计数中断允许控制位(T0、T1)ET0(ETl)0禁止定时禁止定时(或计数或计数)中断中断ET0(
8、ETl)1允许定时允许定时(或计数或计数)中断中断第6页,此课件共26页哦2.定时器控制寄存器定时器控制寄存器TCON寄存器地址为寄存器地址为88HTCON8FH8EH8DH8CH8BH8AH89H88HTF1TR1TF0TR0IE1IT1IE0IT0(2)IT0、IT1:外中断请求触发方式控制位。:外中断请求触发方式控制位。用户软件设置用户软件设置ITX0低低电平触发方式电平触发方式ITX1负跳脉冲触发方式负跳脉冲触发方式(1)IE0、IE1:外部中断请求标志。:外部中断请求标志。硬件自动设置硬件自动设置CPU采样到采样到INTX端有效的中断请求后,端有效的中断请求后,IEX位由硬件自动置位
9、由硬件自动置“1”。在中断响。在中断响应期应期间(要转向中断服务程序时),由硬件自动清零。间(要转向中断服务程序时),由硬件自动清零。至少至少2个机器周期个机器周期 至少至少1个机器周期个机器周期第7页,此课件共26页哦(3)TF0、TF1:定时器溢出中断请求标志位,相应溢出标志位:定时器溢出中断请求标志位,相应溢出标志位TFX由硬件置由硬件置“1”。两种使用方式:两种使用方式:a.软件查询时,作为溢出标志位,查询软件查询时,作为溢出标志位,查询有效后,有效后,用户软件清零。用户软件清零。b.中断方式时,作为中断请求标志位,为中断方式时,作为中断请求标志位,为“1”时,自动转向中断服时,自动转
10、向中断服务程序,再由务程序,再由硬件自动清零硬件自动清零。LOOP:JBCTF0,NEXTSJMPLOOP3.串行口控制寄存器串行口控制寄存器SCON(其中只有两位与中断有关)(其中只有两位与中断有关)寄存器地址为寄存器地址为98HSCON9FH9EH9DH9CH9BH9AH99H98HSM0SM1SM2RENTB8RB8TIRI(4)TR0、TR1:下一章讲定时器下一章讲定时器/计数器时再讲计数器时再讲(1)TI:串行口发送中断标志位。当:串行口发送中断标志位。当CPU将一个数据写入发送缓冲器时,就启动发送将一个数据写入发送缓冲器时,就启动发送 当最后一个数据位发送完后,当最后一个数据位发送
11、完后,TI由硬件自动置位,并向由硬件自动置位,并向CPU发中断申请。进行中发中断申请。进行中 断服务程序时,断服务程序时,TI要由软件清要由软件清0。软件查询时,。软件查询时,TI可作为状态位使用。可作为状态位使用。(2)RI:串行口接收中断标志位。当:串行口接收中断标志位。当CPU接收数据时,当接收到最后一个数据位后,接收数据时,当接收到最后一个数据位后,RI由硬件自动置位,并向由硬件自动置位,并向CPU发中断申请。进行中断服务程序时,发中断申请。进行中断服务程序时,RI要由软件清要由软件清0。软件查询时,软件查询时,RI可作为状态位使用。可作为状态位使用。第8页,此课件共26页哦4.中断优
12、先级控制寄存器中断优先级控制寄存器IP用户软件设置用户软件设置寄存器地址为寄存器地址为B8HIP0BFH0BEH0BDH0BCH0BBH0BAH0B9H0B8H/PSPT1PX1PT0PX0注意:注意:(一)中断优先级控制原则(参看教材(一)中断优先级控制原则(参看教材103页)页)(二)控制逻辑:(二)控制逻辑:(a)系统复位后,各位均为)系统复位后,各位均为0,或,或如果同级的多个中断请求同时出现,则按如果同级的多个中断请求同时出现,则按CPU查询次序确定那查询次序确定那个中断请求被响应。其查询次序为:个中断请求被响应。其查询次序为:外部中断外部中断0定时中断定时中断0外部中断外部中断l定
13、时中断定时中断1串行中断。串行中断。(b)低优先级中断请求不能打断高优先级的中断服务;但高优先级中断请求可以打断低优)低优先级中断请求不能打断高优先级的中断服务;但高优先级中断请求可以打断低优先级的中断服务,从而实现中断嵌套。先级的中断服务,从而实现中断嵌套。(c)如果)如果1个中断请求已被响应,则同级的其它中断响应将被禁止。个中断请求已被响应,则同级的其它中断响应将被禁止。PX0:外部中断:外部中断0优先级设定位优先级设定位PXl:外部中断外部中断l优先级设定位优先级设定位PT0:定时中断:定时中断0优先级设定位优先级设定位PTl:定时中断定时中断l优先级设定位优先级设定位PS:串行中断优先
14、级设定位串行中断优先级设定位对应位置对应位置1,优先级为高;置,优先级为高;置0,优先级为低;,优先级为低;第9页,此课件共26页哦中断嵌套流程图中断嵌套流程图主主程程序序RETI低低级级中中断断程程序序继继续续执执行行主主程程序序中中断断响响应应返返回回高高级级中中断断程程序序中中断断响响应应返返回回RETI中断优先级:当多个中断源请求中断服务,那么中断优先级:当多个中断源请求中断服务,那么CPU响应这些响应这些中断就有一个先后顺序,称之为中断优先级。中断就有一个先后顺序,称之为中断优先级。优先级高,则优先级高,则CPU先响应先响应主主程程序序RETI高高级级中中断断程程序序继继续续执执行行
15、主主程程序序中中断断响响应应返返回回低低级级中中断断程程序序中中断断响响应应返返回回RETI优先级低,则优先级低,则CPU不影响高级中断不影响高级中断(平级)(平级)(平级)(平级)第10页,此课件共26页哦自自然然优优先先级级矢矢量量地地址址自自然然优优先先级级矢矢量量地地址址高级中高级中断请求断请求PCPCPCPC断请求断请求低级中低级中SCONSCON中断标志中断标志IPIPPX0PX01 1PT0PT01 11 10 0PX1PX11 10 0PSPS1 10 00 0PT1PT10 0IEIEEX0EX0ET0ET0EX1EX1ET1ET1ESESTCONTCONIE0IE0TF0T
16、F0IE1IE1TF1TF1TITIRIRIRXRXTXTXT1T1IT1=1IT1=1INT1INT1IT1=0IT1=0T0T0INT0INT0IT0=1IT0=1IT0=0IT0=0源允许源允许总允许总允许优先级优先级硬件查询硬件查询EAEA80518051的中断系的中断系统第11页,此课件共26页哦5.中断初始化和中断控制寄存器状态逻辑设置中断初始化和中断控制寄存器状态逻辑设置用户通过用户通过TCON、SCON、IE和和IP四个控制寄存器来使用中断系统。四个控制寄存器来使用中断系统。这四个控制寄存器都是既可进行这四个控制寄存器都是既可进行字节寻址字节寻址又可进行又可进行位寻址位寻址的。
17、因此对位状态的设置既的。因此对位状态的设置既可以使用可以使用字节操作指令字节操作指令又可以使用又可以使用位操作指令位操作指令。字节操作指令:字节操作指令:MOVIE,#81H;EA,/,/,ES,ET1,EX1,ET0,EX0位操作指令:位操作指令:SETBEASETBEX0第12页,此课件共26页哦二、二、中断响应过程中断响应过程中断响应:在满足中断响应:在满足CPU中断响应条件后,中断响应条件后,CPU对中断源中断请求的回答。对中断源中断请求的回答。2.中断响应可能会被阻止或被延迟:中断响应可能会被阻止或被延迟:a.CPU正处在为一个同级或高级的中断服务中。正处在为一个同级或高级的中断服务
18、中。b.查询中断请求的机器周期不是当前指令的最后一个机器周期,即当前指令完成前,不会响应任何中查询中断请求的机器周期不是当前指令的最后一个机器周期,即当前指令完成前,不会响应任何中断请求。断请求。c.当前指令是返回指令当前指令是返回指令(RET,RETl)或访问或访问IE、IP的指令。的指令。MCS5l中断系统规定,在执行完这些指令之后,中断系统规定,在执行完这些指令之后,还应再继续执行一条指令,然后才能响应中断。还应再继续执行一条指令,然后才能响应中断。以上三个条件称为中断封锁条件以上三个条件称为中断封锁条件1.中断响应基本条件中断响应基本条件(来中断,开中断来中断,开中断)a.有中断源发出
19、中断申请(中断采样有中断源发出中断申请(中断采样S5P2、中断查询、中断查询S6)b.中断总允许位中断总允许位EA1c.各个中断源相应的允许位置各个中断源相应的允许位置1,即,即ES、ET1、EX1、ET0、EX0。第13页,此课件共26页哦3.中断响应过程中断响应过程:如果满足如果满足中断响应条件中断响应条件且不存在中断封锁情况,则且不存在中断封锁情况,则CPU进入中断响应周期。完成以下工作:进入中断响应周期。完成以下工作:a.将响应的优先级状态触发器置将响应的优先级状态触发器置1。b.由硬件清除相应的中断请求标志位由硬件清除相应的中断请求标志位:TFX,IEX。但串行中断标志位必须手动清除
20、。但串行中断标志位必须手动清除。c.执行一条执行一条由硬件生成由硬件生成的长调用指令的长调用指令LCALL。其格式为其格式为LCALLaddrl6,这里的,这里的addrl6就是程序存储器中相应中就是程序存储器中相应中断区的入口地址。该指令将自动把断点地址(当前断区的入口地址。该指令将自动把断点地址(当前PC值)压入堆栈保护起来,然后将值)压入堆栈保护起来,然后将对应的中断入口地址对应的中断入口地址装入装入PC,使程序转向该中断入口地址,去执行中断服务程序。,使程序转向该中断入口地址,去执行中断服务程序。中断源中断源入口地址入口地址外部中断外部中断00003H定时器定时器T0中断中断000BH
21、外部中断外部中断10013H定时器定时器T1中断中断001BH串行口中断串行口中断0023H注意:注意:中断服务程序入口地址仅间隔中断服务程序入口地址仅间隔8个字节,因此通个字节,因此通常在这些入口地址处存放一条常在这些入口地址处存放一条无条件转移指令无条件转移指令,以控制,以控制程序转到用户安排好的中断服务程序地址去执行。程序转到用户安排好的中断服务程序地址去执行。第14页,此课件共26页哦4.中断响应时间中断响应时间:从中断请求产生到从中断请求产生到CPU转到相应的中断服务程序的入口地址所需的时间。转到相应的中断服务程序的入口地址所需的时间。1、基本响应时间(、基本响应时间(3个机器周期)
22、个机器周期)(1)查询中断标志:)查询中断标志:1个机器周期;个机器周期;(2)转去执行中断服务程序:)转去执行中断服务程序:2个机器周期个机器周期2、额外的处理时间(、额外的处理时间(05个机器周期)个机器周期)RETI指令:指令:2个机器周期;个机器周期;MUL或或DIV指令:指令:4个机器周期个机器周期。b.最长响应时间为最长响应时间为8个机器周期个机器周期查询中断标志位时,刚好开始执行查询中断标志位时,刚好开始执行(RET,RETl)或访问或访问IE、IP的指令,最长需要的指令,最长需要2个机器周期;单片机要求必个机器周期;单片机要求必须再继续执行一条指令,然后才能响应中断。若再执行的
23、最长是须再继续执行一条指令,然后才能响应中断。若再执行的最长是4个机器周期的指令(个机器周期的指令(MULAB),再加上执行),再加上执行LCALL的的2个机器周期,总共是个机器周期,总共是8个机器周期。个机器周期。a.MCS51单片机所需最短响应时间为单片机所需最短响应时间为3个机器周期。个机器周期。中断请求标志位请求占中断请求标志位请求占1个机器周期(每个机器周期的个机器周期(每个机器周期的S5P2期间查询中断标志位)。若此时恰好是正期间查询中断标志位)。若此时恰好是正在执行指令的最后一个机器周期,中断立即会在该机器周期结束后被响应,硬件自动产生在执行指令的最后一个机器周期,中断立即会在该
24、机器周期结束后被响应,硬件自动产生LCALL指令,耗费指令,耗费2个个机器周期。因此总共机器周期。因此总共3个机器周期。个机器周期。第15页,此课件共26页哦结论:结论:一般的中断响应时间都是一般的中断响应时间都是38个机器周期。但是如果出现同级或是高级中个机器周期。但是如果出现同级或是高级中断正在响应或是服务中,则响应时间无法计算。断正在响应或是服务中,则响应时间无法计算。一般应用中,中断响应时间无需计算,只有在精确定时的应用一般应用中,中断响应时间无需计算,只有在精确定时的应用场合,才需要计入中断响应时间,保证定时的精确。场合,才需要计入中断响应时间,保证定时的精确。第16页,此课件共26
25、页哦三三 中断服务程序中断服务程序中断都是在运行主程序时发生的,是主程序的随机事件,是否允许发生以及如何发生,都应该在主程序中中断都是在运行主程序时发生的,是主程序的随机事件,是否允许发生以及如何发生,都应该在主程序中预先设置,这就是中断初始化。预先设置,这就是中断初始化。中断服务程序:从入口地址开始执行一直到返回指令中断服务程序:从入口地址开始执行一直到返回指令RETI为止。为止。需注意的问题:需注意的问题:2.开中断和关中断开中断和关中断a.在中断处理程序中,关中断,禁止响应其他一切中断,无中断嵌套在中断处理程序中,关中断,禁止响应其他一切中断,无中断嵌套b.要保持中断嵌套,就要分别在现场
26、保护和现场恢复前后,加上关中断和开中断,避免现场被要保持中断嵌套,就要分别在现场保护和现场恢复前后,加上关中断和开中断,避免现场被破坏。破坏。1.现场保护和现场恢复现场保护和现场恢复所谓现场,指中断时刻,单片机存储单元中的数据或状态,一定是主程序和中所谓现场,指中断时刻,单片机存储单元中的数据或状态,一定是主程序和中断程序都用到的断程序都用到的且不能被修改的且不能被修改的存储单元。存储单元。现场保护:位于中断处理程序首部,现场保护:位于中断处理程序首部,PUSH操作数操作数现场恢复:位于中断处理程序尾部,现场恢复:位于中断处理程序尾部,POP操作数操作数第17页,此课件共26页哦ORG 000
27、0HLJMP MAINORG 0013HLJMPEXINT1ORG 0050HEXINT1:CLREA;关中断关中断PUSHACCPUSHPSW;现场保护现场保护SETBEA;开中断开中断中断服务程序中断服务程序CLREA;关中断关中断POPPSWPOPACC;现场恢复现场恢复SETBEA;开中断开中断RETI;中断返回中断返回ORG0100HMAIN:.第18页,此课件共26页哦3.中断返回中断返回中断处理程序后最后一条指令必须是中断返回指令中断处理程序后最后一条指令必须是中断返回指令RETI。执行该指令时:。执行该指令时:a.将将“优先级状态触发器优先级状态触发器”复位为复位为0;b.从堆
28、栈栈顶弹出断点地址,装入从堆栈栈顶弹出断点地址,装入PC,从而返回主程序。,从而返回主程序。ORG0000HLJMPMAINORG0050HMAIN:.LCALLSUB.SJMP$SUB:.RETI;能正确运行吗?能正确运行吗?ORG0000HLJMPMAINORG0003HLJMPSUBMAIN:.SJMP$SUB:.RET;能正确运行吗?能正确运行吗?第19页,此课件共26页哦四、四、中断请求的撤消中断请求的撤消中断响应后,中断响应后,TCON和和SCON中的中断请求标志应该及时清除,否则就意味着中断请求继中的中断请求标志应该及时清除,否则就意味着中断请求继续存在,处理不当,会造成中断的重
29、复查询和响应。因此就存在一个中断请求的撤消的续存在,处理不当,会造成中断的重复查询和响应。因此就存在一个中断请求的撤消的问题。问题。2.负脉冲方式外部中断请求的撤消:负脉冲方式外部中断请求的撤消:两项内容:两项内容:a.外中断标志位外中断标志位IEX清清“0”:中断响应后,硬件自动把标志位:中断响应后,硬件自动把标志位IEX清清“0”。b.外中断请求信号的撤消:对于脉冲方式,脉冲信号过后就消失。外中断请求信号的撤消:对于脉冲方式,脉冲信号过后就消失。因此,负脉冲方式外部中断请求的撤消是自动的。因此,负脉冲方式外部中断请求的撤消是自动的。1.定时中断请求的撤消:定时中断请求的撤消:一项内容:定时
30、溢出标志位一项内容:定时溢出标志位TFX清清“0”。中断响应后,硬件自动把标志位。中断响应后,硬件自动把标志位TFX清清“0”,即定时中断请求的撤消是自动的。,即定时中断请求的撤消是自动的。第20页,此课件共26页哦4.串行中断软件撤消:串行中断软件撤消:一项内容:标志位清一项内容:标志位清“0”,中断响应后,需要先分别测试,中断响应后,需要先分别测试TI和和RI的状态(只有一个串行的状态(只有一个串行中断入口地址),判断完是接收操作还是发送操作后,再软件清中断入口地址),判断完是接收操作还是发送操作后,再软件清“0”。3.低电平方式外部中断请求的撤消:电平方式外部中断,中断标志的撤消是自动的
31、,但中断请求信号的低电低电平方式外部中断请求的撤消:电平方式外部中断,中断标志的撤消是自动的,但中断请求信号的低电平可能继续存在,在以后的机器周期采样时,又会把清平可能继续存在,在以后的机器周期采样时,又会把清“0”的的IEX标志位置标志位置“1”。因此其中断请求撤消。因此其中断请求撤消也分为两项内容:也分为两项内容:a.外中断标志位外中断标志位IEX清清“0”:中断响应后,硬件自动把标志位:中断响应后,硬件自动把标志位IEX清清“0”。b.外中断请求信号的撤消:把中断信号引脚从低电平强制改为高,为此需要增加硬件电路和软件程序。外中断请求信号的撤消:把中断信号引脚从低电平强制改为高,为此需要增
32、加硬件电路和软件程序。第21页,此课件共26页哦第三节第三节 中断系统的应用中断系统的应用中断控制就是对中断控制就是对4个与中断有关的专用寄存器个与中断有关的专用寄存器TCON、SCON、IE和和IP进行管理和控制,管理进行管理和控制,管理和控制的项目有:和控制的项目有:(1)CPU中断的开放与关闭中断的开放与关闭(2)某中断源中断请求的允许与禁止)某中断源中断请求的允许与禁止(3)各中断源优先级别的设定)各中断源优先级别的设定(4)外部中断请求的触发方式)外部中断请求的触发方式中断管理与控制程序一般包含在主程序当中。在中断响应过程中,断点的保护是由硬件中断管理与控制程序一般包含在主程序当中。
33、在中断响应过程中,断点的保护是由硬件电路来实现的,用户在编写中断服务程序时,主要需考虑现场的保护与恢复。当存在中电路来实现的,用户在编写中断服务程序时,主要需考虑现场的保护与恢复。当存在中断嵌套时,在保护和恢复现场前要关中断;在保护和恢复现场后要根据需要开中断。断嵌套时,在保护和恢复现场前要关中断;在保护和恢复现场后要根据需要开中断。第22页,此课件共26页哦例:硬件电路如图,通过例:硬件电路如图,通过8051单片机的单片机的P1口控制口控制8个个LED做左移和右移发光,当中断来做左移和右移发光,当中断来时(按下时(按下/INT0),使),使8个个LED闪烁闪烁5次次.P1.0P1.0P1.1
34、P1.1P1.2P1.2P1.3P1.3P1.4P1.4P1.5P1.5P1.6P1.6P1.7P1.780C5180C51+5V+5VINT0INT0外部中断外部中断/INT0的应用的应用第23页,此课件共26页哦ORG0000HAJMPMAINORG0003HAJMPEXT0ORG0030HMAIN:SETBEX0;CPU开中断开中断SETBEAMOVSP,#70H;重设堆栈指针重设堆栈指针LOOP:MOVA,#0FFH;左移初值;左移初值CLRCMOVR2,#08H;设左移;设左移8次次LP1:RLCAMOVP1,A;输出至;输出至P1口口ACALLDELAY;延时;延时0.2秒秒DJN
35、ZR2,LP1MOVR2,#07H;设右移;设右移7次次LP2:RRCAMOVP1,AACALLDELAYDJNZR2,LP2AJMPLOOP;重复循环;重复循环EXT0:PUSHACC;保护现场;保护现场PUSHPSWSETBRS0;选工作寄存器组;选工作寄存器组1CLRRS1MOVA,#00;设;设LED灯全亮值灯全亮值MOVR2,#0AH;闪烁;闪烁5次,亮灭次,亮灭10次次LP3:MOVP1,A;输出至;输出至P1口口ACALLDELAYCPLA;A取反取反DJNZR2,LP3;循环;循环POPPSW;恢复现场;恢复现场POPACCRETI;MOV IE,#81H;MOV IP,#01H;MOV TCON,#00H第24页,此课件共26页哦DELAY:MOVR5,#20 ;延时延时0.2m子程序子程序D1:MOVR6,#20D2:MOVR7,#248D3:DJNZR7,D3DJNZ R6,D2DJNZR5,D1RETEND第25页,此课件共26页哦思考题思考题第26页,此课件共26页哦