定时计数器及其应用
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
M1 M0
M1M0 00 01 10 11
工作方式
功能
方式0 13位计数器,TH高8位和TL低5位
方式1
16位计数器
方式2 两个8位计数器,初值自动装入
方式3
两个8位计数器,仅适用T0
⑵ C/T —— 计数/定时方式选择位
C/T=1,计数工作方式,对外部事件脉冲计数,用作计数器。 C/T=0,定时工作方式,对片内机周脉冲计数,用作定时器。
T0 运行 标志 TR0 8CH
INT1 中断 标志 IE1 8BH
INT1 触发 方式 Baidu NhomakorabeaT1 8AH
INT0 中断 标志 IE0 89H
INT0 触发 方式 IT0 88H
TCON低4位与外中断 INT0 、INT1 有关,已在中断中叙述。 高4位与定时/计数器T0、T1有关。
⑴ TF1:定时/计数器T1溢出标志。 ⑵ TF0:定时/计数器T0溢出标志。 ⑶ TR1:定时/计数器T1运行控制位。TR1=1,T1运行;TR1=0,T1停。 ⑷ TR0:定时/计数器T0运行控制位。TR0=1,T0运行;TR0=0,T0停。 TCON的字节地址为88H,每一位有位地址,均可位操作。
6.2 定时器的控制
1. 工作方式控制寄存器TMOD
TMOD用于设定定时/计数器的工作方式 低4位用于控制T0,高4位用于控制T1。
高4位控制T1
低4位控制T0
门控 计数/定时 工作方式 门控 计数/定时 工作方式
位 方式选择
选择 位 方式选择
选择
G
C/T
M1 M0 G
C/T
⑴ M1M0 —— 工作方式选择位
定时器/计数器: Timer/Counter
本质上都是加法计数器,当对固定周期的脉冲信号 计数时是定时器,对脉冲长度不确定的信号计数时是计 数器。
每接收到一个计数脉冲,加法计数器的值就加一, 当计满时发生溢出,并从0开始继续计数。
加法计数器的计满溢出信号就是定时/计数器的输出, 该信号使TCON的某位(TF0或TF1位)置一,作为定时 器/计数器的溢出中断标志。
因此, 定时器/计数器是一种可编程部件。
编程:在定时器/计数器开始工作之前,CPU必须将一些命令 (称为控制字)写入定时器/计数器,决定T0、T1的工作方 式。
将控制字写入定时器/计数器的过程叫定时器/计数 器的初始化。
初始化内容: 规定T0、T1的工作方式; 将工作方式控制字写入方式寄存器 规定T0、T1的工作状态; 将工作状态控制字写入控制寄存器 赋定时/计数初值。
一个机器周期=12个振荡周期, 故,计数频率为振荡频率的1/12。 若:单片机晶振=6MHz,则计数频率为0.5MHz,
2微秒计数器加1.
定时器工作方式的特点:
当定时器设置了某种工作方式之后,定时器就会按设定 的工作方式独立运行,不再占用CPU的操作时间,除非定时 器计满溢出,才可能中断CPU当前操作。
⑶ GATE —— 门控位
GATE=0,运行只受TCON中运行控制位TR0/TR1的控制。 GATE=1,运行同时受TR0/TR1和外中断输入信号的双重控制。
只有当INT0/INT1=1且TR0/TR1=1,T0/T1才能运行。
TMOD字节地址89H,不能位操作,设置TMOD须用字节操作指令。
设 定时器1为定时工作方式,要求由软件启动定时器1, 按方式2工作。定时器0为计数方式,要求由软件启动定时 器0,按方式1工作。
6.3 定时器/计数器的四种工作方式
四种工作方式: 即方式0、方式1、方式2和方式3。 其中: 方式0、1和2下,T0和T1的工作方式相同,
方式3下,两个定时器的工作方式不同。 6.3.1 方式0
MOV TMOD,#25H。
位序号 D7 D6 D5 D4 D3 D2 D1 D0
位符号 GATE C/T M1 M0 GATE C/T M1 M0
0 0 00 0
1 01
2. 控制寄存器TCON
TCON
位名称 位地址
T1 中断 标志
TF1 8FH
T1 运行 标志
TR1 8EH
T0 中断 标志
TF0 8DH
6.1 定时器的结构及工作原理
1.定时/计数器的结构
T 1( P3.5)
T 0( P3.4)
TH 1 微
处 内部总线
理
器 TCON
TL 1
工作 方式
TH 0 TMOD
TL 0
工作 方式
定时器:对片内机器时钟(周期方波)进行计数 计数器:对Tx引脚输入的负脉冲进行计数
2. 定时/计数器概述
80C51单片机内部有两个定时/计数器T0和T1,其 核心是计数器,基本功能是加1。
定时器计数器的功能:定时和计数。 1.计数功能
计数:对外部事件进行计数。 外部事件的发生以输入脉冲表示,因此计数功能的实质 就是对外来脉冲进行计数。 计数输入端:T0(P3.4)和T1(P3.5)。 外部输入的脉冲在负跳变时有效,进行计数器加1(加法 计数)。
2.定时功能 实现方法:通过计数器的计数实现。 与计数功能的不同之处:计数脉冲来自单片机的内部,即 每个机器周期产生一个计数脉冲,也就是每个机器周期计数 器加1。
对外部事件脉冲(下降沿)计数,是计数器;对 片内机周脉冲计数,是定时器。
计数器由二个8位计数器组成。
定时时间和计数值可以编程设定,其方法是在计 数器内设置一个初值,然后加1计满后溢出。调整 计数器初值,可调整从初值到计满溢出的数值, 即调整了定时时间和计数值。
定时/计数器作为计数器时,外部事件脉冲必须从 规定的引脚输入。且外部脉冲的最高频率不能超 过时钟频率的1/24。
80C51定时/计数器
定时/计数器是单片机系统一个重要的部 件,其工作方式灵活、编程简单、使用方便, 可用来实现定时控制、延时、频率测量、脉宽 测量、信号发生、信号检测等。此外,定时/ 计数器还可作为串行通信中波特率发生器。
在工业检测、控制中,很多场合都要用到计数或者定 时功能。例如对外部脉冲进行计数、产生精确的定时时间、 作串行口的波特率发声器等。MCS-51单片机内部有两个 可编程的定时器/计数器,以满足这方面的需要。它们具 有 两种工作模数(计数器模式、 定时器模式)和四种工 作方式( 方式0、方式1、方式2、方式3),其控制字均 在相应的特殊功能寄存器(SFR)中,通过对它的SFR的 编程,可以方便的选择工作模数和工作方式。