当前位置:文档之家› 定时器0

定时器0

《单片机原理与应用技术》教学课件
定时器方式寄存器TMOD(续)
GATE C / T T1 M1 M0 GATE C / T T0 M1 M0
(89H)
GATE门控位: Timer可由软件与硬件两者控制 GATE = 0 ——普通用法 Timer的启/停由软件对TRx位写“1”/“0” 控制 GATE = 1 ——门控用法 Timer的启/停由软件对TRx位写“1”/“0” 和在INTx引脚上出现的信号的高/低共同控制
《单片机原理与应用技术》教学课件
定时器(方式1)应用程序举例:
例:要求对T0产生100mS定时进行初始化。 (晶振=6MHz) 分析:已知fosc = 6MHz 则: (机器周期) 1Tm=12Tc=12/6MHz=2S 100mS÷2 S = 50000 16位定时器最大数值为: 216 = 65536 (=0FFFFH+1) 故选择方式1工作可以满足要求。 计算初值:65536-50000=15536=3CB0H
《单片机原理与应用技术》教学课件
定时器T0/T1 中断申请过程
定时/计数器可按片内机器周期定时,也可对由 T0/T1引脚输入一个负脉冲进行加法计数
在已经开放T0/T1中断允许且已被启动的前提下: T0/T1加满溢出时 TF0/TF1标志位自动置“1” 检测到TCON中TF0/TF1变“1”后,将产生指令: LCALL 000BH/LCALL 001BH 执行中断服务程序 TF0/TF1标志位会自动清“0”,以备下次中断申请。
《单片机原理与应用技术》教学课件
由分析得知:T0选择方式1,初值=3CB0H
定时器方式 寄存器TMOD
GATE C / T M1 M0 GATE C / T M1 M0
X
X
X
X
0
0
0
1
初始化:MOV TMOD,#01H ;选 T0 方式 1 MOV TH0, #3CH ;赋初值高8位 MOV TL0, #0B0H ;赋初值低8位 SETB TR0 ;启动 T0定时 若需要定时器0产生中断还应当写如下语句: SETB ET0 ;开T0中断允许 SETB EA ;开总中断允许 以及相应的中断服务程序。
P.116
IE0 IT0
TF0/TF1: Timer0/1计数溢出标志位。 =1 计数溢出; =0 计数未满 TF0/TF1标志位可用于申请中断或供CPU查询。 在进入中断服务程序时会自动清零;但在 查询方式时必须软件清零。
TR0/TR1: Timer0/1运行控制位。 =1 启动计数; =0 停止计数
《单片机原理与应用技术》教学课件
定时计数器的初始化

1、初始化的步骤:
1 )确定定时器/ 计数器的工作方式、操作模式、启动 控制方式,并利用传送指令将其写入 TMOD寄存器。
2)设置定时器/计数器的初值。直接将初值写入TH0、 TL0或TH1、TL1中。
3)根据要求考虑是否采用中断方式,直接对IE位赋值。 开放中断时,对应位置1;采用程序查询方式时,IE 中对应位应清0进行中断屏蔽。
《单片机原理与应用技术》教学课件
定时器结构与工作方式
工作方式1:——16位的定时/计数器
振荡器 12 C/T=0 TLx THx (8位) (8位) TFx 申请 中断
Tx端 TRx位 GATE 位 INTx端
≥1
或门
C/T=1
&
与门
控制 =1 开关接通
《单片机原理与应用技术》教学课件
工作方式1 的编程要点: THx/TLx赋初值:THx赋高8位,TLx赋低8位 TMOD选方式: 写“M1,M0”=01 b 选 方式1 若不用门控位,直接用软件写TRx控制启/停 若使用门控位,先置位TRx,然后由INTx端 的高/低电平来控制其启/停
《单片机原理与应用技术》教学课件
工作方式2:——8 位自动/T=0
Tx端 TRx位 GATE 位 INTx端
≥1
C/T=1 控制 =1 开关接通
TLx (8位)
TFx
申请 中断
&
与门
THx (8位)
溢 出 位 门开
或门
《单片机原理与应用技术》教学课件
工作方式 2 的编程: ☞ THx/TLx赋相同初值 在TLx计数达到0FFH 再加“1”时,TL0 将溢出,进位位直接进入“TFx”去申请 中断,同时打开三态门,使THx中的值 自动重装(Copy)进TLx ☞ TMOD寄存器选方式: 写“M1,M0” = 1 0 b 选中方式2 ☞ 其他用法与各种方式1完全相同
2个16位定时器/计数器
——(52系列有3个16位Timer) 定时器:对片内机器时钟(周期方波)进行计数 计数器:对T0/T1引脚输入的负脉冲进行计数
与Timer工作有关的特殊功能寄存器:
TCON 和 TMOD
《单片机原理与应用技术》教学课件
定时器控制寄存器TCON (88H)
TF1 TR1 TF0 TR0 IE1 IT1
《单片机原理与应用技术》教学课件
定时器方式寄存器TMOD (89H)
T1
GATE C / T M1 M0 GATE C / T
T0
M1 M0
M1,M0:工作方式定义位 ( 定义4 种方式 ): 0 0:13位 Timer——用它无益,不要记它! 0 1:16位 Timer——经常用到 1 0:可自动重装的 8位 Timer——经常用到 1 1:T0 分为2个8位 Timer;T1 此时不工作 ——几乎无用 C/T :计数器/定时器选择位 = 1 外部事件计数器。对Tx引脚的负脉冲计数; = 0 片内时钟定时器。对机器周期脉冲计数定时
若要允许中断,还须先置位ETx、EA等中断 允许控制位,并编写中断服务程序 若不用中断,可查询“计数溢出标志TFx” 的方式工作,但溢出标志TFx须软件清0
《单片机原理与应用技术》教学课件
定时器(方式1)应用程序举例:
例:若晶振频率为6MHz,计算单片机的最小 与最大定时时间: 分析:已知fosc = 6MHz 则: (机器周期)1Tm=12Tc=12/6MHz=2S 粗略地说:Tmin 2S 16位定时器最大数值为: 216=65536=0FFFFH+1 故选择方式 1 工作可以得到: Tmax = 655362 = 131072S=131.072mS
相关主题