收藏 分销(赏)

第5章定时-end.ppt

上传人:二*** 文档编号:10299053 上传时间:2025-05-19 格式:PPT 页数:29 大小:1.33MB 下载积分:5 金币
下载 相关 举报
第5章定时-end.ppt_第1页
第1页 / 共29页
本文档共29页,全文阅读请下载到手机保存,查看更方便
资源描述
Slide Title,Body Text,第,5,章,定时,/,计数器与中断系统,5.1 定时/计数器结构特点及控制,5.2 中断系统结构及管理,5.3 定时/计数器及中断系统综合应,5.1 定时/计数器结构特点及控制,5.1.1 定时/计数器结构,5.1.2 定时/计数器工作方式,5.1.3 定时/计数器控制寄存器,5.1.4 定时/计数器常数的计算,返回本章首页,5.1.1 定时/计数器结构,定时/计数器简称定时器,8031单片机有2个16位的定时/计数器:定时器0(,T0),和定时器1(,T1)。,它们都有定时器或事件计数的功能,可用于定时控制、延时、对外部事件计数和检测等场合。,T0,由2个特殊功能寄存器,TH0,和,TL0,构成,,T1,则由,TH1,和,TL1,构成。作计数器时,通过引脚,T,0,(P,3.4,),和,T,1,(P,3.5,),对外部脉冲信号计数,当输入脉冲信号从1到0的负跳变时,计数器就自动加1。计数的最高频率一般为振荡频率的1/24。,返回本节,5.1.2 定时/计数器工作方式,每个定时/计数器还有4种工作模式,也就是每个定时器可构成4种电路结构模式。,在模式0、1和2,,T0,和,T1,的工作模式相同,在模式3,两个定时器的模式不同。下面以,T1,为例,分述各种工作模式的特点和用法。,1模式0,图5-1 定时/计数器,T1(T0),工作模式0,2模式1,图5-2 定时/计数器,T1(T0),工作模式1,3模式2,图5-3 定时/计数器,T1(T0),工作模式2,4模式3,图5-4 定时/计数器,T1(T0),工作模式3,返回本节,5.1.3 定时/计数器控制寄存器,定时器共有2个控制寄存器,TMOD,和,TCON,,由软件写入,TMOD,和,TCON,两个8位寄存器,设置各个定时器的操作模式和控制功能。,1工作模式控制寄存器,TMOD(89H),图5-5 定时器工作模式寄存器,TMOD,2定时器控制寄存器,TCON(88H),图5-6 定时器工作模式寄存器,TCON,返回本节,5.1.4 定时/计数器常数的计算,1计数器初值的计算,把计数器计满为零所需要的计数值设定为,C,,计数初值设定为,TC,,由此可得到公式:,TC=M-C,式中,,M,为计数器模值,该值和计数器工作方式有关。在方式0时,M,为2,13,;在方式1时,M,为2,16,;在方式2和方式3时,M,为2,8,。,2定时器初值的计算,在定时器模式下,计数器由单片机主脉冲经12分频后计数。因此,定时器定时时间,T,的公式:,T=(M-TC)T,计数,上式也可写成:,TC=M-T/T,计数,式中,,M,为模值,和定时器的工作方式有关;,T,计数,是单片机振荡周期,T,CLK,的12倍;,TC,为定时器的定时初值。,返回本节,5.2 中断系统结构及管理,5.2.1 中断请求与控制,5.2.2 中断系统的结构,5.2.3 中断控制,5.2.4 中断响应过程,返回本章首页,5.2.1 中断请求与控制,图5-7 中断流程,返回本节,5.2.2 中断系统的结构,1外部中断源,由,P,3.2,端口线引入,低电平或下降沿引起。,由,P,3.3,端口线引入,低电平或下降沿引起。,2内部中断源(,如图5-8所示),T,0,:,定时/计数器0中断,由,T,0,回零溢出引起。,T,1,:,定时/计数器1中断,由,T,1,回零溢出引起。,TI/RI:,串行,I/O,中断,完成一帧字符发送/接收引起。,图5-8 中断系统的结构框图,返回本节,5.2.3 中断控制,1中断允许寄存器,IE(A8H),IE,在特殊功能寄存器中,字节地址,A8H,,位地址分别是,A8HAFH。IE,控制,CPU,对中断源总的开放或禁止以及每个中断源是否允许中断。其格式如图5-9所示。,2中断优先寄存器,IP(B8H),IP,在特殊功能寄存器中,字节地址为,B8H,,位地址分别是,B8HBFH,IP,用来锁存各中断源优先级的控制位,其格式如图5-10所示。,图5-9 中断允许寄存器,IE,图5-10 中断优先寄存器,IP,返回本节,5.2.4 中断响应过程,单片机在每个机器周期的,S5P,2,期间,顺序采样每个中断源,,CPU,在下一个机器周期,S,6,期间按优先级顺序查询中断标志,如查询到某个中断标志为1,将在再下一个机器周期,S,1,期间按优先级进行中断处理。,中断得到响应后自动清除中断标志,由硬件将程序计数器,PC,内容压入堆栈保护,然后将对应的中断矢量装入程序计数器,PC,,使程序转向中断矢量地址单元中去执行相应的中断服务程序。,下列任何一种情况存在中断申请将被封锁:,(1),CPU,正在执行一个同级或高一级的中断服务程序。,(2)当前正在执行的那条指令还未执行完。,(3)当前正在执行的指令是,RETI,或对,IE,IP,寄存器进行读/写指令,执行这些指令后至少再执行一条指令才会响应中断。,返回本节,5.3 定时/计数器及中断系统综合应用,【例5.2】设,MCS-51,单片机系统时钟频率,CLK,为6,MH,Z,,,请编出利用定时/计数器,T0,在,P,1.0,引脚上产生周期为2秒,占空比为50%的方波信号的程序,(1)主程序,任务:1),T0,工作方式的设定:选择方式1(16位方式),(最大定时131,ms),2),定时常数的设定:,TC=2,16,-100ms/2s=15536=3CB0H,返回本章首页,即:,TH0,应装3,CH,TL0,应装,B0H。,3),中断管理:允许,T0,中断,开放总中断,即:,IE,应装10000010,B。,4),启动定时器,T0:SETBTR0,5),设置软件计数器初值:(如使用,R7),即,R7,应装0,AH,6),动态停机:,SJMP$,主程序如下:,MAIN:MOVTMOD,#01H;,设定,T0,为方式1,MOVTH0,#3CH;,装入定时常数高8位,MOVTL0,#0B0H;,装入定时常数低8位,MOVIE,#82H;,开放,T0,中断,SETBTR0;,启动,T0,MOVR7,#0AH;,设置软件计数器,SJMP$,(2)中断服务程序,任务:1)恢复,T0,常数;2)软件计数器减1;3)判断软件计数器是否为0。为0时,改变,P,1.0,状态,并恢复软件计数器初值;不为0时中断返回。,程序如下:,TOINT:MOVTL0,#0B0H;,恢复定时常数,MOVTH0,#3CH;DJNZR7,NEXT,CPLP1.0 MOVR7,#0AH,NEXT:RETI,完整程序如下:,ORG 0000H AJMP MAIN,ORG 000BH AJMPTOINT,ORG 0030H MAIN:MOVTMOD,#01H,MOV TH0,#3CH MOVTL0,#0B0H,MOV IE,#82H SETBTR0,MOVR7,#0AH,SJMP$,TOINT:MOVTL0,#0B0H,MOVTH0,#3CH,DJNZR7,NEXT,CPLP1.0,MOVR7,#0AH,NEXT:RETI,END,返回本节,THANK YOU VERY MUCH!,本章到此结束,,谢谢您的光临!,结束放映,返回本章首页,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 环境建筑 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服