6定时器及应用.ppt

§ 6.3 定时器的 4 种模式及应用 ( 2 )模式 1 应用举例(例 6-4 ) 源程序清单: MOV TMOD,#10H ;设置 T1 为模式 1 SETB TR1 ;启动定时 LOOP : MOV TH1,#0D8H ;送初值 MOV TL1,#0F0H JNB TF1 , $ ;查询定时时间到否 CLR TF1 ;产生溢出,清标志位 CPL P1.1 ; P1.1 取反输出 SJMP LOOP ;重复循环 § 6.3 定时器的 4 种模式及应用 3 、模式 2 及应用 ( 1 )模式 2 的逻辑电路结构 图 6-7 T0 (或 T1 )模式 2 结构- 8 位计数器 § 6.3 定时器的 4 种模式及应用 3 、模式 2 及应用 ( 1 )模式 2 的逻辑电路结构 ? TL0 计数溢出时,不仅使溢出中断标志位 TF0 置 1 , 而且还自动把 TH0 中的内容 重新装载到 TL0 中。 ? 用 TL0 用作 8 位计数器, TH0 用以保存初值。 § 6.3 定时器的 4 种模式及应用 3 、模式 2 及应用 ( 2 )模式 2 的工作特点 ? 该模式把 TL0(TL1) 配置成一个可以自动重装载的 8 位 定时器 / 计数器; ? 在程序初始化时, TL0 和 TH0 由软件赋予相同的初值 ; ? 用于定时工作方式时,定时时间为: t=(2 - TH0 初值 ) ×振荡周期× 12 8 § 6.3 定时器的 4 种模式及应用 3 、模式 2 及应用 ( 2 )模式 2 的工作特点 ? 用于计数工作方式时,计数长度最大为: 2 =256 (个 外部脉冲); ? 该模式可省去软件中重装常数的语句,并可产生相 8 当精确的定时时间,适合于作串行口波特率发生器。 § 6.3 定时器的 4 种模式及应用 ( 3 )模式 2 应用举例(例 6-2 ) 当 例 6-2 : P3.4 引脚上的电平发生负跳变时, 从 P1.0 输 出一个 500μs 的同步脉冲。请编程序实现该功 能。查询方式, f osc =6MHz 。 解: ( 1 )模式选择 选 T0 为模式 2 ,外部事件计数方式。 § 6.3 定时器的 4 种模式及应用 ? 当 P3.4 引脚上的电平发生负跳变时, T0 计数器加 1 , 溢出标志 TF0 置 1 ; ? 然后改变 T0 为 500μs 定时工作方式,并使 P1.0 输出由 1 变为 0 。 ? T0 定时到产生溢出,使 P1.0 输出恢复高电平, T0 又 恢复外部事件计数方式。 图 6-9 功能描述 § 6.3 定时器的 4 种模式及应用 ( 2 )计算初值 ? T0 工作在 外部事件计数方式 ,当计数到 2 时,再加 1 计数器就会溢出。设计数初值为 X ,当再出现一次外 部事件时,计数器溢出。 8 则 : X+1=2 8 X= 28 - 1=0FFH ? T0 工作在 定时工作方式 ,设晶振频率为 6MHz , 500μs 相当于 250 个机器周期。 因此,初值 X 为 : ( 2 - X )× 2μs=500μs X= 6=06H 8 § 6.3 定时器的 4 种模式及应用 ( 3 )程序清单 START : MOV TMOD,#06 ; 设置 T0 为模式 2, 外部计数方式 MOV TL0,#0FFH ; T0 计数器初值 MOV TH0,#0FFH SETB TR0

文档评论(0)

1亿VIP精品文档

相关文档