中断系统与定时器课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《中断系统与定时器课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中断 系统 定时器 课件
- 资源描述:
-
1、12022-8-105.1 80C51的中断系统 一、中断的概念一、中断的概念 CPU在处理某一事件在处理某一事件A时,发生了另一时,发生了另一事件事件B请求请求 CPU迅速去处理(迅速去处理(中断发中断发生生););CPU暂时中断当前的工作,转去处理事暂时中断当前的工作,转去处理事件件B(中断响应和中断服务中断响应和中断服务););待待CPU将事件将事件B处理完毕后,再回到原处理完毕后,再回到原来事件来事件A被中断的地方继续处理事件被中断的地方继续处理事件A(中断返回中断返回),这一过程称为),这一过程称为中断中断。5.1.1 80C51的中断系统结构的中断系统结构22022-8-105.1
2、.1 80C51的中断系统结构的中断系统结构 引起引起CPU中断的根源,称为中断的根源,称为中断源中断源。中断源向。中断源向CPU提出的中断请求。提出的中断请求。CPU暂时中断原来的事务暂时中断原来的事务A,转去处理事件,转去处理事件B。对事件。对事件B处理完毕后,再处理完毕后,再回到原来被中断的地方(即回到原来被中断的地方(即断点断点),称为中断返回。实现上述中断功能),称为中断返回。实现上述中断功能的部件称为的部件称为中断系统中断系统(中断机构)。(中断机构)。32022-8-105.1.1 80C51的中断系统结构的中断系统结构随着计算机技术的应用,人们发现中断技术不仅解决了快速主随着计
3、算机技术的应用,人们发现中断技术不仅解决了快速主机与慢速机与慢速I/O设备的数据传送问题,而且还具有如下优点:设备的数据传送问题,而且还具有如下优点:v分时操作分时操作 CPU可以分时为多个可以分时为多个I/O设备服务,提高了计算机的利用率;设备服务,提高了计算机的利用率;v实时响应实时响应 CPU能够及时处理应用系统的随机事件,系统的实时性大大能够及时处理应用系统的随机事件,系统的实时性大大增强;增强;v可靠性高可靠性高 CPU具有处理设备故障及掉电等突发性事件能力,从而使系具有处理设备故障及掉电等突发性事件能力,从而使系统可靠性提高。统可靠性提高。42022-8-105.1.1 80C51
4、的中断系统结构的中断系统结构二、二、80C51中断系统的结构中断系统的结构 80C51的中的中断系统有断系统有5个中断源,个中断源,2个优先级,可实个优先级,可实现二级中断嵌套现二级中断嵌套。52022-8-105.1.2 80C51的中断源的中断源 一、中断源一、中断源 1、/INT0(P3.2)。可由)。可由IT0(TCON.0)选择其为低电平有效还是下降沿有效。当选择其为低电平有效还是下降沿有效。当CPU检测到检测到P3.2引脚上出现有效的中断信号时,中断标志引脚上出现有效的中断信号时,中断标志IE0(TCON.1)置置1,向,向CPU申请中断申请中断2、/INT1(P3.3)。可由)。
5、可由IT1(TCON.2)选择其为低电平有效还是下降沿有效。当选择其为低电平有效还是下降沿有效。当CPU检测到检测到P3.3引脚上出现有效的中断信号时,中断标志引脚上出现有效的中断信号时,中断标志IE1(TCON.3)置置1,向向CPU申请中断。申请中断。62022-8-105.1.2 80C51的中断源的中断源3、TF0(TCON.5),片内定时),片内定时/计数器计数器T0溢出中断请求标志。当定时溢出中断请求标志。当定时/计数器计数器T0发生溢出时,置位发生溢出时,置位TF0,并向,并向CPU申请中断。申请中断。4、TF1(TCON.7),片内定时),片内定时/计数器计数器T1溢出中断请求
6、标志。当定时溢出中断请求标志。当定时/计数器计数器T1发生溢出时,置位发生溢出时,置位TF1,并向,并向CPU申请中断。申请中断。5、RI(SCON.0)或)或TI(SCON.1),串行口中断请求标志。当串行),串行口中断请求标志。当串行口接收完一帧串行数据时置位口接收完一帧串行数据时置位RI或当串行口发送完一帧串行数据时或当串行口发送完一帧串行数据时置位置位TI,向,向CPU申请中断。申请中断。72022-8-105.1.2 80C51的中断源的中断源vIT0(TCON.0),外部中断),外部中断0触发方式控制位。触发方式控制位。当当IT0=0时,为电平触发方式。时,为电平触发方式。当当IT
7、0=1时,为边沿触发方式(下降沿有效)。时,为边沿触发方式(下降沿有效)。vIE0(TCON.1),外部中断),外部中断0中断请求标志位。中断请求标志位。vIT1(TCON.2),外部中断),外部中断1触发方式控制位。触发方式控制位。vIE1(TCON.3),外部中断),外部中断1中断请求标志位。中断请求标志位。vTF0(TCON.5),定时),定时/计数器计数器T0溢出中断请求标志位。溢出中断请求标志位。vTF1(TCON.7),定时),定时/计数器计数器T1溢出中断请求标志位。溢出中断请求标志位。1、TCON的中断标志的中断标志 二、中断请求标志二、中断请求标志 82022-8-105.1
8、.2 80C51的中断源的中断源vRI(SCON.0),串行口接收中断标志位。当允许串行口接收数),串行口接收中断标志位。当允许串行口接收数据时,每接收完一个串行帧,由硬件置位据时,每接收完一个串行帧,由硬件置位RI。同样,。同样,RI必须由软必须由软件清除。件清除。vTI(SCON.1),串行口发送中断标志位。当),串行口发送中断标志位。当CPU将一个发送数将一个发送数据写入串行口发送缓冲器时,就启动了发送过程。每发送完一个据写入串行口发送缓冲器时,就启动了发送过程。每发送完一个串行帧,由硬件置位串行帧,由硬件置位TI。CPU响应中断时,不能自动清除响应中断时,不能自动清除TI,TI必须由软
9、件清除。必须由软件清除。2、SCON的中断标志的中断标志 92022-8-105.1.3 80C51中断的控制中断的控制 CPU对中断系统所有中断以及某个中断对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器源的开放和屏蔽是由中断允许寄存器IE控制的。控制的。一、中断允许控制一、中断允许控制EX0(IE.0),外部中断,外部中断0允许位;允许位;ET0(IE.1),定时,定时/计数器计数器T0中断允许位;中断允许位;EX1(IE.2),外部中断,外部中断0允许位;允许位;ET1(IE.3),定时,定时/计数器计数器T1中断允许位;中断允许位;ES(IE.4),串行口中断允许位;,串
10、行口中断允许位;EA(IE.7),CPU中断允许(总允许)位中断允许(总允许)位。102022-8-105.1.3 80C51中断的控制中断的控制二、中断优先级控制二、中断优先级控制 80C51单片机有两个中断优先级,即可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断优先级寄存器单片机有两个中断优先级,即可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断优先级寄存器IP中的相应位的状态来规定的中的相应位的状态来规定的。PX0(IP.0),外部中断),外部中断0优先级设定位;优先级设定位;PT0(IP.1),定时),定时/计数器计数器T0优先级设定位;优先级设定位;PX1(IP.2
11、),外部中断),外部中断0优先级设定位;优先级设定位;PT1(IP.3),定时),定时/计数器计数器T1优先级设定位;优先级设定位;PS(IP.4),串行口优先级设定位。),串行口优先级设定位。112022-8-105.1.3 80C51中断的控制中断的控制同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同一优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如所示:同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同一优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如所示:中断源优先级和中断程序入口 122022-8-105.1.3 80C5
12、1中断的控制中断的控制80C51单片机的中断优先级有三条原则:单片机的中断优先级有三条原则:lCPU同时接收到几个中断时,同时接收到几个中断时,首先响应优先级别最高的中断请求首先响应优先级别最高的中断请求。l正在进行的中断过程正在进行的中断过程不能被新的同级或低优先级的中断请求所中断不能被新的同级或低优先级的中断请求所中断。l正在进行的低优先级中断服务,正在进行的低优先级中断服务,能被高优先级中断请求所中断能被高优先级中断请求所中断。为了实现上述后两条原则,为了实现上述后两条原则,中断系统内部设有两个用户不能寻址的优中断系统内部设有两个用户不能寻址的优先级状态触发器先级状态触发器。其中一个置其
13、中一个置1,表示正在响应高优先级的中断,它将阻,表示正在响应高优先级的中断,它将阻断后来所有的中断请求;另一个置断后来所有的中断请求;另一个置1,表示正在响应低优先级中断,它将,表示正在响应低优先级中断,它将阻断后来所有的低优先级中断请求。阻断后来所有的低优先级中断请求。132022-8-105.2 80C51单片机中断处理过程 5.2.1 中断响应条件和时间中断响应条件和时间 一、中断响应条件一、中断响应条件 l 中断源有中断请求中断源有中断请求l此中断源的中断允许位为此中断源的中断允许位为1l CPU开中断(即开中断(即EA=1)同时满足时,同时满足时,CPU才有可能响应中断。才有可能响应
14、中断。142022-8-105.2.1 中断响应条件和时间中断响应条件和时间中断服务的进入:中断服务的进入:CPU执行程序过程中,在每个机器周期的执行程序过程中,在每个机器周期的S5P2期间,中断系统对各个中断源进行采样。期间,中断系统对各个中断源进行采样。这些采样值在下一个机器周期内按优先级和内部顺序被依次查询。这些采样值在下一个机器周期内按优先级和内部顺序被依次查询。如果某个中断标志在上一个机器周期的如果某个中断标志在上一个机器周期的S5P2时被置成了时被置成了1,那么它将于现在的查询周期中及时被发现。接着,那么它将于现在的查询周期中及时被发现。接着CPU便执行一条由中断系统提供的硬件便执
15、行一条由中断系统提供的硬件LCALL指令,转向被称作中断向量的特定地址单元,进入相应的中断服务程序。指令,转向被称作中断向量的特定地址单元,进入相应的中断服务程序。152022-8-105.2.1 中断响应条件和时间中断响应条件和时间遇以下任一条件,硬件将受阻,不产生遇以下任一条件,硬件将受阻,不产生LCALL指令:指令:CPU正在处理同级或高正在处理同级或高优先级中断;优先级中断;当前查询当前查询的机器周期的机器周期不是所执行指令的最后一个机器周期不是所执行指令的最后一个机器周期。即在完成所执行指令前,不会响应中断,从而保证指令在执行过程中不被打断;。即在完成所执行指令前,不会响应中断,从而
16、保证指令在执行过程中不被打断;正在执行正在执行的指令为的指令为RET、RETI或任何访问或任何访问IE或或IP寄存器的指令。即只有在这些指令后面至少再执行一条指令时才能接受中断请求。寄存器的指令。即只有在这些指令后面至少再执行一条指令时才能接受中断请求。若由于上述条件的阻碍中断未能得到响应,当条件消失时该中断标志却已不再有效,那么该中断将不被响应。就是说,中断标志曾经有效,但未获响应,查询过程在下个机器周期将重新进行。若由于上述条件的阻碍中断未能得到响应,当条件消失时该中断标志却已不再有效,那么该中断将不被响应。就是说,中断标志曾经有效,但未获响应,查询过程在下个机器周期将重新进行。16202
17、2-8-105.2.1 中断响应条件和时间中断响应条件和时间二、中断响应时间二、中断响应时间 若若M1周期的周期的S5P2前某中断生效,在前某中断生效,在S5P2期间其中断请求被锁存到相应的期间其中断请求被锁存到相应的标志位中去;标志位中去;M2恰逢指令的最后一个机器周期,且该指令不是恰逢指令的最后一个机器周期,且该指令不是RETI或访或访问问IE、IP的指令。于是,的指令。于是,M3和和M4便可以执行硬件便可以执行硬件LCALL指令,指令,M5周期周期将进入了中断服务程序。将进入了中断服务程序。80C51的中断响应时间(从标志置的中断响应时间(从标志置1到进入相应的中断服务),至少要到进入相
18、应的中断服务),至少要3个个完整的机器周期。完整的机器周期。172022-8-105.2.2 中断响应过程中断响应过程 v将相应的优先级状态触发器置将相应的优先级状态触发器置1(以阻断(以阻断后来的同级或低级的中断请求)。后来的同级或低级的中断请求)。v执行一条硬件执行一条硬件LCALL指令,即把程序计指令,即把程序计数器数器PC的内容压入堆栈保存,再将相应的内容压入堆栈保存,再将相应的中断服务程序的入口地址送入的中断服务程序的入口地址送入PC。v执行中断服务程序。执行中断服务程序。中断响应过程的前两步是由中断系统内部自动完成的,而中断服务程序则要由用户编写程序来完成。中断响应过程的前两步是由
19、中断系统内部自动完成的,而中断服务程序则要由用户编写程序来完成。182022-8-105.2.3 中断返回中断返回 v将中断响应时压入堆栈保存的断点地址将中断响应时压入堆栈保存的断点地址从栈顶弹出送回从栈顶弹出送回PC,CPU从原来中断的从原来中断的地方继续执行程序;地方继续执行程序;v 将相应中断优先级状态触发器清将相应中断优先级状态触发器清0,通,通知中断系统,中断服务程序已执行完毕。知中断系统,中断服务程序已执行完毕。RETI指令的具体功能是:指令的具体功能是:注意,不能用注意,不能用RET指令代替指令代替RETI指令。在中断服务程序中指令。在中断服务程序中PUSH指令与指令与POP指令
20、必须成对使用,否则不能正确返回断点指令必须成对使用,否则不能正确返回断点 。192022-8-105.2.3 中断返回中断返回若外部中断定义为若外部中断定义为电平触发方式电平触发方式,中断标志位的状态随,中断标志位的状态随CPU在每个机器周期采样到的外部中断输入引脚的电平变化而变化,这样能提高在每个机器周期采样到的外部中断输入引脚的电平变化而变化,这样能提高CPU对外部中断请求的响应速度。但外部中断源若有请求,必须把有效的对外部中断请求的响应速度。但外部中断源若有请求,必须把有效的低电平保持到请求获得响应时为止低电平保持到请求获得响应时为止,不然就会漏掉;,不然就会漏掉;而在中断服务程序结束之
21、前,中断源又必须撤消其有效的低电平而在中断服务程序结束之前,中断源又必须撤消其有效的低电平,否则中断返回之后将再次产生中断。,否则中断返回之后将再次产生中断。电平触发方式适合于外部中断输入以低电平输入且中断服务程序能清除外部中断请求源的情况。例如,并行接口芯片电平触发方式适合于外部中断输入以低电平输入且中断服务程序能清除外部中断请求源的情况。例如,并行接口芯片8255的中断请求线在接受读或写操作后即被复位,因此,以其去请求电平触发方式的中断比较方便。的中断请求线在接受读或写操作后即被复位,因此,以其去请求电平触发方式的中断比较方便。202022-8-105.2.3 中断返回中断返回若外部中断定
22、义为若外部中断定义为边沿触发边沿触发方式,在相继连续的两次采样中,一个周期采样到外部中断输入为高电平,下一个周期采样到为低电平,则在方式,在相继连续的两次采样中,一个周期采样到外部中断输入为高电平,下一个周期采样到为低电平,则在IE0或或IE1中将锁存一个逻辑中将锁存一个逻辑1。即便是。即便是CPU暂时不能响应,中断申请标志也不会丢失,直到暂时不能响应,中断申请标志也不会丢失,直到CPU响应此中断时才清零。这样,为保证下降沿能被可靠地采样到,响应此中断时才清零。这样,为保证下降沿能被可靠地采样到,外中断引脚上的高低电平(负脉冲的宽度)均至少要保持一个机器周期外中断引脚上的高低电平(负脉冲的宽度
23、)均至少要保持一个机器周期(若晶振为(若晶振为12MHz时,为时,为1微秒)。微秒)。边沿触发方式适合于以负脉冲形式输入的外部中断请求,如边沿触发方式适合于以负脉冲形式输入的外部中断请求,如ADC0809的转换结束标志信号的转换结束标志信号EOC为正脉冲,经反相后就可以作为为正脉冲,经反相后就可以作为80C51的中断输入。的中断输入。212022-8-105.2.4 中断程序举例中断程序举例 222022-8-105.2.4 中断程序举例中断程序举例ORG 0000H START:LJMP MAIN ;跳转到主程序;跳转到主程序 ORG 0003H LJMP INTO ;转向中断服务程序;转向
24、中断服务程序 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 ;存入数据存储器;存入数据
展开阅读全文