第6章 定时器计数器概要
单片机原理及应用 第06章定时计数器
20
6.5 定时器/计数器的编程
初始化
1 根据要求给方式寄存器TMOD送一个方式控制 字,以设定定时器的工作方式; 2 根据需要给TH和TL选送初值,以确定需要的 定时时间或计数的初值; 3 根据需要给中断允许寄存器IE送中断控制字, 以开放相应的中断和设定中断优先级;
也可用查询方式来响应定时器。
JBC TF1,RP1 SJMP DEL2
30
6.6.4 长定时时间的产生
例 假设系统时钟为6MHz,编写定时器T0产生 1秒定时的程序。 (1)T0工作方式的确定 定时时间较长,采用哪一种工作方式? 由各种工作方式的特性,可计算出: 方式0最长可定时16.384ms;
方式1最长可定时131.072ms; 方式2最长可定时512μs。 选方式1,每隔100ms中断一次,中断10次为1s。
8
6.3 定时/计数器的4种工作方式 方式0、方式1(13位、16位定时计数方式)
T1工作于方式0的等效框图(M1M0=00、01)
GATE=0、A=1、TR1=1 GATE=1、INT1=1、TR1=1。注意定时器初值与定时时间的不同
9
6.3.1 方式0、方式1的说明 定时/计数器T1工作在方式0时,为13位的计数器,由TL1 的低5位和TH1的8位所构成。TL1低5位溢出向TH1进 位,TH1计数溢出置位TCON中的溢出标志位TF1。 GATE位的状态决定定时/计数器运行控制取决于TR1 一个条件还是TR1和INT1引脚这两个条件。 当GATE=0时,A点电位恒为1,则只要TR1被置为1,B 点电位即为1,定时/计数器被控制为允许计数(定时/计 数器的计数控制仅由TR1的状态确定,TR1=1计数, TR1=0停止计数)。 当GATE=1时,B点电位由INT1输入的电平和TR1的状 态确定,当TR1=1,且INT1=1时,B点电平才为1,才 允许定时器/计数器计数(计数控制由TR1和INT1二个条 件控制)。 方式1时,TL1的8位都参与计数,因而属于16位 定时/计数器。其控制方式,等效电路与方式0完全相 10 同。
单片机定时器计数器教学课件
单片 机开 发板
如Keil、IAR等,用于编
电
译和烧录程序到单片机
脑
中。
编
用于搭建定时器计数器
程
电路。
软
件
杜
用于编写和调试程序。
邦
线
用于连接单片机引脚和 实验设备。
电阻 、电 容等 电子 元件
实验步骤与操作
5. 实验操作
根据实验要求,操作单片机开发板,观察 定时器计数器的运行状态和输出结果,记 录实验数据。
功能
定时器计数器在单片机中主要实 现定时、计数、产生中断等功能 ,是单片机应用中不可或缺的模 块。
工作原理
工作方式
定时器计数器通常采用计数或计时的 方式工作,通过内部或外部信号的输 入进行计数或计时。
工作流程
定时器计数器接收到启动信号后开始 工作,当计数值达到预设值时,产生 相应的中断或输出信号。
自动化控制
在生产线中,单片机定时器计数 器可以用于控制机械臂的运动、 物料传送等,实现自动化生产。
精确计时
在工业控制中,单片机定时器计数 器可以用于精确计时,如控制设备 的运行时间、报警触发等。
数据采集
单片机定时器计数器可以用于采集 生产过程中的各种数据,如温度、 压力、流量等,为生产管理提供数 据支持。
单片机定时器计数器教学课件
contents
目录
• 单片机定时器计数器概述 • 单片机定时器计数器的应用 • 单片机定时器计数器的编程 • 单片机定时器计数器的实验 • 单片机定时器计数器的案例分析
01
单片机定时器计数器概述
定义与功能
定义
单片机定时器计数器是一种用于 产生时间间隔或计数的硬件设备 ,常用于控制和测量时间。
51单片机定时器计数器详解
51单⽚机定时器计数器详解第六章定时器/计数器6.1 定时器的结构及⼯作原理6.2 定时器的控制6.3 定时器的⼯作模式及其应⽤第六章定时器/计数器实现定时⼀般有多种⽅法:1. 利⽤软件实现(延时程序)优点:简单,控制⽅便;缺点:CPU效率低。
2. 外部硬件实现:单稳态定时器、计数定时器优点:CPU效率⾼;缺点:修改参数⿇烦。
3. 利⽤计数器实现输⼊脉冲定时器/计数器作⽤主要包括产⽣各种时标间隔、记录外部事件的数量等,是单⽚机中最常⽤、最基本的部件之⼀。
外来脉冲定时计数定时器/计数器功能⽰意图6.1 定时器/计数器的结构及⼯作原理6.1.1 定时器/计数器的基本结构MCS-51单⽚机有⼆个定时器/计数器,每个定时器/计数器由⼏个专⽤寄存器组成。
TMOD(89H )⾼四位TMOD(89H )低四位⽅式寄存器TCON(88H)TCON(88H)控制寄存器*8DH 8BH 8CH 8AH TH1 TL1TH0 TL0数据寄存器(16位)定时器T1定时器T0定时器/计数器的结构如下图所⽰。
定时器/计数器的基本结构框图申请P3.5or P3.4or 8DH 8BH8CH 8AH6.1.2 定时器/计数器的⼯作原理定时器/计数器结构原理图INTx P3.YGATE :门控制位:定时/计数控制位TC/x=0,1Y=2,3Z=4,5⼀. 对外部输⼊信号的计数功能当T0或T1设置为计数⼯作⽅式时,计数器对来⾃输⼊引脚P3.4(T0)和P3.5(T1)的外部信号计数。
若前⼀个机器周期采样值为1,后⼀个机器周期采样值为0,则计数器加1。
所以计数器计数的频率最⾼为fosc 的1/24。
BDEHT H >1个机器周期T L >1个机器周期L⼆. 定时功能:定时器/计数器的定时功能也是通过计数实现的,它的计数脉冲是由单⽚机的⽚内振荡器输出经12分频后产⽣的信号,即为对机器周期计数。
INTx P3.Y例如:晶振频率=12MHz 机器周期=1us ,计数1次=1us ,计数频为=1MHz 。
定时器计数器讲解
TR1位(或TR0位)=1,启动定时器工作的必要条件。 TR1位(或TR0位)=0,停止定时器工作。 该位可由软件置“1”或清“0”。
10
6.2 定时器/计数器的4种工作方式 4种工作方式分别介绍如下。
6.2.1 方式0 当M1、M0为00时,定时器/计数器被设置为工作方式0,
这时定时器/计数器的等效逻辑结构框图如图6-4所示(以定 时器/计数器T1为例,TMOD.5、TMOD.4 = 00)。
(1)GATE=0时,A点(见图6-4)电位恒为1,B点电位仅 取决于TRx状态。TRx = 1,B点为高电平,控制端控制电子 开关闭合,允许T1(或T0)对脉冲计数。TRx = 0,B点为低 电平,电子开关断开,禁止T1(或T0)计数。
(2)GATE=1时,B点电位由INTX*(x = 0,1)的输入电 平和TRx的状态两个条件来定。当TRx=1,且INTX*=1时,B 点才为1,控制端控制电子开关闭合,允许T1(或T0)计数。 故这种情况下计数器是否计数是由TRx和INTX*两个条件来共 同控制。
图6-1 AT89S51单片机的定时器/计数器结构框图
4
只不过计数信号的来源不同。 计数器模式是对加在T0(P3.4)和T1(P3.5)两个引脚上
的外部脉冲进行计数(见图6-1) 定时器模式是对单片机的系统时钟信号经片内12分频后的
内部脉冲信号(机器周期)计数。由于时钟频率是定值,所 以可根据对内部脉冲信号的计数值可计算出定时时间。
本例由于采用定时器T0中断,因此需将IE寄存器中的EA、 ET0位置1。 (4)启动和停止定时器T0
定时器计数器的结构及工作原理课件
xx年xx月xx日
• 定时器计数器概述 • 定时器计数器的结构 • 定时器计数器的工作原理 • 定时器计数器的应用实例 • 定时器计数器的性能指标与选择
目录
01
定时器计数器概述
定义与作用
定义
定时器计数器是一种用于测量时 间间隔的电子设备,它能够记录 和比较时间,并产生相应的控制 信号。
控制部分
触发器
根据输入信号和控制逻辑,触发定时 器开始计时。
计数控制逻辑
决定计数器的启动、暂停、复位等操 作,确保定时器按照预设要求工作。
计数部分
计数器
核心部件,用于记录输入信号的脉冲数,通常采用二进制形式进行计数。
计数器容量
决定计数器的最大计数值,影响定时器的计时范围。
输出部分
计时显示
显示当前计数值或已计时的时间,便于用户观察。
输出控制
根据计数值或预设条件,输出相应的控制信号或报警信号。
03
定时器计数器的工作原理
工作流程
启动
启动定时器计数器开始计时。
溢出/下溢
当定时器计数器的值达到预设 的上限或下限时,产生溢出或 下溢事件。
初始化
设定定时器计数器的初始值和 模式。
计时
定时器计数器根据设定的模式 进行递增或递减计数。
停止
在计时过程中,可以随时停止 定时器计数器。
工作方式
01
02
03
递增计数
定时器计数器的值从初始 值开始递增,直到达到预 设的上限。
递减计数
定时器计数器的值从初始 值开始递减,直到达到预 设的下限。
循环计数
定时器计数器的值在预设 的上限和下限之间循环递 增或递减。
微机原理定时计数器课件
计时、计数、频率测量、时间间隔 测量等。
定时计数器的分类
01
02
03
专用定时计数器
微机系统内部专用的定时 计数器,如Intel 8253/8254等。
可编程定时计数器
具有可编程能力的定时计 数器,如Intel 8254等。
分布式定时计数器
在微机系统中分布式布置 的定时计数器,用于实现 分布式系统的定时/计数功 能。
器的值就会增加一。
当计数器的值与输出比较寄存器 的值相等时,就会产生一个比较 匹配信号,这个信号可以用于触
发相应的操作。
定时计数器有多种工作模式,包 括计数模式、定时模式、中断模
式等。
定时计数器的控制方式
软件控制方式
通过编写程序来控制定时计数器 的启动、停止、比较匹配等操作 。
硬件控制方式
通过硬件电路来控制定时计数器 的启动、停止、比较匹配等操作 。
微机原理定时计数器课件
目录
• 定时计数器概述 • 定时计数器的硬件结构 • 定时计数器的软件编程 • 定时计数器的应用 • 定时计数器的实现方式 • 定时计数器的调试方法
01
定时计数器概述
定时计数器的定义
01
定时计数器
微机系统内部或外部电路中用于产生定时/计数功能的电路或芯片。
02
定时计数器的基本组成
优点
定时计数器专用芯片具有高精度、高可靠性、可扩展等优 点。
应用场景
广泛应用于工业控制、仪器仪表、通信等领域。
采用单片机实现定时计数器
单片机组成
单片机一般由中央处理器、存 储器、定时计数器、输入输出
接口等组成。
工作原理
利用单片机的定时计数器功能 ,通过编程实现定时计数器的 功能。
单片机第六章定时器、计数器1
§6.2 定时器 / 计数器的4种工作方式
6.2.2 方式1
M1、M0=01,16位的计数器。
§6.2 定时器 / 计数器的4种工作方式
6.2.3 方式2
计数满后自动装入计数初值8位计数方式。M1、M0=10
工作方式2特别适合于用作较精确的脉冲信号 发生器。
§6.2 定时器 / 计数器的4种工作方式 6.2.4 方式3
M1M0:工作方式设置位。定时/计数器有四种工作方式,由
M1M0进行设置。
§6.1 定时器 / 计数器结构
M1、M0——工作方式选择位
M1 M0 00 01 10 11
工作方式 方式0,13位定时器/计数器 方式1,16位定时器/计数器 方式2,8位常数自动重新装载 方式3,仅适用于T0,T0分成两个8位计
溢出 TL0 8位
D0
1 0 &
≥1
机器周期 T0引脚
机器周期 1
INT0引脚
TMOD
1 M0 D0 1 M1
C/T GATE M0 M1 C/T GATE D7
§6.2 定时器 / 计数器的4种工作方式
1.工作方式3下的T0
T0分为两个独立的8位计数器:TL0和TH0 TL0
6.2.1 方式0
M1、M0为00,为13位的计数器
0:定时器 工作模式
1:计数器 工作模式
工作模式
§TRX一 个条件还是TRX和 INTX引脚两个条件。
0
0:取决于TRX的状态。
1
1:由/INTX的输入电平和 TRX的状态这两个条件来确定。
第六章 定时器/计数器
6.1 定时/计数器的结构和工作原理
6.1.1 定时/计数器的结构
单片机定时器,计数器
第六章定时器/计数器第一节概述8051内部提供两个十六位的定时器/计数器T0和T1,它们既可以用作硬件定时,也可以对外部脉冲计数。
1.计数功能:所谓计数功能是指对外部脉冲进行计数。
外部事件的发生以输入脉冲下降沿有效,从单片机芯片T0(P3.4)和T1(P3.5)两个引脚输入,最高计数脉冲频率为晶振频率的1/24。
2.定时功能:以定时方式工作时,每个机器周期使计数器加1,由于一个机器周期等于12个振荡脉冲周期,因此如单片机采用12MHz晶振,则计数频率为12MHz/12=1MHz。
即每微秒计数器加1。
这样就可以根据计数器中设置的初值计算出定时时间。
第二节定时器/计数器的基本结构、工作方式及应用一、定时器/计数器基本结构定时器/计数器的基本结构如图6-1。
T0由TH0和TL0两个八位二进制加法计数器组成十六位二进制加法计数器;T1由TH1和TL1两个八位二进制加法计数器组成十六位二进制加法计数器。
图6-1 定时器/计数器基本组成110二、定时器/计数器控制寄存器1.定时器方式控制寄存器TMOD定时器方式控制寄存器地址89H,不可位寻址。
TMOD寄存器中高4位定义T1,低4位定义T0。
其中M1,M0用来确定所选工作方式如表6—1:定时/计数器T1 定时/计数器T0111定时器控制寄存器TCON地址88H,可以位寻址,TCON主要用于控制定时器的操作及中断控制。
有关中断内容在第四章已说明。
此处只对定时控制功能加以介绍。
表6—2给出了TCON有关控制位功能:系统复位时,TMOD和TCON寄存器的每一位都清零。
112113三、工作方式及应用用户可通过编程对专用寄存器TMOD 中的M1,M0位的设置,选择四种操作方式。
(一)方式0(以T0为例)在此方式中,定时寄存器由TH0的8位和TL0的5位(其余位不用)组成一个13位计数器。
当GATE=0时,只要TCON 中的TR0为1,13位计数器就开始计;当GATE=1以及TR0=1时,13位计数器是否计数取决于INT0引脚信号,当INT0由0变1时开始计数,当INT0由1变为0时停止计数。
第6章定时计数器2015(共39张PPT)
3. 方式2
TMOD--M1M0=10:定时器工作(gōngzuò)在方式2。 方式2是8位的可自动重装载的定时计数方式。
TL0用作8位计数器, TH0用以保持计数初值。 当TL0计数溢出,置位TF0,TH0中的初值自动装入TL0,继续 计数,循环重复计数。 用于计数工作方式时,最大计数值为:
SJMP AGAI SHI:RL A
SJMP NEXT
共三十九页
②中断方式 ORG 0000H LJMP MAIN
;单片机复位(fù wèi)后从0000H开始执行
ORG 001BH
AJMP IV1
;转移到IV1
ORG 0030H
;主程序
MAIN:MOV A,#01H
MOV P1,A ;置第一个LED亮
T0由2个8位持殊功能寄存器TH0和TL0构成, T1由2个8位持殊功能寄存TH1和TL1构成。 每个定时器都可由软件设置(shèzhì)为定时工作方式或
计数工作方式。 T0和T1受特殊功能寄存器TMOD和TCON控制。
共三十九页
1. 定时 工作方式 (dìnɡ shí)
定时器计数的脉冲是由51单片机片内振荡器经12分 频后产生的。
2 .方式 1 (fāngshì)
TMOD: M1M0=01----定时计数器工作在方式1。
该模式是一个16位定时/计数方式。 寄存器TH0和TL0是以全16位参与操作, 计数方式时最大计数 216=65536(个外部脉冲)
用于定时工作方式时,定时时间为:
t=(216一T0初值) ×时钟周期×12 16位寄存器(THX和TLX) 中THX提供高8位、TLX提供低8位计 数初值
TH0只可用作定时功能,占用定时器T1的控制位TR1和T1 的中断标志位TF1,其启动和关闭仅受TRl的控制。 定时器T1无模式 3, 可工作于方式0、1、2,但不能使用中 断方式。 只有将T1用做串行口的波特率发生器时,T0才工作在方式3, 以便增加一个定时器。
第6章 定时器、计数器
第六章 定时器/计数器 内容提要
§6.1 定时器 / 计数器结构 §6.2 定时器 / 计数器的四种工作方式 §6.3 定时器 / 计数器的编程及应用
第六章 定时器/计数器
两个可编程的定时器/计数器T1、T0。 2种工作模式: 计数器工作模式 计数功能:对外来脉冲进行计数。 定时器工作模式 定时功能:通过计数器的计数来实现的,计数脉冲 来自单片机的内部(机器周期产生一个计数脉冲)。 方式0 方式1 方式2 方式3
ORG 0000H RESET: AJMP MAIN ORG 0100H MAIN: MOV SP,#60H 执行程序,使/INT1引脚上 出现的正脉冲宽度以机器周 期数的形式显示在显示器上
MOV TMOD,#90H
MOV MOV TL1,#00H TH1,#00H
LOOP0: JB
LOOP1: JNB
§6.2 定时器 / 计数器的4种工作方式
TH0 TH0被固定为一个8位定时器(不能作外部计数模式)
同时占用定时器T1的中断请求源TF1
§6.2 定时器 / 计数器的4种工作方式
2)T0工作在方式3下T1的各种工作方式 当T1用作串行口的波特率发生器时,T0才工 作在方式3。 T0处于方式3时, T1可定为方式0、方式1和 方式2,用来作为串行口的波特率发生器, 或不需要中断的场合。
§6.3 定时器 / 计数器的编程及应用
定时器计数器
优点
精确度高
定时器计数器通常具有高精度 的计时能力,能够提供准确的
计时和计数功能。
易于编程和控制
定时器计数器通常与微控制器 或计算机等设备配合使用,可 以通过编程实现复杂的定时和 计数逻辑。
多功能性
定时器计数器不仅可以用于计 时和计数,还可以用于产生脉 冲信号、控制流程等。
可靠性高
定时器计数器通常具有较高的 可靠性和稳定性,能够在各种
环境下稳定工作。
缺点
成本较高
需要电源供电
相对于一些简单的计时设备,定时器计数 器的成本较高。
定时器计数器需要电源供电才能正常工作 ,如果电源突然断电,可能会影响其计时 和计数功能。
需要编程和调试
可能存在误差累积
使用定时器计数器需要具备一定的编程和 调试能力,对于一些不熟悉编程的人来说 可能会有一定的学习门槛。
频率测量
定时器计数器还可以用来测量信号的频率。通过测量一定时间内信号的周期数,可以计算出信号的频率。这种功能在电子和通 信领域中非常有用,例如,在测量无线电信号的频率时。
时间间隔测量
定时器计数器可以用来测量两个事件之间的时间间隔。例如, 在测试和测量设备中,需要精确测量两个信号之间的时间间隔。
脉冲宽度测量
在长时间使用过程中,如果定时器计数器 的误差累积到一定程度,可能会影响其计 时和计数的准确性。
05
定时器计数器的未来发展与趋 势
技术创新
智能化
随着人工智能和物联网技术的不 断发展,定时器计数器将更加智 能化,能够实现远程控制、自动 调整等功能,提高生产效率和精
度。
微型化
随着微电子技术的进步,定时器 计数器将进一步微型化,能够适 应更小的空间和设备,满足各种
单片机第六章定时器计数器
CPL P1.0
;P1.0的状态求反
SJMP LOOP
查询程序虽简单,但CPU必须要不断查询TF0标志,工作
效率低。
30
【例6-2】系统时钟为6MHz,编写定时器T0产生1s定 时的程序。
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 片内时钟定时器。对机器周期脉冲计数定时
☞ TMOD寄存器选方式: 写“M1,M0” = 10 b 选中方式2
☞ 其他用法与各种方式1完全相同
定时器小结: (2个16位加法计数器)
☞工作方式由TMOD决定; 计数/定时由C/T位决定 工作方式0(13位) 工作方式3(T0拆为双8位) 工作方式1(16位) 工作方式2(8位自动重装)
永远不用 几乎无用 经常用到 经常用到
X化为十六进制数,即: 65036 = FE0CH 。
T0的初值为TH0 =FEH,TL0 = 0CH。
25
(2)初始化程序设计 采用定时器中断方式工作。包括定时器初始化和中断系 统初始化,主要是对寄存器IP、IE、TCON、TMOD的相 应位进行正确的设置,并将计数初值送入定时器中。 (3)程序设计 中断服务子程序除了完成所要求的产生方波的工作之外, 还要注意将计数初值重新装入定时器,为下一次产生中断 做准备。 本例,主程序用一条转至自身的短跳转指令来代替。
27
PT0M0: MOV TL0,#0CH ;T0初始化,装初值的低8位
6 定时器计数器
用作串行口 波特率发生器
17
定时器/计数器-综合应用
定时器/计数器的综合应用
工作方式2的应用 【例】利用定时器T0定时,在P1.0引脚输出周期为
1ms(频率为1KHz)的方波信号。(fosc=6MHz)
分析:
选择T0工作于定时、方式2、定时时间为500s。
TMOD=0000 0010B=02H
定时器/计数器T0的运行控 制位,当GATE=0时,只要 TR0=1,T0就开始工作。
TCON可位寻址!
8
定时器/计数器-工作原理
(2)定时器工作方式寄存器TMOD
用于T1
用于T0
GATE C/T M1 M0 GATE C/T M1 M0
门控位
计数/定时选择位 “1”--计数 “0”--定时
TMOD不可位寻址!
LOOP2: MOV TH0,#06H CLR P3.4 NOP NOP SETB P3.4 JBC TF0, LOOP3 SJMP LOOP1
LOOP3:MOV TL0, #38H DJNZ B,LOOP1 END
注意:查询方式工作。即查询计数器 溢出标志位。
25
定时器/计数器-综合应用
计数器的应用 注意:外部事件的最高计数频率为时钟频率的1/24
测试过程如下:
机器周期脉冲TM
在P3.2低电平时将 TR0置“1”
当P3.2变为高 电平时T0开始
运行
当P3.2变为低电平时 T0停止,令TR0=0, 此时,T0计数值TM 即为被测脉冲宽度。28
定时器/计数器-综合应用
00001001B INIT0 P3.2
MOV TMOD,#09H
;T0定时、方式1、GATE=1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2)C/T*=1,电子开关打在下面位置,T1(或T0)为计数 器工作模式,计数脉冲为P3.4(或P3.5)引脚上的外部输入脉 冲,当引脚上发生负跳变时,计数器加1。
13
GATE位状态决定定时器的运行控制取决于TRx一个条件, 还是取决于TRx和INTX* (x = 0,1)引脚状态这两个条件。
图6-2 寄存器TMOD格式
6
8位分为两组,高4位控制T1,低4位控制T0。 下面对TMOD的各位给出说明。 (1)GATE—门控位。 GATE=0时,仅由运行控制位TRx(x = 0,1)来控制定时器
运行。 GATE=1时,用外中断引脚INT0*(或INT1* )上的电平与运
行控制位TRx共同控制定时器运行。 (2)M1、M0—工作方式选择位。 M1、M0的4种编码,对应于4种工作方式的选择,如表6-1所
TR1位(或TR0位)=1,启动定时器工作的必要条件。 TR1位(或TR0位)=0,停止定时器工作。 该位可由软件置“1”或清“0”。
10
6.2 定时器/计数器的4种工作方式 4种工作方式分别介绍如下。
6.2.1 方式0 当M1、M0为00时,定时器/计数器被设置为工作方式0,
这时定时器/计数器的等效逻辑结构框图如图6-4所示(以定 时器/计数器T1为例,TMOD.5、TMOD.4 = 00)。
图6-1 AT89S51单片机的定时器/计数器结构框图
4
只不过计数信号的来源不同。 计数器模式是对加在T0(P3.4)和T1(P3.5)两个引脚上
的外部脉冲进行计数(见图6-1) 定时器模式是对单片机的系统时钟信号经片内12分频后的
内部脉冲信号(机器周期)计数。由于时钟频率是定值,所 以可根据对内部脉冲信号的计数值可计算出定时时间。
第6章 AT89S51单片机的 定时器/计数器
1
内容概要 在工业检测与控制中,许多场合要用到计数或定时功能。 例如,对外部脉冲进行计数或产生精确的定时时间等。片
内两个可编程的定时器/计数器T1、T0,可满足这方面的需 要。本章介绍AT89S51单片机片内定时器/计数器的结构与 功能,两种工作模式和4种工作方式,以及与其相关的两个 特殊功能寄存器TMOD和TCON各位的定义及其编程,最后 介绍定时器/计数器的C51编程及应用实例。
15
图6-5 定时器/计数器方式1逻辑结构框图
16
6.2.3 方式2 方式0和方式1的最大特点是计数溢出后,计数器为全0。因
此在循环定时或循环计数应用时就存在用指令反复装入计数初 值的问题。这不仅影响定时精度,也给程序设计带来麻烦。方 式2就是解决此问题而设置的。
当M1、M0为10时,定时器/计数器处于工作方式2,这时定 时器/计数器的等效逻辑结构初值开始。单片机复位时计数器初 值为0,也可用指令给计数器装入一个新的初值。AT89S51的 定时器/计数器属于增计数器。
5
6.1.1 工作方式控制寄存器TMOD AT89S51定时器的工作方式寄存器TMOD用于选择工作模式
和工作方式,字节地址为89H,不能位寻址,其格式如图6-2所 示。
2
6.1 定时器/计数器的结构 AT89S51的定时器/计数器结构如图6-1所示,T0由特殊功
能寄存器TH0、TL0构成,T1由特殊功能寄存器TH1、TL1 构成。
T0 和T1都具有定时器和计数器两种工作模式,4种工作方 式(方式0~3)。属于增计数器。
特殊功能寄存器TMOD用于选择T0、T1的工作模式和工 作方式。特殊功能寄存器TCON用于控制T0、T1的启动和停 止计数,同时包含了T0、T1的状态。T0、 T1不论是工作在 定时器模式还是计数器模式,实质是对脉冲信号进行计数,
(1)GATE=0时,A点(见图6-4)电位恒为1,B点电位仅 取决于TRx状态。TRx = 1,B点为高电平,控制端控制电子 开关闭合,允许T1(或T0)对脉冲计数。TRx = 0,B点为低 电平,电子开关断开,禁止T1(或T0)计数。
(2)GATE=1时,B点电位由INTX*(x = 0,1)的输入电 平和TRx的状态两个条件来定。当TRx=1,且INTX*=1时,B 点才为1,控制端控制电子开关闭合,允许T1(或T0)计数。 故这种情况下计数器是否计数是由TRx和INTX*两个条件来共 同控制。
11
图6-4 定时器/计数器方式0逻辑结构框图
方式0时,为13位计数器,由TLx(x = 0,1)的低5位和THx 的高8位构成。TLx低5位溢出则向THx进位,THx计数溢出则 把TCON中的溢出标志位TFx置“1”。
图6-2中, C/T*位控制的电子开关决定了定时器/计数器的两 种工作模式。
14
6.2.2 方式1 当M1、M0为01时,工作于方式1,方式1的等效电路逻辑
结构如图6-5所示。 方式1和方式0的差别仅仅在于计数器的位数不同,方式1为
16位计数器,由THx高8位和TLx低8位构成(x = 0,1), 方式0则为13位计数器,有关控制状态位的含义(GATE、 C/T*、TFx、TRx)与方式0相同。
示。
7
(3)C/T* —计数器模式和定时器模式选择位。 C/T*=0,为定时器工作模式,对单片机的晶体振荡器12分频
后的脉冲进行计数。 C/T*=1,为计数器工作模式,计数器对外部输入引脚T0
(P3.4)或T1(P3.5)的外部脉冲(负跳变)计数。
8
6.1.2 定时器/计数器控制寄存器TCON TCON字节地址为88H,可位寻址,位地址为88H~8FH,格
式如图6-3所示。
图6-3 TCON格式
9
第5章介绍了与外部中断有关的低4位。这里仅介绍与定时器 相关的高4位功能。 (1)TF1、TF0—计数溢出标志位。
当计数器计数溢出时,该位置“1”。使用查询方式时,此位 作为状态位供CPU查询,但应注意查询有效后,应使用软件及 时将该位清“0”。使用中断方式时,此位作为中断请求标志位 ,进入中断服务程序后由硬件自动清“0”。 (2)TR1、TR0—计数运行控制位。