定时-计数器.ppt

上传人:rrsccc 文档编号:9226043 上传时间:2021-02-09 格式:PPT 页数:29 大小:609.50KB
返回 下载 相关 举报
定时-计数器.ppt_第1页
第1页 / 共29页
定时-计数器.ppt_第2页
第2页 / 共29页
定时-计数器.ppt_第3页
第3页 / 共29页
定时-计数器.ppt_第4页
第4页 / 共29页
定时-计数器.ppt_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《定时-计数器.ppt》由会员分享,可在线阅读,更多相关《定时-计数器.ppt(29页珍藏版)》请在三一文库上搜索。

1、单片微机原理及应用教学课件,单片微机原理及应用教学课件,2.6 定时/计数器,本讲重点: 定时器/计数器工作方式1,2的用法;,2,一、 定时器/计数器T0、T1的结构,图2.13 定时器/计数器T0、T1的结构框图,单片微机原理及应用教学课件,单片微机原理及应用教学课件,2个16位定时器/计数器 (52系列有3个16位Timer) 定时器:对片内机器时钟(周期方波)进行计数 计数器:对Tx引脚输入的负脉冲进行计数 P3.4为定时/计数器TO计数脉冲输入端; P3.5为定时/计数器T1计数脉冲输入端; P1.0为定时/计数器T2计数脉冲输入端(52子系列); P1.1为定时/计数器T2的外部控

2、制端(52子系列)。,4,二、主要特性 16位加法计数器 T1 高8位 TH1 低8位 TL1 T0 TH0 TL0 a)作计数器时 P3.4 作为 T0计数脉冲输入端 P3.5 作为 T1计数脉冲输入端,5,定时器/计数器在每个机器周期的S5P2期间采样Tx脚输入信号,若一个机器周期的采样值为1,下一个机器周期的采样值为0,则计数器加1。由于识别一个高电平到低电平的跳变需两个机器周期,所以对外部计数脉冲的频率应小于fosc/24,且高电平与低电平的延续时间均不得小于1个机器周期。,6,是工作在定时方式还是计数方式?由方式控制字TMOD来确定。 定时/计数值的大小,由程序设定初值。由于初值不同

3、,那么加法器加到某个特定值时(例如,溢出申请中断等),所需要的时间或脉冲个数不同。 加法器的值可由程序读回CPU。,单片微机原理及应用教学课件,单片微机原理及应用教学课件,GATE C / T M1 M0 GATE C / T M1 M0,2、定时器方式寄存器TMOD (89H),T1,T0,M1,M0:工作方式定义位 ( 定义4 种方式 ):,C/T :计数器/定时器选择位 = 1 外部事件计数器。对Tx引脚的负脉冲计数; = 0 片内时钟定时器。对机器周期脉冲计数定时,0 0:13位 Timer用它无益,不要记它! 0 1:16位 Timer经常用到 1 0:可自动重装的 8位 Timer

4、经常用到 1 1:T0 分为2个8位 Timer;T1 此时不工作 因为没有带来甚麽好处,几乎无用,单片微机原理及应用教学课件,单片微机原理及应用教学课件,TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0,3、定时器控制寄存器TCON (88H),TFx: Timer 0/1计数溢出标志位。 =1 计数溢出; =0 计数未满 TFx标志位可用于申请中断或供CPU查询。 在进入中断服务程序时会自动清零;但在 查询方式时必须软件清零。,TRx: Timer 0/1运行控制位。 =1 启动计数; =0 停止计数,单片微机原理及应用教学课件,单片微机原理及应用教学课件,TR0/TR1:T

5、imer0/1运行控制位: TR0/TR1 =0 时,Timer0/1停止计数 TR0/TR1 =1 时,Timer0/1启动计数,定时器T0/T1 中断申请过程, 在已经开放T0/T1中断允许且已被启动的前提下: T0/T1加满溢出时 TF0/TF1标志位自动置“1” 检测到TCON中TF0/TF1变“1”后,将自动跳转到中断服务子程序执行; TF0/TF1标志位会自动清“0”,以备下次中断申请。,定时/计数器可按片内机器周期定时,也可对由T0/T1引脚输入一个负脉冲进行加法计数,TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0,TCON (88H),单片微机原理及应用教学课件

6、,单片微机原理及应用教学课件,GATE C / T M1 M0 GATE C / T M1 M0,T1,T0,GATE门控位: Timer可由软件与硬件两者控制 GATE = 0 普通用法 Timer的启/停由软件对TRx位写“1”/“0”控制,定时器方式寄存器TMOD(续),(89H), GATE = 1 门控用法 Timer的启/停由软件对TRx位写“1”/“0” 和在INTx引脚上出现的信号的高/低共同控制,11,三、定时器/计数器0/1的四种工作方式,12,当软件使方式寄存器TMOD中M1M000时,计数器长度控制按13位工作。由TL的低5位(TL的高3位未用)和TH的8位构成13位计

7、数器(对T0、T1都适用)。,定时/计数器T1(或T0)方式0逻辑图,1.工作方式0,单片微机原理及应用教学课件,单片微机原理及应用教学课件,2.工作方式1:16位的定时/计数器,振荡器,12,TLx THx (8位) (8位),TFx,申请中断,Tx端,TRx位,GATE位,INTx端 即P3.2或P3.3,1,选 T0 方式 1 MOV TH0, #3CH ;赋初值高8位 MOV TL0, #0B0H ;赋初值低8位 SETB TR0 ;启动 T0定时 若需要定时器0产生中断还应当写如下语句: SETB ET0 ;开T0中断允许 SETB EA ;开总中断允许 以及相应的中断服务程序。,单

8、片微机原理及应用教学课件,单片微机原理及应用教学课件,3.工作方式2:8 位自动重装的定时/计数器,振荡器,12,TLx (8位),TFx,申请中断,Tx端,TRx位,GATE位,INTx端,1,见下一页 MAIN: MOV TMOD,#10H ;选T1方式1 MOV TH1, #3CH ;赋初值3CB0H=15536(只能定100mS) MOV TL1,#0B0H MOV 30H,#10 ;软件计数单元30H 初值=10 CLR F0 ;芯片复位时已经是“0”,此句可有可无 SETB ET1 ;开T1中断 SETB EA ;开总中断 SETB TR1 ;启动T1 HERE: JBC F0,T

9、IMEUP ;原地等待“1秒到”的标志 F0 AJMP HERE TIMEUP:(do something) ;定时1秒到了以后要做的事情 AJMP HERE,中断服务在主程序中,单片微机原理及应用教学课件,单片微机原理及应用教学课件,长定时举例(续):,ORG 0000H AJMP MAIN ORG 001BH AJMP TINT MAIN: TINT:DJNZ 30H,RTN ;若中断不到10次就返回 SETB F0 ;已经中断够10次了“置1”标志位 MOV 30H,#10 ;为下一个1秒定时做准备 RTN: MOV TH1,#3CH ;再赋定时100mS的初值3CB0H MOV TL1

10、,#0B0H RETI ;中断返回 END,单片微机原理及应用教学课件,单片微机原理及应用教学课件,将此例的中断服务改写在中断服务程序中:,ORG 0000H AJMP MAIN ORG 001BH AJMP TINT ;见下一页 MAIN: MOV TMOD,#10H ;选T1方式1 MOV TH1,#3CH ;赋初值3CB0H=15536(只能定100mS) MOV TL1,#0B0H MOV 30H,#10 ;软件计数单元30H 初值=10 CLR F0 ;芯片复位时已经是“0”,此句可有可无 SETB ET1 ;开T1中断 SETB EA ;开总中断 SETB TR1 ;启动T1 HE

11、RE: AJMP HERE ;原地等待中断,单片微机原理及应用教学课件,单片微机原理及应用教学课件,长定时举例(续):,ORG 0000H AJMP MAIN ORG 001BH AJMP TINT MAIN: TINT:DJNZ 30H,RTN ;若中断不到10次就返回 MOV 30H,#10 ;为下一个1秒定时做准备 (do something);定时1秒到了以后要做的事情) RTN: MOV TH1,#3CH ;再赋初值 MOV TL1,#0B0H RETI ;中断返回 END,中断服务,单片微机原理及应用教学课件,单片微机原理及应用教学课件,定时器小结: (2个16位加法计数器),运行/停止由TRx位控制,(当GATE=1时: 由TRx位和Tx引脚上的信号共同控制),工作方式由TMOD决定; 计数/定时由C/T位决定 工作方式0(13位) 永远不用 工作方式3(T0拆为双8位) 几乎无用 工作方式1(16位) 经常用到 工作方式2(8位自动重装) 经常用到,从初值按机器周期或外部脉冲递加,溢出位 TFx申请中断;中断允许由ETx位和EA位控制,,单片微机原理及应用教学课件,单片微机原理及应用教学课件,OVER !,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1