欢迎来到天天文库
浏览记录
ID:62265114
大小:1.24 MB
页数:70页
时间:2021-04-24
《最新单片机第5章---定时器..课件PPT.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、单片机第5章---定时器..在计算机控制领域,如检测、控制及智能仪器等,常常需要实时时钟来实现定时或延时控制,也常常要对外部事件进行计数。MCS-51单片机中就有两个定时/计数器,可以实现这些功能。5.1任务4(T4):信号灯的控制一、要求按照图任务1中图1.7的电路,不用任务2中的软件延时,也不用任务3中的按键,而用其它硬件方式来完成发光二极管的闪烁,间隔时间为100ms(假如使用的晶振频率为6MHz)。二、任务分析与实现在计算机中也经常要用到定时。定时的方法一般有2种:1、采用软件定时软件定时是通过反复地执行一个循环程序以进行时间的延迟,特点是时间精确,不
2、需外加硬件电路。2个16位定时器/计数器——(52系列有3个16位Timer)定时器:对片内机器时钟(周期方波)进行计数计数器:对Tx引脚输入的负脉冲进行计数T0引脚输入端:P3.4T1引脚输入端:P3.5与Timer工作有关的特殊功能寄存器:TCON和TMOD单片机定时/计数器的结构和原理Timer的2个特殊功能寄存器(TCON,TMOD)TF1TR1TF0TR0IE1IT1IE0IT0定时器控制寄存器TCON(88H)TFx:Timer0/1计数溢出标志位。=1计数溢出;=0计数未满TFx标志位可用于申请中断或供CPU查询。在进入中断服务程序时会自动清零;
3、但在查询方式时必须软件清零。TRx:Timer0/1运行控制位。=1启动计数;=0停止计数TR0/TR1:Timer0/1运行控制位:TR0/TR1=0时,Timer0/1停止计数TR0/TR1=1时,Timer0/1启动计数定时器T0/T1中断申请过程在已经开放T0/T1中断允许且已被启动的前提下:T0/T1加满溢出时TF0/TF1标志位自动置“1”检测到TCON中TF0/TF1变“1”后,将产生指令:LCALL000BH/LCALL001BH执行中断服务程序,TF0/TF1标志位会自动清“0”,以备下次中断申请。定时/计数器可按片内机器周期定时,也
4、可对由T0/T1引脚输入一个负脉冲进行加法计数TF1TR1TF0TR0IE1IT1IE0IT0TCON(88H)GATEC/TM1M0GATEC/TM1M0定时器方式寄存器TMOD(89H)T1T0M1,M0:工作方式定义位(定义4种方式):C/T:计数器/定时器选择位=1外部事件计数器。对Tx引脚的负脉冲计数;=0片内时钟定时器。对机器周期脉冲计数定时00:13位Timer——用它无益,不要记它!01:16位Timer——经常用到10:可自动重装的8位Timer——经常用到11:T0分为2个8位Timer;T1此时不工作——因为没有带来甚麽好处,几乎无用GA
5、TEC/TM1M0GATEC/TM1M0T1T0GATE门控位:Timer可由软件与硬件两者控制GATE=0——普通用法Timer的启/停由软件对TRx位写“1”/“0”控制定时器方式寄存器TMOD(续)(89H)GATE=1——门控用法Timer的启/停由软件对TRx位写“1”/“0”和在INTx引脚上出现的信号的高/低共同控制定时器结构与工作方式工作方式1:——16位的定时/计数器振荡器12TLxTHx(8位)(8位)TFx申请中断Tx端TRx位GATE位INTx端≥1&C/T=0C/T=1控制=1开关接通或门与门THx/TLx赋初值:THx赋高8
6、位,TLx赋低8位工作方式1的编程要点:TMOD选方式:写“M1,M0”=01,选方式1若不用门控位,直接用软件写TRx控制启/停若使用门控位,先置位TRx,然后由INTx端的高/低电平来控制其启/停若要允许中断,还须先置位ETx、EA等中断允许控制位,并编写中断服务程序若不用中断,可查询“计数溢出标志TFx”的方式工作,但溢出标志TFx须软件清0由于在方式1工作模式下,TLx、THx计数寄存器各使用8位,而28=256,我们要把计数起点的值除以256,将余数放入TLx计数寄存器,将商数放入THx计数寄存器。例如要使用Timer0计数50000,则填
7、入计数寄存器的指令如下:MOVTL0,#(65536-50000)MOD256;取8位的余数MOVTH0,#(65536-50000)/256;取8位的商数TL0=B0HTH0=3CHT0=65536-50000=3CB0H定时器(方式1)应用程序举例:分析:已知fosc=6MHz则:(振荡周期)1Tc=1/6MHz(机器周期)1Tm=12Tc=12/6MHz=2S粗略地说:Tmin2S16位定时器最大数值为:216=65536=0FFFFH+1故选择方式1工作可以得到:Tmax=655362=131072S=131.072mS例:若晶振频率为6
8、MHz,计算单片机的最小与最大定时时间
此文档下载收益归作者所有