第6章-定时器计数器
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
13
计数初值计算的公式为: THx=(65536-N)/256 TLx=(65536-N)%256
注意: (1)N=t/ Tcy ; (2) Tcy 为机器周期,t为定时器定时的时间。
6.2.3 方式2
方式0和方式1的最大特点是计数溢出后,计数器为全0。
因此在循环定时或循环计数应用时就存在用指令反复装入计数
【例6-2】利用定时/计数器T0方式2使P2.0引脚输出频率为 5KHZ的脉冲。
***26***
【例6-3】编写一程序,采用8位共阴数码,利用定时器0工作 方式1,实现电子钟功能。
***27***
【例6-4】 采用定时器T1的方式1的中断计数方式,计数输 入引脚T1(P3.5)上外接开关K1,作为计数信号输入。按4 次K1后,P1.0口接的LED闪烁5次。
计数器的起始计数是从初值开始。单片机复位时计数器 初值为0,也可用指令给计数器装入一个新的初值。
6
1、控制寄存器TCON
▪TF1:T1溢出中断请求标志位。T1计数溢出时由硬件自动 置TF1为1。CPU响应中断后TF1由硬件自动清0。 ▪TR1:T1运行控制位。TR1置1时,定时器1开始工作;TR1 置0时,T1停止工作。 ▪TF0:T0溢出中断请求标志位,其功能与TF1类同。 ▪TR0:T0运行控制位,其功能与TR1类同。
初值的问题。方式2为8位自动重装初值方式计数器。
TCON
TF1 D7
申请 中断
TR1
TF0
溢出 TL0
TR0
TH0 8位
D0
1 0 &
≥1
T0引脚
机器周期 1
INT0引脚
TMOD
0 M0 D0 1 M1
C/T GATE M0 M1 C/T GATE D7
15
说明:
(1)TLx(x = 0,1)作为常数缓冲器,当TLx计数溢出时 ,在溢出标志TFx置“1”的同时,还自动将THx中的初值送至 TLx,使TLx从初值开始重新计数。
第6章 定时/
系部:自动控制系
1
本章内容 6.1 定时/计数器的结构与工作原理 6.2 定时/计数器的工作方式 6.3 定时/计数器应用举例
2
6.1 定时/计数器的结构与工作原理
6.1.1 硬件结构
T0由TH0、TL0构成,T1由TH1、TL1构成。
T1引脚
T0引脚
TH1
TL1
TH0
TL0
机器周 期脉冲
TCON
TF1 TR1 TF0 TR0 GATE C/T M1 M0 GATE C/T M1 M0
外部中断相关位
T1方式
内部总线 TMOD T0方式
说明:
(1)T0 和T1都具有定时器和计数器两种工作模式,4种 工作方式(方式0~3)。属于增计数器。
(2)TMOD用于设置T0、T1的工作模式和工作方式。 (3)TCON用于控制T0、T1的启动和停止计数,同时包含 了T0、T1的中断请求标志。
17
18
初始化程序应完成如下工作: (1)对TMOD赋值,以确定T0和T1的工作方式。 (2)计算初值,并将其写入TH0、TL0或TH1、TL1。 (3)若采用中断方式,则对IE赋值,开放中断。 (4)使TR0或TR1置位,启动定时/计数器定时或计数。
***25***
6.3 定时/计数器应用举例 【例6-1】每秒点亮P1.0口的发光二极管一次,然后熄灭,使 发光二极管形成闪烁效果。要求:采用定时/计数器0,工作方 式1。
6.1.2 工作原理
用 途:定时器和计数器 实 质:加1计数器 工作过程:每来一个脉冲计数器加1,当加到计数器为全1时, 再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中 TF0或TF1置1,向CPU发出中断请求(定时/计数器中断允许 时)。
5
加1计数器输入的计数脉冲有两个来源: (1)由系统的时钟振荡器输出脉冲经12分频后送来 (2)T0或T1引脚输入的外部脉冲 注意:
6.2.2 方式1 方式1的计数位数是16位,由TL0作为低8位、TH0作为高8
位,组成了16位加1计数器 。
TCON
申请 中断
TF1 D7
TR1
溢出
TF0
TH0 TL0
TR0
8位 8位
D0
1 0 &
≥1
T0引脚
机器周期 1
INT0引脚
TMOD
1 M0 D0 0 M1
C/T GATE
M0 M1 C/T GATE D7
***28*** 23
为更好满足学习和使用需求,课件在下载后 可以自由编辑,请根据实际情况进行调整
TR0
8位 低5位
D0
1 0 &
≥1
T0引脚
机器周期 1
INT0引脚
TMOD
1 M0 D0 0 M1
C/T GATE
M0 M1 C/T GATE D7
11
计数初值计算的公式为: THx=(8192-N)/32 TLx=(8192-N)%32
注意: (1)N=t/ Tcy ; (2) Tcy 为机器周期,t为定时器定时的时间。
(2)此工作方式可省去用户软件中重装初值的指令的执 行时间,简化定时初值的计算方法,可相当精确地确定定时时 间。
16
6.2.4 方式3 方式3只适用于定时器/计数器T0,定时器/计数器T1不能
工作在方式3。 T0分为两个独立的8位计数器TL0和TH0,TL0使用T0的状态
控制位C/T*、GATE、TR0,而TH0被固定为一个8位定时器(不 能作为外部计数模式),并使用T1的状态控制位TR1和TF1,同 时占用T1的中断请求源TF1。
2、工作方式寄存器TMOD
(1)GATE:门控位 GATE=0时,定时/计数器工作仅受TCON中的TR0或TR1控制; GATE=1时,定时/计数器工作不仅受TCON中的TR0或TR1控制, 同时外部中断引脚INT0或INT1也为高电平时,才能启动定时/ 计数器工作。
8
(2)C/T* —模式选择位 C/T*=0,为定时器工作模式,对单片机的晶体振荡器12分 频后的脉冲进行计数。 C/T*=1,为计数器工作模式,计数器对外部输入引脚T0( P3.4)或T1(P3.5)的外部脉冲(负跳变)计数。
9
(3)M1、M0—工作方式选择位 M1、M0的4种编码,对应于4种工作方式的选择。
***24*** 10
6.2 定时/计数器的工作方式
6.2.1 方式0
方式0的计数位数是13位,由TL0的低5位、TH0的8位, 组成了13位加1计数器 。
申请 中断
Baidu Nhomakorabea
TCON
TF1 D7
TR1
溢出
TF0
TH0 TL0