单片机原理第5章

上传人:沈*** 文档编号:243911411 上传时间:2024-10-01 格式:PPT 页数:44 大小:1.14MB
返回 下载 相关 举报
单片机原理第5章_第1页
第1页 / 共44页
单片机原理第5章_第2页
第2页 / 共44页
单片机原理第5章_第3页
第3页 / 共44页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,本章分为三节,主要介绍:,5,.1,80C51,的中断系统,5,.2,80C51,的中断处理过程,5,.3,80C51,的定时,/,计数器,1,5.1 80C51,的中断系统,5.1.1 80C51,的中断系统结构,一、中断的概念,CPU,在处理某一事件,A,时,发生了另一事件,B,请求,CPU,迅速去处理(,中断发生,);,CPU,暂时中断当前的工作,转去处理事件,B,(,中断响应和中断服务,);,待,CPU,将事件,B,处理完毕后,再回到原来事件,A,被中断的地方继续处理事件,A,(,中断返回,),这一过程称为,中断,。,2,引起,CPU,中断的根源,称为,中断源,。中断源向,CPU,提出的中断请求。,CPU,暂时中断原来的事务,A,,转去处理事件,B,。对事件,B,处理完毕后,再回到原来被中断的地方(即,断点,),称为中断返回。实现上述中断功能的部件称为,中断系统,(中断机构)。,3,随着计算机技术的应用,人们发现中断技术不仅解决了快速主机与慢速,I/O,设备的数据传送问题,而且还具有如下优点:,分时操作,。,CPU,可以分时为多个,I/O,设备服务,提高了计算机的利用率;,实时响应,。,CPU,能够及时处理应用系统的随机事件,系统的实时性大大增强;,可靠性高,。,CPU,具有处理设备故障及掉电等突发性事件能力,从而使系统可靠性提高。,4,二、,80C51,中断系统的结构,80C51,的中断系统有,5,个中断源,,2,个优先级,可实现二级中断嵌套,。,5,5.1.2 80C51,的中断源,一、中断源,2,、(,P3.3,)。可由,IT1(TCON.2),选择其为低电平有效还是下降沿有效。当,CPU,检测到,P3.3,引脚上出现有效的中断信号时,中断标志,IE1(TCON.3),置,1,向,CPU,申请中断。,1,、(,P3.2,)。可由,IT0(TCON.0),选择其为低电平有效还是下降沿有效。当,CPU,检测到,P3.2,引脚上出现有效的中断信号时,中断标志,IE0(TCON.1),置,1,,向,CPU,申请中断。,6,3,、,TF0,(,TCON.5,),片内定时,/,计数器,T0,溢出中断请求标志。当定时,/,计数器,T0,发生溢出时,置位,TF0,,并向,CPU,申请中断。,4,、,TF1,(,TCON.7,),片内定时,/,计数器,T1,溢出中断请求标志。当定时,/,计数器,T1,发生溢出时,置位,TF1,,并向,CPU,申请中断。,5,、,RI,(,SCON.0,)或,TI,(,SCON.1,),串行口中断请求标志。当串行口接收完一帧串行数据时置位,RI,或当串行口发送完一帧串行数据时置位,TI,,向,CPU,申请中断。,7,二、中断请求标志,1,、,TCON,的中断标志,IT0,(,TCON.0,),外部中断,0,触发方式控制位。,当,IT0=0,时,为电平触发方式。,当,IT0=1,时,为边沿触发方式(下降沿有效)。,IE0,(,TCON.1,),外部中断,0,中断请求标志位。,IT1,(,TCON.2,),外部中断,1,触发方式控制位。,IE1,(,TCON.3,),外部中断,1,中断请求标志位。,TF0,(,TCON.5,),定时,/,计数器,T0,溢出中断请求标志位。,TF1,(,TCON.7,),定时,/,计数器,T1,溢出中断请求标志位。,8,2,、,SCON,的中断标志,RI,(,SCON.0,),串行口接收中断标志位。当允许串行口接收数据时,每接收完一个串行帧,由硬件置位,RI,。同样,,RI,必须由软件清除。,TI,(,SCON.1,),串行口发送中断标志位。当,CPU,将一个发送数据写入串行口发送缓冲器时,就启动了发送过程。每发送完一个串行帧,由硬件置位,TI,。,CPU,响应中断时,不能自动清除,TI,,,TI,必须由软件清除。,9,一、中断允许控制,CPU,对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器,IE,控制的。,5.1.3 80C51,中断的控制,EX0,(IE.0),,外部中断,0,允许位;,ET0,(IE.1),,定时,/,计数器,T0,中断允许位;,EX1,(IE.2),,外部中断,0,允许位;,ET1,(IE.3),,定时,/,计数器,T1,中断允许位;,ES,(,IE.4),,串行口中断允许位;,EA,(IE.7),,,CPU,中断允许(总允许)位。,10,二、中断优先级控制,80C51,单片机有两个中断优先级,即可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断优先级寄存器,IP,中的相应位的状态来规定的,。,PX0,(,IP.0,),外部中断,0,优先级设定位;,PT0,(,IP.1,),定时,/,计数器,T0,优先级设定位;,PX1,(,IP.2,),外部中断,0,优先级设定位;,PT1,(,IP.3,),定时,/,计数器,T1,优先级设定位;,PS,(,IP.4,),串行口优先级设定位。,11,同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同一优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如所示:,12,80C51,单片机的中断优先级有三条原则:,CPU,同时接收到几个中断时,,首先响应优先级别最高的中断请求,。,正在进行的中断过程,不能被新的同级或低优先级的中断请求所中断,。,正在进行的低优先级中断服务,,能被高优先级中断请求所中断,。,为了实现上述后两条原则,,中断系统内部设有两个用户不能寻址的优先级状态触发器。,其中一个置,1,,表示正在响应高优先级的中断,它将阻断后来所有的中断请求;另一个置,1,,表示正在响应低优先级中断,它将阻断后来所有的低优先级中断请求。,13,5.2,80C51,单片机中断处理过程,一、中断响应条件,中断源有中断请求;,此中断源的中断允许位为,1,;,CPU,开中断(即,EA=1,)。,同时满足时,,CPU,才有可能响应中断,。,5.2.1,中断响应条件和时间,14,中断服务的进入:,CPU,执行程序过程中,在每个机器周期的,S5P2,期间,中断系统对各个中断源进行采样,。这些采样值在下一个机器周期内按优先级和内部顺序被依次查询。,如果某个中断标志在上一个机器周期的,S5P2,时被置成了,1,,那么它将于现在的查询周期中及时被发现。接着,CPU,便执行一条由中断系统提供的硬件,LCALL,指令,转向被称作中断向量的特定地址单元,进入相应的中断服务程序。,15,遇以下任一条件,硬件将受阻,不产生,LCALL,指令:,CPU,正在处理同级或高,优先级中断;,当前查询,的机器周期,不是所执行指令的最后一个机器周期,。即在完成所执行指令前,不会响应中断,从而保证指令在执行过程中不被打断;,正在执行,的指令为,RET,、,RETI,或任何访问,IE,或,IP,寄存器的指令。即只有在这些指令后面至少再执行一条指令时才能接受中断请求。,若由于上述条件的阻碍中断未能得到响应,当条件消失时该中断标志却已不再有效,那么该中断将不被响应。就是说,中断标志曾经有效,但未获响应,查询过程在下个机器周期将重新进行。,16,二、中断响应时间,某中断的响应时序如图:,若,M1,周期的,S5P2,前某中断生效,在,S5P2,期间其中断请求被锁存到相应的标志位中去;,M2,恰逢指令的最后一个机器周期,且该指令不是,RETI,或访问,IE,、,IP,的指令。于是,,M3,和,M4,便可以执行硬件,LCALL,指令,,M5,周期将进入了中断服务程序。,80C51,的中断响应时间(从标志置,1,到进入相应的中断服务),至少要,3,个完整的机器周期。,17,将相应的优先级状态触发器置,1,(以阻断后来的同级或低级的中断请求)。,执行一条硬件,LCALL,指令,即把程序计数器,PC,的内容压入堆栈保存,再将相应的中断服务程序的入口地址送入,PC,。,执行中断服务程序。,5.2.2,中断响应过程,中断响应过程的前两步是由中断系统内部自动完成的,而中断服务程序则要由用户编写程序来完成。,18,5.2.3,中断返回,RETI,指令的具体功能是:,将中断响应时压入堆栈保存的断点地址从栈顶弹出送回,PC,,,CPU,从原来中断的地方继续执行程序;,将相应中断优先级状态触发器清,0,,通知中断系统,中断服务程序已执行完毕。,注意,不能用,RET,指令代替,RETI,指令。在中断服务程序中,PUSH,指令与,POP,指令必须成对使用,否则不能正确返回断点 。,19,若外部中断定义为,电平触发方式,,中断标志位的状态随,CPU,在每个机器周期采样到的外部中断输入引脚的电平变化而变化,这样能提高,CPU,对外部中断请求的响应速度。但外部中断源若有请求,必须把有效的,低电平保持到请求获得响应时为止,,不然就会漏掉;,而在中断服务程序结束之前,中断源又必须撤消其有效的低电平,,否则中断返回之后将再次产生中断。,电平触发方式适合于外部中断输入以低电平输入且中断服务程序能清除外部中断请求源的情况。例如,并行接口芯片,8255,的中断请求线在接受读或写操作后即被复位,因此,以其去请求电平触发方式的中断比较方便。,20,若外部中断定义为,边沿触发方式,,在相继连续的两次采样中,一个周期采样到外部中断输入为高电平,下一个周期采样到为低电平,则在,IE0,或,IE1,中将锁存一个逻辑,1,。即便是,CPU,暂时不能响应,中断申请标志也不会丢失,直到,CPU,响应此中断时才清零。这样,为保证下降沿能被可靠地采样到,,外中断引脚上的高低电平(负脉冲的宽度)均至少要保持一个机器周期,(若晶振为,12MHz,时,为,1,微秒)。,边沿触发方式适合于以负脉冲形式输入的外部中断请求,如,ADC0809,的转换结束标志信号,EOC,为正脉冲,经反相后就可以作为,80C51,的中断输入。,21,5.2.4,中断程序举例,22,ORG 0000H,START,:,LJMP MAIN,;跳转到主程序,ORG 0003H,LJMP INTO,;转向中断服务程序,ORG 0030H,;主程序,MAIN,:,CLR IT0,;设为电平触发方式,SETB EA,;,CPU,开放中断,SETB EX0,;允许中断,MOV DPTR,,,#1000H,;设置数据区地址指针,ORG 0200H,;中断服务程序,INT0,:,PUSH PSW,;保护现场,PUSH ACC,CLR P3.0,;由,P3.0,输出,0,NOP,NOP,SETB P3.0,;由,P3.0,输出,1,,撤除,MOV A,,,P1,;输入数据,MOVX DPTR,,,A,;存入数据存储器,INC DPTR,;修改数据指针,指向下一个单元,POP ACC,;恢复现场,POP PSW,RETI,;中断返回,23,例 多外部中断源的系统示例。,设有,5,个外部中断源,中断优先级排队顺序为:,XI0,、,XI1,、,XI2,、,XI3,、,XI4,。试设计它们与,80C51,单片机的接口。,24,ORG 0003H,LJMP INSE0,;转外部中断,0,服务程序入口,ORG 0013H,LJMP INSE1,;转外部中断,1,服务程序入口,INSE0,:,PUSH PSW,;,XI0,中断服务程序,PUSH ACC,POP ACC,POP PSW,RETI,25,INSE1,:,PUSH PSW,;中断服务程序,PUSH ACC,JB P1.0,,,DV1,;,P1.0,为,1,,转,XI1,中断服务程序,JB P1.1,,,DV2,;,P1.1,为,1,,转,XI2,中断服务程序,JB P1.2,,,DV3,;,P1.2,为,1,,转,XI3,中断服务程序,JB P1.3,,,DV4,;,P1.3,为,1,,转,XI4,中断服务程序,INRET,:,POP ACC,POP PSW,RETI,DV1,:,;
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!