第6章单片机的定时器计数器精品PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
* 各标志位应注意的问题
TF1位:定时器1溢出标志位。 • 当定时/计数器1溢出时,由硬件置1。
• 使用查询方式时,此位做状态位供查询,查询有效 后需由软件清零; • 使用中断方式时,此位做中断申请标志位,进入中 断服务后被硬件自动清零。
TR1位:定时器1运行位。
该位靠软件置位或清零,置位时,定时/计数器接通 工作,清零时,停止工作。
控制字10H
② 计算计数器的计数初值;
要产生500μs 的方波脉冲,只需在P1.0端以250μs为间 隔,交替输出高低电平即可实现。为此,定时间应为 250μs 。使用6MHz晶振,则一个机器周期为2μs,设待 求计数初值为X,则:
(216–X)×2×10 -6 =250×10 -6 请思考
即216–X=125
为什么?
X=216-125=10000H-7DH
=0FF83H
所以,初值为:TH1=0FFH,TL1=83H
③ 采用中断方式:编程时打开全局和局部中断。
④ 由定时器控制寄存器TCON中的TR1位控制 定时器的启动和停止。
TR1=1,启动; TR1=0,停止。
程序设计
ORG 0000H LJMP MAIN ORG 001BH LJMP INTT1
MOV TL1,#83H
CPL P1.0
;输出取反
RETI
例题2:设晶振频率fOSC=6MHz,分别讨论各种 工作方式下最长定时时间。
1 方 式 3 定 时 器 T0分 成 两 个 8位 定 时 器 , T1停 止 工 作
2.控制寄存器TCON
中断请求 标志
D7 D6 D5 D4 D3 D2 D1 D0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
启动定时/计数器
0 停止 1 启动
触发方式选择
0 低电平 1 下降沿
M 1 0 0 1 1
M 0 工 作 方 式
功
能
0 方 式 0 初 值 寄 存 器 TL的 低 5位 与 TH的 8位 构 成 13位 计 数 器
1 方 式 1 寄 存 器 TL与 TH构 成 16位 计 数 器 , 计 满 溢 出 , 16位 计 数 器 回 零
0 方 式 2 自 动 装 载 8位 计 数 器 , TL溢 出 , TH内 容 送 TL
6.1.3 定时器/计数器的工作方式
定时器/计数器共有四种工作方式
1. 方式0—13位方式 定时
器
振荡器
1/12 C/T=0
T0 TR0 GATE 1
INT0
C/T=1
& ≥1
TL0 TH0 TF0
低5位 8位
13位计数器
演 示 继续
T12
T5 * * * T4
T0
TH0
TL0
返回
当 C / T =0时,控制开关接通内部振荡器, T0对机器周期进行计数,其定时时间为:
t=(213-T0初值)×机器周期
当C / T=1时,控制开关接通外部输入信号, 当外部信号电平从“1”到“0”跳变时,加 1计数器加1,处于计数工作方式。
2. 方式1—16位方式
其定时时间为: t=(216-T0初值)×机器周期
振荡器
T0 TR0 GATE 1 INT0
1/12 C/T=0
C/T=1 &
;主程序入口 ;T1中断入口
ORG 1000H
MAIN:MOV TMOD, #10H ;T1为方式1
MOV TH1, #0FFH
MOV TL1,#83H ;初值
SETB EA
;允许中断
SETB ET1
SETB TR1
;启动定时
SJMP $
;等待中断
INTT1: MOV TH1,#0FFH ;重新设置初值
T0控制
GATE位:门控位。
(1) 当GATE=1时,定时受外部脉冲的控制 只有或引脚为高电平且TR0或TR1置1时,相应 的定时/计数器才被选通工作,这时可用于测量 端出现的正脉冲宽度;
(2) 当GATE=0,则只要TR0和TR1置1,定 时/计数器就被选通,而不管或的电平是高还是 低。
定时/计数器工作方式
≥1
TL0 TH0 TF0 8位 8位
16位计数器
3. 方式2—8位自动装入时间常数方式
其定时时间为: t=(28-T0初值)×机器周期
振荡器
T0 TR0 GATE 1 INT0
1/12 C/T=0
C/T=1 & ≥1
TL0 TF0 TH0
4. 方式3—2个8位方式
仅T0可以工作在方式3—此时T0分成2个 独立的计数器—TL0和TH0 ,
第6章 单片机的定时器/计数器
本章的重点内容
定时器/计数器的结构及原理 定时器/计数器的各种工作方式 掌握定时器/计数器的应用
6.1 单片机的定时器/计数器的工作原理
定时/实现方式: 1.软件定时;
多重循环
2.不可编程硬件定时;
3.可编程定时 。
定时芯的功能
编程实置位EA、ETi ④ TRi位置位控制定时器的启动和停止。
例题1:设晶振频率fOSC=6MHz,使用定时器1以方式1 产生周期为500μs的方波脉冲,并由P1.0 输出。试 以中断方式实现。
8051
P1.0
500μs
① TMOD确定
T1控制
定时器1 方 式1
T0控制
GATE C/T M1 M0 GATE C/T M1 M0 0001XXXX
振荡器 12 TX端
C/T=0 C/T=1
加1 计数器 TFX
中断
控制信号
6.1.2 方式寄存器和控制寄存器
1.模式控制寄存器TMOD
D7 D6 D5 D4 D3 D2 D1 D0 GATE C/T M1 M0 GATE C/T M1 M0
T1控制 M1 M0—工作方式选择 C/T — 定时/计数工作方式选择
定时/计数器的核心部件是二进制加1计数器 (TH0、TL0或TH1、TL1) 。
1. 定时功能----计数输入信号是内部时钟脉冲, 每个机器周期使寄存器的值加1。所以,计数 频率是振荡频率的1/12。
2. 计数功能----计数脉冲来自相应的外部输入 引脚,T0为P3.4,T1为P3.5。
6.1.1 定时/计数器的结构
TL0用来作为T0的控制信号(TR0、TF0), TH0用来作为T1的控制信号(TR1、TF1)。
6.2 单片机定时器/计数器的应用
可编程器件在使用前需要进行初始化:
① 确定TMOD控制字:编程时将控制字送 ② TMOD; ② 计算计数器的计数初值:
编程时将计数初值送THi、 TLi; ③ 开中断(如果使用中断方式):