单片机课件-第六章定时器

上传人:仙*** 文档编号:241996858 上传时间:2024-08-09 格式:PPT 页数:31 大小:1.01MB
返回 下载 相关 举报
单片机课件-第六章定时器_第1页
第1页 / 共31页
单片机课件-第六章定时器_第2页
第2页 / 共31页
单片机课件-第六章定时器_第3页
第3页 / 共31页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,下一页,上一页,第六章 定时器及应用,6.1,定时器概述,6.2,定时器的控制,6.3,定时器的四种方式及应用,6.1,定时器概述,一、定时,/,计数器结构,返回,控制信号,振荡器,12,加,1,计数器,TFx,中断,Tx,端,C/T=0,C/T=1,P3.4,(,P3.5,),二、工作原理,1,、定时功能,2.,计数功能,对内部计数脉冲进行计数,定时时间:,T,C,=,所计脉冲数,T,P,=(2,n,-,计数器初值,)T,P,对外部计数脉冲进行计数,T0,(,P3.4,),T1,(,P3.5,),T,计,2T,P,f,计,f,OSC,/24,图片,24T,OSC,24/f,OSC,8051,定时器结构,内部总线,工作方式,TH1,TL1,TH0,TL0,TCON,TMOD,定时器,T1,定时器,T0,微处,理器,溢出,启动,溢出,启动,工作方式,中断,一,.,定时器方式控制器,TMOD,(,89H,),定时器,T,1,定时器,T,0,GATE,:门控位,GATE=,0,以运行控制位,TR,0,(TR,1,),启动定,/,计,1,以外中断请求信号,INT,0,(INT,1,),启动定,/,计,0,定时方式,1,计数方式,TMOD,GATE,M1,M1,GATE,M0,M0,C/T,C/T,C/T,:定时方式,/,计数方式的选择位,C/T=,6.2,定时器的控制,M1 M0,:工作模式选择位,0 0,模式,0 13,位计数器,0 1,模式,1 16,位计数器,1,0,模式,2,可自动重装初值的,8,位计数器,1 1,模式,3,定时器,0:,分成,2,个,8,位计数器,定时器,1,:停止工作,定时,/,计数器定时、计数范围,计数范围,:,定时时间,:定时状态:,Tc=,定时范围,:,最大定时时间,:,(n=13,16,8),n,计数状态:,Tc=,(,2 -,初值),T,计,设,fosc=6MHZ,,工作在定时状态,最小定时时间:,方式,1,方式,2,,,3,n=16 n=8,Tc,min,=,T,P,131ms 512us,n,Tc,max,=2 T,P,(,2 -,初值),T,P,n,n,12,(,Tc,),下一页,上一页,n,2,(2,1),T,P=,n,一、定时控制寄存器,TCON,(,88H,),TCON,TF,1,TR,1,TF,0,TR,0,TR,0,(,TR,1,),定时器运行控制位,TF,0,(,TF,1,):,硬件置,1,中断,方式,,硬件,清零,查询,方式,,软件,清零,TR,0,(,TR,1,),=,1,启动定时,/,计数器工作,0,停止定时,/,计数器工作,图片,继续,定时器溢出中断标志位,外中断,标志位,触发,触发标志位,标志位,0:INT,0,电平触发,1:INT,0,负边沿触发,外中断标志位,0:,硬件复位,1:INT,0,上有中断,0:INT,1,电平触发,1:INT,1,负边沿触发,0:,硬件复位,1:INT,1,上有中断,T1,中断,硬件复位:,0,T1,溢出中断:,1,T1,启停位,T0,启停位,停,T1,计数:,0,启,T1,计数:,1,T0,中断标志位,硬件复位:,0,T0,溢出中断:,1,停,T0,计数:,0,启,T0,计数:,1,定时器控制寄存器,TCON,各位定义,标志位,位地址,TCON,TF1,TR1,TF0,TR0,IE1,IT1,IE0,IT0,8F,8E,8D,8C,8B,8A,89,88,返回,6.3,定时器的四种方式及应用,GATE,=,1,启动定,/,计,0,停止定,/,计,0,封锁或门,与门打开,,TRx=,0,停止定,/,计,1,启动定,/,计,1,且,TRx=1,时,,,INTx =,计数脉冲输入,TF0,1,1,&,C/T=,1,振荡器,1/12,C/T=,0,TL0 TH0,8,位,8,位,定时器,计数器,T0,TR0,GATE,INT0,16,位计数器,6.3.1,方式,1,及应用,16,位计数结构,M1 M0=0 1 THx,(,8,位),+TLx,(,8,位),定时,/,计数器的应用,一、定时,/,计数器的初始化步骤,写,TMOD,,设定工作方式,设置计数器初值,写,IE,,开放相应中断,写,TCON,,启动定时器,MOV TMOD,,,#,方式字,MOV THx,,,#X,H,MOV TLx,,,#X,L,SETB EA,SETB ETx,SETB TRx,查询方式编程,该步省略,二,、,定时,/,计数器的初值的计算,定时状态,:,T,C,=,计数器初值,=,设计数器位数为,n,,,n,13,,,16,,,8,要求定时时间为,Tc,,机器周期为,Tp,n,(,2,计数器初值),T,P,T,C,T,P,n,2,计数状态,:,T,C,=,计数器初值,=,n,(,2,计数器初值),T,计,T,C,T,计,n,2,例,1,已知:要求定时时间,T,C,=1ms fosc=6MHZ ,求计数器初值,1ms,2us,初值,X=2 -=,16,T,P,=2us,65036=FE0CH,T,H,X,FEH,T,L,X,0CH,方式,1:,计数器初值,X=,T,C,T,P,16,2,例,2.,选择定时器,0,方式,1,,在,P1.1,输出周期为,2ms,的方波,晶振,fosc=6MHZ,。,采用方式,1,初值,=2,16,1ms/2s,FE0CH,2ms,ORG0000H,AJMPMAIN,ORG000BH,;,T0,中断硬件入口地址,AJMPPT0INT,;跳到中断服务程序,ORG0030H,MAIN,:,MOVTMOD,,,#01H,;中断方式,MOVTL0,,,#0CH,;计数初值,MOVTH0,,,#0FEH,SETBEA,;开放总中断,SETBET0,;开放,T0,中断,SETBTR0,;启动定时器,HERE,:,SJMPHERE,;等待中断,相当于执行其它任务,PT0INT,:,MOVTL0,,,#00CH,;中断服务程序;置初值,MOVTH0,,,#0FEH,CPLP1.,1,;取反,产生方波,RETI,;中断返回,下一页,上一页,2.,采用查询方式,:,ORG 0100H,MN:MOV TMOD,#01H,MOV TL0,#0CH,MOV TH0,#0FEH,SETB TR0,L1:JBC TF0,,,L2,SJMP L1,L2:MOV TL0,#0CH,MOV TH0,#0FEH,CPL P1.1,SJMP L1,END,6.3.2,方式,2,及应用,M1 M0=1 0 TLx8,位计数器,THx,预置寄存器,自动重装初值的,8,位,计,数器,T0(T1),方式,2,结构,8,位计数器,例,3.,用定时器,1,采用方式,2,在,P1.0,引脚输出周期为,200,s,方波,,晶振,fosc=6MHZ,。,解:,TMOD=20H,定时,100,s,,,ORG 0000H,AJMP MN,ORG 001BH,ORG 003FH,MAIN:,MOV TMOD,#20H,MOV TL1,#0CEH,MOV TH1,#0CEH,SETB EA,SETB ET1,SETB TR1,SJMP$,初值,=2,8,100,s,/2,s=206,CEH,CPL P1.0,RETI,1.,采用中断方式,:,2.,采用,查询方式:,ORG 0100H,MAIN:MOV IE,,,#00H,MOV TMOD,,,#20H,MOV TL1,,,#0CEH,MOV TH1,,,#0CEH,SETB TR1,L1:JBC TF1,,,L2,SJMP L1,L2:CPL P1.0,SJMP L1,END,例,4,当,P3.4,引脚上的电平发生负跳变时,从,P1.0,输出一个,500s,的同步脉冲,请编程实现该功能。已知,fosc=6MHZ,T0,:方式,2,,外部计数工作方式,,初值,0FFH,T0,:方式,2,,定时工作方式,,初值,2,8,Tc/Tp,=256,500/2,=06H,MOV TH0,,,06H,MOV TL0,,,06H,CLR P1.0,SETB TR0,LOOP2,:,JBC TF0,,,PTFO2,SJMP LOOP2,PTFO2,:,SETB P1.0,CLR TR0,SJMP START,ORG 0000H,START,:,MOV TMOD,,,06H,MOV TH0,,,0FFH,MOV TL0,,,0FFH,SETB TR0,LOOP1,:,JBC TF0,,,PTFO1,SJMP LOOP1,PTFO1,:,CLR TR0,MOV TMOD,,,02H,TMOD,0 0 0 0 0 1 1 0=06H,TMOD=0 0 0 0 0 0 1 0=02H,6.3.3,方式,3,及应用,M1 M0=1 1,1,、方式,3,下的,T0:,两个独立的,8,位计数器,TL0,(,8,位定时,/,计数器):使用原,T0,的各控制位,TR0,,,TF0,等,TH0,(,8,位定时器):占用,T1,的控制位,TR1,,,TF1,,其启动和关闭仅受,TR1,控制,T0,模式,3,结构,2,、方式,3,下的,T1,T 1,无方式,3,,在方式,3,下停止工作,相当于,TR1=0,在,T0,用作方式,3,时,,T1,仍可设置为模式,0,2,(,a,),T1,模式,0,(或模式,1,),(,b,),T1,模式,2,T0,模式,3,时,T1,的结构,例,5,门控位的应用,.,利用,T1,门控位测试,INT1,引脚上出现的正脉冲的宽度,并以机器周期数的形式显示在显示器上。,根据要求可这样设计程序:,一旦,INT1,(,P3,.,3,)引脚上出现高电平即开始计数,直至出现低电平,停止计数,然后读取,T0,的计数值(,即,正脉冲的时间内包含机器脉冲个数,)并显示。,将,T1,设定为方式,1,,,GATE,设为,1,,,置,TR1,为,1,。,ORG 1000H,START,:,MOV TMOD,,,#90H,;,T1,工作于方式,1,定 时,GATE=1,MOV TL1,,,#00H,MOV TH1,,,#00H,JB P3.3,,,$;,等待,INT1*,低电平,若为高,则循环,SETB TR1 ;,若,INT1*,为低,则启动,T1,JNB P3.3,,,$;,等待,INT1*,升高,若为低,则循环,JB P3.3,,,$;,等待,INT1*,降低,CLR TR1 ;,关,T1,MOV A,,,TL1,;,T1,计数值送,A,MOV B,,,TH1,将,A,中的,T1,计数,值送显示缓冲区,转换成显示的代码,执行程序,使,INT1*,引脚上出现的正脉冲宽度以机器周期数的形式显示在显示器上。,例,6,设用户已使用两个外部中断源,定时器,1,工作在方式,2,,作串行口波特率发生器用,现要求增加一个外部中断源,并由,P1.0,引脚输出一个,5KHz,的方波。已知,fosc=12MHz,T0,:方式,3,,,TL0,外部计数工作方式,,TL0,初值设置为:,计数器初值,MOV TCON,,,55H,MOV IE,,,9FH,INTT0:MOV TL0,,,0FFH,中断处理,RETI,INTT2,:,MOV TH0,,,9CH,CPL P1.0,RETI,T0,(P3.4,),作附加的外部中断输入端,TH0,定时工作方式,在,P1.0,引脚产生,5,KHz,方波信号,周期为,1/5KHz=200,s,0FFH,2,8,Tc/Tp,=256,100/1,=9CH,ORG 0000H,AJMP START,ORG 000BH,AJMP INTT0,ORG 001BH,AJMP INTT1,START,:,MOV TMOD,,,27H,MOV TL0,,,0FFH,MOV TH0,,,9CH,MOV TH1,,,data,MOV TL1,,,data,思考题,一个定时器的定时时间有限,如何实现较长时间的定时?,实时时钟的设计,1,实时时钟实现的基本思想,如何获得,1,秒的定时,:,可把,定时时间定为,100ms,,采用中断方式进行溢出次数的累计,计满,10,次,即得到秒计时。,片内,RAM,中规定,3,个单元,作,为秒、分、时单元,,具体安排如下:,42H,:,“,秒,”,单元;,41H,:,“,分,”,单元;,40H,:,“,时,”,单元,从秒到分,从分到时是通过软件累加并进行比较的方法来实现的。,2,程序设计,(,1,)主程序的设计流程如图所示。,(,2,)中断服务程序的设计,中断服务程序的主要功能是实现秒、分、时的计时处理。参考程序略。,运行中读定时器,/,计数器,在读取运行中的定时器,/,计数器时,,需注意:若恰好出现,TLX,溢出向,THX,进位的情况,则读得的(,TLX,)值就完全不对。,同样,先读(,THX,)再读(,TLX,)也可能出错。,方法:先读(,THX,),后读(,TLX,),再读(,THX,)。若两次读得(,THX,)相同,则读的内容正确。,若前后两次读的(,THX,)有变化,则再重复上述过程,这次重复读得的内容就应是正确的。下面是有关的程序,读得的(,TH0,)和(,TL0,)放置在,R1,和,R0,内。,RDTIME:MOV A,TH0,;,读,TH0,MOV R0,TL0,;,读,TL0,CJNE A,TH0,RDTIME,;,比较,2,次读得的,TH0,不相等则重复读,MOV R1,A,;,(,TH0,)送入,R1,中,RET,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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


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

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


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