《定时与中断系统》PPT课件.ppt
《《定时与中断系统》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《定时与中断系统》PPT课件.ppt(57页珍藏版)》请在三一办公上搜索。
1、本章内容中断系统定时/计数器C语言的函数,第4章 定时与中断系统,4.3中断系统,CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生);CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断。,4.3.1 什么是中断,MCS-51单片机的中断系统结构,执行主程序,主程序,继续执行主程序,断点,执行中断处理程序,引起CPU中断的根源,称为中断源。中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断
2、点),称为中断返回。实现上述中断功能的部件称为中断系统(中断机构)。,随着计算机技术的应用,人们发现中断技术不仅解决了快速主机与慢速I/O设备的数据传送问题,而且还具有如下优点:,分时操作。CPU可以分时为多个I/O设备服务,提高了计算机的利用率;,实时响应。CPU能够及时处理应用系统的随机事件,系统的实时性大大增强;,可靠性高。CPU具有处理设备故障及掉电等突发性事件能力,从而使系统可靠性提高。,4.3.2 MCS-51中断系统的结构 80C51的中断系统有5个中断源(8052有 6个),2个优先级,可实现二级中断嵌套。一、中断源,1、INT0(P3.2)可由IT0(TCON.0)选择其为低
3、电平有效还是下降沿有效。当CPU检测到P3.2引脚上出现有效的中断信号时,中断标志IE0(TCON.1)置1,向CPU申请中断。,4.3.3 中断有关寄存器一、中断源,2、INT1(P3.3)可由IT1(TCON.2)选择其为低电平有效还是下降沿有效。当CPU检测到P3.3引脚上出现有效的中断信号时,中断标志IE1(TCON.3)置1,向CPU申请中断。,3、T0(P3.4),片内定时/计数器T0溢出中断请求标志。当定时/计数器T0发生溢出时,置位TF0,并向CPU申请中断。,返回,4、T1(P3.5),片内定时/计数器T1溢出中断请求标志。当定时/计数器T1发生溢出时,置位TF1,并向CPU
4、申请中断。,5、RX(P3.0)或TX(P3.1),串行口中断请求标志。当串行口接收完一帧串行数据时置位RI或当串行口发送完一帧串行数据时置位TI,向CPU申请中断。,二、中断请求标志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溢出中断请求标
5、志位。,2、SCON的中断标志,RI(SCON.0):串行口接收中断标志位。当允许串行口接收数据时,每接收完一个串行帧,由硬件置位RI。注意,RI必须由软件清除。TI(SCON.1):串行口发送中断标志位。当CPU将一个发送数据写入串行口发送缓冲器时,就启动了发送过程。每发送完一个串行帧,由硬件置位TI。CPU响应中断时,不能自动清除TI,TI必须由软件清除。当中断源需要向CPU请求中断时,相应中断标志位由硬件自动置1。,三、中断的开放和禁止 CPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。,EX0(IE.0),外部中断0允许位;ET0(IE.1),定时/计数器
6、T0中断允许位;EX1(IE.2),外部中断0允许位;ET1(IE.3),定时/计数器T1中断允许位;ES(IE.4),串行口中断允许位;EA(IE.7),CPU中断允许(总允许)位。,80C51单片机有两个中断优先级,即可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断优先级寄存器IP中的相应位的状态来规定的。,PX0(IP.0),外部中断0优先级设定位;PT0(IP.1),定时/计数器T0优先级设定位;PX1(IP.2),外部中断0优先级设定位;PT1(IP.3),定时/计数器T1优先级设定位;PS(IP.4),串行口优先级设定位;PT2(IP.5),定时/计数器T2优先级设定位。,
7、同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同一优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如所示:,80C51单片机的中断优先级有三条原则:,CPU同时接收到几个中断时,首先响应优先级别最高的中断请求。正在进行的中断过程不能被新的同级或低优先级的中断请求所中断。正在进行的低优先级中断服务,能被高优先级中断请求所中断。,为了实现上述后两条原则,中断系统内部设有两个用户不能寻址的优先级状态触发器。其中一个置1,表示正在响应高优先级的中断,它将阻断后来所有的中断请求;另一个置1,表示正在响应低优先级中断,它将阻断后来所有的低优先级中断请求。,4.3.4 中断处理
8、过程,中断响应条件:中断源发出中断请求;此中断源的中断允许位为1;CPU开中断(即EA=1)。以上三条同时满足时,CPU才有可能响应中断。,中断函数的完整语法:返回值 函数名(【参数】)interrupt n using n中断处理程序,中断编程:,利用INT1作为外部中断输入线,每按一次开关K使P1口处的8个LED轮流点亮一次。,#include#includevoid main()EA=1;EX1=1;IT1=1;P1=0 xfe;while(1);void int1()interrupt 2 using 1 P1=_crol_(P1,1);,任务9:可控霓虹灯控制正常情况下8个霓虹灯依次
9、顺序点亮,循环显示,时间间隔为1S。当按下控制按钮后,8个霓虹灯同时亮灭一次,时间间隔为0.5S。,主程序:8个霓虹灯依次循环点亮,时间间隔为1S,中断处理程序:8个霓虹灯同时亮灭一次,时间间隔为0.5S,延时子函数,1、主程序:T0初始化,开中断。8个霓虹灯依次循环点亮,时间间隔为1S。,2、外部中断INT0中断处理程序:8个霓虹灯同时亮灭一次,时间间隔为0.5S,3、定时/计数器T0中断处理程序:50ms定时时间到,num+;,#include#define uchar unsigned charuchar num;void main()uchar num1,w;TMOD=0 x01;TH
10、0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;EX0=1;IT0=1;PT0=1;TR0=1;while(1)w=0 x01;for(num1=0;num18;num1+)P1=w;w=1;while(num!=20);num=0;,void int0()interrupt 0 using 1uchar tempt1,tempt2;tempt1=num;tempt2=P1;num=0;P1=0 x00;while(num!=10);P1=0 xff;while(num!=20);num=tempt1;P1=tempt2;void ti
11、mer0()interrupt 1 using 0num+;TH0=(65536-50000)/256;TL0=(65536-50000)%256;,4.1定时器/计数器,实现定时功能,比较方便的办法是利用单片机内部的定时/计数器。也可以采用下面三种方法:,软件定时:软件定时不占用硬件资源,但占用了CPU时间,降低了CPU的利用率。采用时基电路定时:例如采用555电路,外接必要的元器件(电阻和电容),即可构成硬件定时电路。但在硬件连接好以后,定时值与定时范围不能由软件进行控制和修改,即不可编程。采用可编程芯片定时:这种定时芯片的定时值及定时范围很容易用软件来确定和修改,此种芯片定时功能强,使用
12、灵活。在单片机的定时/计数器不够用时,可以考虑进行扩展。,4.1.1 定时/计数器的结构和工作原理,一、定时/计数器的结构 定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。,二、定时/计数器的工作原理,加1计数器输入的计数脉冲有两个来源,一个是由系统的时钟振荡器输出脉冲经12分频后送来;一个是T0或T1引脚输入的外部脉冲源。每来一个脉冲计数器加1,当加到计数器为全1时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向
13、CPU发出中断请求(定时/计数器中断允许时)。如果定时/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。可见,由溢出时计数器的值减去计数初值才是加1计数器的计数值。,设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。计数值N乘以机器周期Tcy就是定时时间t。,设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。在每个机器周期的S5P2期间采样T0、T1引脚电平。当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数
14、器。由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2 ms。,定时/计数器的控制,80C51单片机定时/计数器的工作由两个特殊功能寄存器控制。TMOD用于设置其工作方式;TCON用于控制其启动和中断申请。一、工作方式寄存器TMOD 工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。其格式如下:,GATE:门控位。GATE0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;GATA1时,要用软件使TR0或TR1为
15、1,同时外部中断引脚或也为高电平时,才能启动定时/计数器工作。即此时定时器的启动条件,加上了或引脚为高电平这一条件。:定时/计数模式选择位。0为定时模式;=1为计数模式。M1M0:工作方式设置位。定时/计数器有四种工作方式,由M1M0进行设置。,二、控制寄存器TCON TCON的低4位用于控制外部中断,已在前面介绍。TCON的高4位用于控制定时/计数器的启动和中断申请。其格式如下:,TF1(TCON.7):T1溢出中断请求标志位。T1计数溢出时由硬件自动置TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可以用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 定时与中断系统 定时 中断 系统 PPT 课件
链接地址:https://www.31ppt.com/p-5493662.html