- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2)TMOD的设定(即控制字)
0 0 0 0 0 0 0 0 定 时 器 T0( 无 关 )
M 0= 1 M 1= 0
C / T = 0, 定 时
GA T E= 0, 不 用 门 控 控 制 字 为 # 10H
第6章 定时/计数器
(3)编程 ORG 000BH ;T0中断矢量地址 ;主程序入口 ;堆栈设置 ;写控制字
第6章 定时/计数器
知识回顾:
中断标志位 0 TCON 外部 中断0 ( IE0) 1 T0 0 定时 器0 ( TF0) 外部 中断1 ( IE1) 定时 器1 ( TF1) TI 串 行 口 RI 中断允许寄存器 IE 中断优先寄存器 IP 1 PX0 EX0 PT0 ET0 PX1 EX1 1 PT1 ET1 0 1 + ES 源允许 EA 总允许 PS 0 断 0 中 低 级 TX RX 0 1 0 1 0 1 高 级 中 断
AJMP
ORG MOV MOV
INQP
0100H SP,#60H TMOD,#10H
MOV
MOV SETB SETB SETB SJMP ORG INQP: MOV MOV CPL RETI
TH1,#0FEH
TL1,#0CH TR1 ET1 EA $ 00XXH TH1,#0F0H TL1,#0CH P1.0
MOV MOV MOV MOV THi,#TCH TLi,#TCL THi,#TCH TLi,#TCL THi,#TCB TLi,#TCB ;送高8位 ;送低5位 ;送高8位 ;送低8位
方式1时:TCB=TCH+TCL,TCH—高8位,TCL—低8位
方式2时:TC—8位
MOV MOV
第6章 定时/计数器
个机器周期采样为1、后一个采样周期采样为0时,计数器即加
一计数。计算机需用两个机器周期来识别1次计数,因而最大 计数速率为振荡频率的1/24。
第6章 定时/计数器
P3.5(T1) T1部 分 P3.4(T0) T0部 分 TL1 TH0 TL0
TH1
微 处 理 器
TCON
TMOD
图6-1 定时器/计数器的结构
第6章 定时/计数器
2.定时/计数器T0、T1的控制寄存器-TCON
TCON控制寄存器各位的定义如下:
D7 TCON TF1
D6 TR1
D5 TF0
D4 TR0
D3 IE1
D2 IT1
D1 IE0
D0 IT0 88H
第6章 定时/计数器
其中:
TF0(TF1):为T0(T1)定时器溢出中断标志位。当 T0(T1)计数溢出时,由硬件置位,并在允许中断的情况 下,发出中断请求信号。当CPU响应中断转向中断服务 程序时,由硬件自动将该位清0。 TR0(TR1):为T0(T1)运行控制位。当TR0(TR1)=1 时启动T0(T1);TR0(TR1)=0时关闭T0(T1)。该位由软件 进行设置。
第6章 定时/计数器
表6―1
定时/计数器工作方式
第6章 定时/计数器
GATE:门控制位,用于控制定时器的启动是否受外部中
断源信号的影响。GATE=0时,与外部中断无关,由TCON
寄存器中的TRx位控制启动。GATE=1时,由控制位TRx和 引脚 IN T x 共同控制启动,只有在没有外部中断请求信 号的情况下(即外部中断引脚 IN T x =1时),才允许定时 器启动。
第6章 定时/计数器
图6―5
T/C方式2的逻辑结构图
第6章 定时/计数器
4.方式3
方式3只适用于定时器T0。当定时器T1处于方式3时 相当于TR1=0,停止计数。 当T0工作在方式3时,TH0和TL0被拆成2个独立的8位 计数器。这时,TL0既可作为定时器使用,也可作为计数器 使用,它占用了定时器T0所使用的控制位(C/ T 、GATE、 TR0、TF0),其功能和操作与方式0或方式1完全相同;而 TH0只能作定时器用,并且占据了定时器T1的两个控制信
3.方式2
当M1M0=10时,T/C工作在方式2,构成1个自动重装 载的T/C,满计数值为28。在方式0和方式1中,当计数满 后,若要进行下一次定时/计数,需用软件向THx和TLx重 新予置计数初值。在方式2中THx和TLx被当作两个8位 计数器,计数过程中,THx寄存8位初值并保持不变,由 TLx进行8位计数。计数溢出时,除产生溢出中断请求外, 还自动将THx中的初值重新装到TLx中去,即重装载。 除此之外,方式2也同方式0类似。其逻辑结构如 图6―5所示。
2 10
6
s
设置初值为x
x=216—50000=15536=3CB0H
预置: (TH0)=3CH,(TL0)=0B0H
INT 0
INT 1
1 T1
SCON
第6章 定时/计数器
6
定时/计数器
定时器/计数器(Timer/Counter),是单片机内的 重要部件,其作用主要包括产生各种时标间隔、记录外 部事件的数量等。AT89S51单片机有2个16位的定时器/计 数器、定时器/计数器0(T0)和定时器/计数器1(T1)。 AT89S52包含3个16位的定时器/计数器:定时器/计数器0 ( T0 ) , 定 时 器 / 计 数 器 1 ( T1 ) 、 定 时 器 / 计 数 器 2 (T2)。AT89S51单片机还包含有一个用作看门狗的14位 定时器(T3)。
6.2定时器/计数器T0、T1的内部结构 AT89S51单片机的定时器/计数器和微处理器的关系,如图6-1所示,定 时器/计数器T0由TH0、TL0构成,T1由TH1、TL1构成。 TMOD用于控制和确定各定时器/计数器的功能和工作模式。TCON用于控制定 时器/计数器T0、T1的启动和停止计数,同时包含定时/计数器的状态。它 们属于特殊功能寄存器。这些寄存器的内容靠软件设置。系统复位时,寄 存器的所有位都被清零。 定时器/计数器的T0、T1的特殊功能寄存器有:方式寄存器TMOD、控制
第6章 定时/计数器
图6―3
T/C方式0的逻辑结构图
第6章 定时/计数器
2. 方式1
当M1M0=01时,T/C设定为工作方式1,构成16位定时/计数 器,其中THx作为高8位,TLx作为低8位,满计数值为216,其余 同方式0类似。其逻辑结构如图6―4所示。
图6―4 T/C方式1的逻辑结构图
第6章 定时/计数器
TCON的低4位与外部中断有关,可参阅中断一节的
有关内容。 TCON寄存器在复位时也被清0。
第6章 定时/计数器
6.3
定时/计数器的工作方式
MCS-51单片机的T/C有4种工作方式,分别由TMOD寄存器中
的M1、M0两位的二进制编码所决定。 1.方式0 当M1M0=00时,T/C设定为工作方式0,构成13位的T/C。其逻
寄存器TCON、数据寄存器。
第6章 定时/计数器
AT89S51单片机有2个特殊功能寄存器TMOD和TCON:TMOD 用于设置T/C的工作方式;TCON用于控制定时器T0、T1的启 动与停止,并包含了定时器的状态。 1.定时/计数器T0、T1的方式寄存器-TMOD
定时器工作方式寄存器TMOD用于选择定时器的工作方
t TC ( 2
L
TC )
12 f OSC
(2
L
TC )
其中:t—定时时间。 fosc—晶体振荡器频率。
Tc—机器周期。 L—计数器的长度。
对于T0及T1: 方式0 方式1 方式2 对于T2:
L=13 L=16 L=8 L=16
213=8192 216=65536 28=256 216=65536
第6章 定时/计数器
TC—定时器/计数器初值,即定时常数或计数常数。 定时时间的倒数即为溢出率,即 根据时间的定时时间t,计算出TC值,并将其转换成二进制数TCB,然后再分别 送入THi、TLi(对于T0,i=0;对于T1,i=1)。 对于定时器/计数器T0/T1:
方式0时:TCB=TCH+TCL,TCH—高8位,TCL—低5位
第6章 定时/计数器
TMOD设置:
D7 GATE D6 C/ T D5 M1 D4 M0 D3 GATE D2 C/ T D1 M1 D0 M0
T1
T0
MOV TMOD,#51H 时间常数计算:晶体振荡器为6MHz,基本定时时间为100ms, 机器周期Tc为:
TC 12 6 10
6
式,它的高4位控制定时器T1,低4位控制定时器T0。TMOD中 各位的定义如下:
T1
TMOD GATE C/T M1 M0
T0
GATE C/T M1 M0 89H
第6章 定时/计数器
其中:
C /T
:T/C功能选择位,当C 当
C /T
/T
=1时为计数方式;
=0时为定时方式。
M1M0:T/C工作方式定义位,其具体定义方式如表 6―1所示。
;写定时常数
;启动T1 ;允许T1中断 ;开放CPU中断 ;中断服务程序 ;重写定时常数 ;P1.0变反输出 ;中断返回
第6章 定时/计数器
[例6-2] 借助于单片机内的定时器/计数器,测量人体心率。
假设单片机的晶振频率为6MHz。 分析: 两种方法:频率测量法和周期测量法。 [测量频率]: 由单片机T0实现1分钟的定时,T1负责对外计数,1分钟定时 时间到,读出T1计数器中的数值就是心率。 具体做法: T0和T1都选方式1,这样最大定时时间 t=65536x2=131.072ms 便于计算让计数器定时100ms,选30H,31H分别为秒和分存储单 元。30H单元计数10次满1秒,31H单元计数60次满1分。
第6章 定时/计数器
6.1 AT89S51单片机的定时器/计数器的基本原理