第6章MCS-51定时器计数器

合集下载

单片机原理及应用 第06章定时计数器

单片机原理及应用  第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 同。

第06章 MCS-51单片机定时计数器

第06章 MCS-51单片机定时计数器

10
2 8位计数初值自动重装,TL(7 ~ 0)
TH(7 ~ 0)
11
3 T0运行,而T1停止工作,8位定时/计数。
▪ 2.定时/计数器控制寄存器(TCON)

D7 D6 D5 D4 D3 D2 D1 D0
位符号 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
TR0:定时 / 计数器0运行控制位。软件置位,软件复位。与GATE有关, 分两种情况:
GATE = 0 时:若TR0 = 1,开启T0计数工作;若TR0 = 0,停止T0计 数。
GATE = 1 时:若TR0 = 1 且/INT0 = 1时,开启T0计数; 若TR0 = 1 但 /INT0 = 0,则不能开启T0计数。 若TR0 = 0, 停止T0计数。
TR1:定时 / 计数器1运行控制位。用法与TR0类似。
▪ (1)计算计数初值。欲产生周期为1000μs的等宽方波脉冲, 只需在P1.7端交替输出500μs的高低电平即可,因此定时 时间应为500μs。设计数初值为X,则有:
▪ (216-X)×1×10-6=500×10-6
▪ X=65536-500=65036=FE0CH
▪ 将X的低8位0CH写入TL1,将X的高8位FEH写入TH1。
;清TCON,定时器中断标志清

MOV TMOD,#10H
;工作方式1设定

MOV TH1,#0FEH
;计数1初值设定

MOV TL1,#0CH

MOV IE,#00H
;关中断

SETB TR1
;启动计数器1
▪ LOOP0:JBC TF1,LOOP1 ;查询是否溢出

第6章MCS-51的定时器

第6章MCS-51的定时器

• 28×12×1/12MHz=28us=256us=0.256ms
工作方式2_补充说明
8位计数器 TL0作计数器,TH0作预置寄存器使用,计数溢出时 ,TH0中的计数初值自动装入TL0,即TL0是一个自动 恢复初值的8位计数器。 在使用时,要把计数初值同时装入TL0和TH0中。 优点是提高定时精度,减少了程序的复杂程度。
工作方式1_应用分析
定时和计数的应用 计数范围:1~216 计数计算公式:计数值=216-计数初值 机器周期(MC):=12/Fosc=12/时钟频率 定时范围:1机器周期~216机器周期 定时计算公式:定时时间=(216-定时初值)×
机器周期 如果晶振频率为6MHz ,则最大定时时间为: 216×12×1/6MHz=217us=131072us=131.072ms 如果晶振频率为12MHz ,则最大定时时间为: 216×12×1/12MHz=216us=65536us=65.536ms 工作方式1的定时计数功能切换模式,与工作方式
0完全一样;而启动定时计数器的模式,也与工作方式 0完全一样。计数量方式1更大,可完全取代方式0。
6.2.3 方式2
方式2为自动重装初值的8位计数方式。
TCON
TF1 D7
申请 中断
TR1
溢出8位计数器
1
TF0
TL0
TR0
0 &
TH1重TH装0 单元 ≥1 8位
D0
T0引脚
机器周期 1
INT0引脚
6.1.1 工作方式控制寄存器TMOD TMOD(工作方式寄存器):选择定时器/计数器T0、T1的工作 模式和工作方式,字节地址为89H,不能位寻址。
8位分为两组,高4位控制T1,低4位控制T0。 (1)GATE——门控位

51单片机定时器计数器详解

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 。

MCS-51单片机的定时器计数器

MCS-51单片机的定时器计数器

1. 定时器T0/T1 中断申请过程
(1)在已经开放T0/T1中断允许且已被启动的前提下, T0/T1加1计满溢出时 TF0/TF1标志位自动置“1” ;
(2)CPU 检测到TCON中TF0/TF1变“1”后,将产生指 令:LCALL 000BH/LCALL 001BH 执行中断服务程序;
(3)TF0/TF1标志位由硬件自动清“0”,以备下次中断申
郑州大学
docin/sundae_meng
(3)工作方式寄存器TMOD
T1
T2
GATE C / T M1 M0 GATE C / T M1 M0
M1,M0:工作方式选择位 。
=00:13位定时器/计数器; =01:16位定时器/计数器(常用); =10:可自动重装的8位定时器/计数器(常用); =11:T0 分为2个8位定时器/计数器;仅适用于T0。 C/T :定时方式/计数方式选择位。 = 1:选择计数器工作方式,对T0/T1引脚输入的外部事件 的负脉冲计数; = 0 :选择定时器工作方式,对机器周期脉冲计数定时。 如下页图所示。
CPL P1.0 MOV TH0,#15H MOV TL0,#0A0H
START:MOV SP,#60H MOV P1,#0FFH
SETB TR0 POP PSW
MOV TMOD,#01H MOV TH0,#15H MOV TL0,#0A0H
POP ACC RETI END
SETB EA
Байду номын сангаас
SETB ET0
定时器/计数器0采用工作方式1,其初值为:
21650ms/1s=6553650000=15536=3CB0H
电路图如下:
郑州大学
docin/sundae_meng

MCS-51单片机的定时器-计数器

MCS-51单片机的定时器-计数器
1.3 工方式
MCS-51的定时器/计数器共有四种工作方式。工作在方式0、方 式1和方式2时,定时器/计数器0和定时器/计数器1的工作原理完全 一样,现以定时器/计数器0为例介绍前三种工作方式。
1. 方式0(M1M0=00) (1)电路逻辑结构
方式0是13位计数结构的工作方式,其计数器由TH0全部8位 和TL0的低5位构成。TL0高三位弃之不用。图6.4 是定时器/计数 器0工作在方式0的逻辑结构。
分析:题目的要求可用下图来表示。

P1.0
8051 250 s 250 s
由上图可以看出只要使 的电位每隔250 取一次反即可。所 以定时时间应取250 。
1)计算计数初值 设计数初值为x,由定时计算公式知:
2)专用寄存器的初始化
D7
D6 D5 D4
D3
D2 D1
D0
GATE
GATE
所以,TMOD应设置为:10H 开放定时器/计数器1中断,所以IE应设置为:88H
当GATE=1时,只有TR0和 同时为高电平,定时器/计数 器 才工作,否则,定时器/计数器不工作。
(2)定时和计数的应用 计数范围:1~213 计数计算公式:计数值=213-计数初值 定时范围:1机器周期~213机器周期 定时计算公式:定时时间=(213-定时初值)×机器周期 如果晶振频率为6MHz ,则最大定时时间为: 213×1/6MHz×12=214( )
单片机原理及应用
MCS-5单片机内部共有两个16位可编程的定时器/计数器,即 定时器T0和定时器T1它们既有定时功能又有计数功能。
1.1 结构
定时器/计数器的基本结构如图6.3所示。基本部件是两个8位计 数器(其中TH1和TL1是T1的计数器,TH0和TL0是T0的计数器)。

单片机原理及其接口技术--第6章 MCS-51单片机定时器计数器


单片机原理及其接口技术
T/C方式2的逻辑结构图
1
TH1/TH0
T8
T7
T6
T5
T4
T3
T2
T1
寄存器 计数器

TL1/TL0
T8
T7
T6
T5
T4
T3
T2
T1
主目录
上一页
下一页

单片机原理及其接口技术
4、方式3 M1M0=11 T0和T1有不同的工作方式
C/T0:
TH0和TL0被拆成2个独立的8位计数器。
28),向CPU申请中断,标志位TF1自动置位,若中
断是开放的,则CPU响应定时器中断。当CPU响应
中断转向中断服务程序时,由硬件自动将该位清0。
&
加1计数器 & 1
主目录
上一页
下一页


EA
ET1
单片机原理及其接口技术
2个模拟的位开关,前者决定了T/C的工作状态:当1单片机有2个特殊功能寄存器TCON和TMOD: TCON:用于控制定时器的启动与停止,中断标志。 TMOD:用于设置T/C的工作方式。
主目录
上一页
下一页


单片机原理及其接口技术
1.定时器控制寄存器TCON
88H TCON
位地址
D7
D6
D5
D4
D3
D2
D1
D0
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 8F 8E 8D 8C 8B 8A 89 88
过实时计算求得对应的转速。
主目录 上一页 下一页 结 束
单片机原理及其接口技术 对于定时/计数器来说,不管是独立的定时器芯片还是单

单片机原理及应用教程(C语言版)-第6章 MCS-51单片机的定时器计数器


6.1.1 单片机定时器/计数器的结构
MCS-51单片机定时器/计数器的原理结构图
T0(P3.4) 定时器0 定时器1 T1(P3.5) 定时器2 T2EX(P1.1)
T2(P1.0)
TH0
溢 出 控 制
TL0
模 式 溢 出
TH1
控 制
TL1
模 式 溢 出
TH2
TL2
重装 捕获
RCAP 2H
RCAP 2L
6.2.2 T0、T1的工作模式
信号源 C/T设为1,为计数器,用P3.4引脚脉冲 C/T设为0,为定时器,用内部脉冲 运行控制 GATE=1,由外部信号控制运行 此时应该设置TR0=1 P3.2引脚为高电平,T0运行 GATE=0, 由内部控制运行 TR0设置为1,T0运行
6.2.2 T0、T1的工作模式
6.2.3 T0、T1的使用方法
例6-1 对89C52单片机编程,使用定时器/计 数器T0以模式1定时,以中断方式实现从P1.0引 脚产生周期为1000µ s的方波。设单片机的振荡频 率为12MHz。 分析与计算 (1)方波产生原理 将T0设为定时器,计算出合适的初值,定 时到了之后对P1.0引脚取反即可。 (2)选择工作模式 计算计数值N
6.2.1 T0、T1的特殊功能寄存器
TR1、TR0:T1、T0启停控制位。 置1,启动定时器; 清0,关闭定时器。
注意: GATE=1 ,TRx与P3.2(P3.3)的配合控制。
IE1、IE0:外部中断1、0请求标志位 IT1、IT0:外部中断1、0触发方式选择位
6.2.2 T0、T1的工作模式
6.2.1 T0、T1的特殊功能寄存器
GATE=0,禁止外部信号控制定时器/计数器。 C/T——定时或计数方式选择位 C/T=0,为定时器;C/T=1,为计数器 计数采样:CPU在每机器周期的S5P2期间,对 计数脉冲输入引脚进行采样。

MCS-51单片机内部定时器计数器

•MCS-51单片机内部定时器计数器
二、 方式1
方式 1(16位计数器)
•MCS-51单片机内部定时器计数器
方式1和方式0的工作原理基本相同,唯一 不同是T0和T1工作在方式1时是16位的计数/定 时器。
方式1时的计数长度M是2的16次方。16位 的初值直接拆成高低字节,分别送入TH和TL 即可。
•MCS-51单片机内部定时器计数器
M1 M0:四种工作方式的选择位 工作方式选择表
M1 M0 方式
说明
0 0 0 13 位定时器(TH的 8 位和TL的低 5 位)
0 1 1 16 位定时器/计数器
1 0 2 自动重装入初值的 8 位计数器 T0 分成两个独立的 8 位计数器,
1 1 3 T1 在方式 3 时停止工作
定时 1 ms的初值:
因为 机器周期=12÷6 MHz= 2 μs
所以 1 ms内T0 需要计数N次:
•MCS-51单片机内部定时器计数器
N= 1 ms÷2 μs = 500
由此可知: 使用方式 0 的 13 位计数器即可, T0 的初值X为 X=M-N=8 192-500=7 692=1E0CH 但是, 因为 13 位计数器中, 低 8 位 TL0 只使用了 5 位, 其 余码均计入高 8 位TH0 的初值, 则 T0
0。TF产生的中断申请是否被接受, 还需要由中断计数器T1、 T0 的运行控制位,
通过软件置 1 后, 定时器 /计数器才开始工作, 在系统复位时
被清 0。
•MCS-51单片机内部定时器计数器
定时器的工作方式
一、 方式 0
方式 0(13位计数器)
•MCS-51单片机内部定时器计数器
•MCS-51单片机内部定时器计数器

第六章 MCS-51单片机内部定时器


6.3.1 模式0及应用
在这种模式下,16位寄存器只用了13位。 其中,TL0的高3位未用,TH0占8位。当 TL0的低5位溢出时,向TH0进位。当TH0 溢出时,向中断标志位TF0进位,并申请中 断。 因此,可通过查询TF0 是否置位或考 察中断是否发生来判断定时器/计数器0的 操作完成与否。
(2)计算1ms定时T0的初值:
机器周期为(1/fOSC)×12=[1/(12×106)]×12=1μs, 设T0的 计数初值为X,则 (213-X)×1×10-6=1×10-3ms
X=213-1×10-3/(1×10) -6 =8192-1000=7192D=1110000011000
高8位: E0H 低5位: 18H
fosc=12MHz, 采用查询方式。
解:方波周期 T=1/100Hz=0.01s=10ms 用T1定时5ms 计数初值 X为: X=216-12×5×103/12=60536=EC78H 程序如下:
MOV TMOD, #10H ;T1模式1,定时方式
SETB TR1 LOOP:MOV TH1,#0ECH
例:晶振为12MHZ ,则计数周期为
T=12/(12*106)Hz =1微秒
最短的定时 周期
计数器工作方式:
当定时器/计数器为计数工作方式时,通过
引脚T0和T1对外部信号计数,外部脉冲的下降
沿触发计数
在每个机器周期的
采样过程:
S5P2期间采样引脚
当输入脉冲信号从1到0的负跳变时,计数器就 自动加1。 由于检测一个由1到0的跳变需要两 个机器周期,所以 计数的最高频率为振荡频 率的1/24。为了确保给定电平在变化前至少被 采样一次,外部计数脉冲的高低电平均需保持 一个机器周期以上。(占空比没有限制)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3
定时器和计数器模式选择位 C/ T =0,定时器模式,每一个机器周期计数器自动加1。 C/ T =1,计数器模式,在单片机T0引脚上每发生一次负 跳变,计数器自动加1。 GATE=0,定时/计数器工作不受外部控制。 GATE=1,定时/计数器T0的起停受INT0引脚的控制。
6
定时器/计数器的相关寄存器
第6章 MCS-51 单片机定时器/计数器

主要内容 定时/计数器的工作模式 定时/计数器的工作方式 定时/计数器的编程应用举例
1
MCS-51单片机的定时器/计数器
定时器/计数器是MCS-51单片机的重要功能模块之一。在检测、控制 及智能仪器等应用中,常用定时器作实时时钟,实现定时检测、定时 控制。还可用定时器产生毫秒宽脉冲,驱动步进电机一类的电气机械 。计数器主要用于外部事件的计数。 MCS-51单片机内共有3个定时器/计数器 T0、T1、T2。 我们只对T0、T1的相关内容作一下介绍。
15
若采用程序查询方式来实现上述功能,则应 怎么编写这段程序?
16
ORG AJMP MAIN: MOV SETB LOOP: MOV MOV JNB CLR CPL SJMP
0000H MAIN TMOD,#00H TR0 TH0,#0E0H TL0,#18H TF0,$ TF0 P1.0 LOOP
25
定时器/计数器的工作方式
方式2 (1)计数器模式 计数N次,要求计数器溢出,设初始值为X, 则: X N 28, 那么, X 28 N 预先给计数器装入初始值 X 2 8 N,当计数器 计数N次后,溢出标志TF0为1。
26
定时器/计数器的工作方式
方式2 (2)定时器模式 定时td秒,要求计数器溢出。首先计算定时td需 t 要多少个机器周期才能实现,即: N d 。设初始值 TM 为X,则: ,那么, X N 28 X 28 N 。 预先给计数器装入初始值 X 2 8 N ,当计数器 计N 个机器周期后,溢出标志TF0为1,定时时间到。
14
ORG AJMP ORG AJMP MAIN: MOV MOV MOV SETB SETB SETB SJMP PT0: MOV
0000H MAIN 000BH PT0 TMOD,#00H TH0,#0E0H TL0,#18H EA ET0 TR0 $ TH0,#0E0H
MOV TL0,#18H CPL P1.0 RETI
定时td秒,要求计数器溢出。首先计算定时td需 td 要多少个机器周期才能实现,即: N
TM
设初始值为X,则: X N 216,那么, X 216 N。 预先给计数器装入初始值 X 216 N,当计数器 计N个机器周期后,溢出标志TF0置1,定时时间到。 方式1时,定时/计数器的最大计数次数为65536 (初始值为0),最大定时时间为65536TM(初始值 为0)。
2
一、概述
内部计数器 定时/计数器 外部计数器 计数器 定时器
2个16位的定时/计数器T0和T1,有两种工作模式: 定时/计数器工作在定时模式时,计数脉冲信号来自单 片机的内部——对机器周期TM计数,当计数器启动后,每 个机器周期计数器自动加1。 定时/计数器工作在计数模式时,计数器对外部脉冲 进行计数,计数器计P3.4(T0脚)或P3.5(T1脚)负跳变次 数。每产生一次负跳变,计数器自动加1。
8
四、定时器/计数器的工作方式
1、 工作方式0 ——13位计数器
计数器的高八位 TH0
计数器的低五位
TL0
定时器/计数器T0工作方式0的逻辑结构
9
定时器/计数器的工作方式——方式0
当GATE=0时,只要TR0为1,TL0及TH0组成的13 位计数器就开始计数;
当GATE=1时,仅当TR0为1,且INT0引脚输入信号 状态为1时,13位计数器开始计数。 计数器开始工作时,13位计数器从初始值开始加1计 数,当13位计数器各位全1以后,再计数1次,计数器就 产生溢出,则TF0位由硬件自动置1,同时把计数器清0。 在方式0下,计数器计数范围是1~8192(213)。定 时时间范围为1~8192个机器周期。
定时/计数器控制寄存器(TCON) 控制定时/计数器的起停,反映定时/计数器是否计满。
D7 D6 D5 D4 D3 D2 D1 D0
TCON
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
定时器/计数器1 的溢出标志
定时器/计数器1 的起停控制位
定时器/计数器0 的溢出标志 定时器/计数器0 的起停控制位
17
定时器/计数器的工作方式
2、方式1 ——16位计数器
定时器/计数器T0工作方式1的逻辑结构
18
定时器/计数器的工作方式——方式1
当GATE=0时,只要TR0为1,TL0及TH0组成的 16位计数器就开始计数; 当GATE=1时,仅当TR0为1,且INT0引脚输入信 号状态为1时,16位计数器开始计数。 计数器开始工作时,当16位计数器从初始值开始 加1计数,当16位计数器各位全1以后,再计1次,计 数器就产生溢出,则硬件自动把TF0位置1,同时把计 数器清0。
10
定时器/计数器的工作方式——方式0
在工程设计时,我们经常碰到的是这样的问题: 要求在计数N次或者定时(延时)t秒后,再进行下一 步的动作。如果采用定时/计数器实现,最直接的方法 是让定时/计数器计数N次或者定时t秒后溢出,溢出标 志TF0(或TF1)为我们提供了测试判断条件。然而, 计数器只有在计满后才会溢出,上述问题转换为在某 个初始值的基础上再计N次或再定时t秒使定时/计数器 溢出。因此,求初始值是解决上述问题的关键。
方式2时,定时/计数器的最大计数次数为256 (初始值为0),最大定时时间为256TM(初始值为 0)。
27
例子
例 利用定时器T1的工作方式2对外部信号计数, 要求每计满100次,将P1.0端状态取反。
编写程序如下: ORG 0000H AJMP MAIN ORG 001BH CPL P1.0 RETI MAIN: MOV IE,#88H MOV TMOD,#60H MOV TH1,#9CH MOV TL1,#9CH SETB TR1 SJMP $
定时/计数器的工作方式寄存器(TMOD, 89H )
定时/计数器T1 D7 D6 D5 M1 D4 M0 D3 定时/计数器T0 D2 D1 M1 D0 M0
GATE C/T
GATE C/T
门控位 定时器和计数器模式选择 定时/计数器工作方式
定时/计数器工作方式 定时器和计数器模式选择
门控位
5
定时/计数器的工作方式寄存器(TMOD, 89H )
28
定时器/计数器的工作方式
4、 方式3 当M1M0设置为11时,定时/计数器T0的工作方式 为方式3。只有定时/计数器T0有方式3,定时/计数器 T1没有工作方式3,如果把T1设置为方式3,计数器将 停止工作。 在工作方式 3 下,定时器 / 计数器 T0 被拆分成 2 个 独立的8位计数器TL0和TH0。
32
(3)一般情况下,定时器/计数器T1溢出后,TF1自 动置1,可以以此为判断标志,检测定时或计数是 否完成,但在定时器/计数器T0设置为方式3时, TF1为1时意味着8位计数器TH0溢出,TF0为1表示 8位计数器TL0溢出,而T1计数满发生溢出时不会 产生中断请求信号。
TR0 =1 启动定时/计数器T0 TR0 =0 定时/计数器T0停止计数 TR1 =1 启动定时/计数器T1 TR1 =0 定时/计数器T1停止计数
7
定时器/计数器的相关寄存器
定时/计数器控制寄存器(TCON) 单片机复位时,特殊功能寄存器TCON被清0。 当TF0(或TF1)和TR0(或TR1)由软件方法置1或清 0时,既可按单元操作,也可以按位操作。如启动定时/计 数器T0和T1,清除溢出标志位TF0和TF1操作如下: SETB TR0 SETB TR1 CLR TF0 CLR TF1 或: MOV TCON, #01010000B
定时器/计数器0在工作方式器的工作方式——方式2
当GATE=0时,只要TR0为1,计数器TL0开始计 数;
当GATE=1时,仅当TR0为1,且INT0引脚输入信 号状态为1时,计数器TL0开始计数。
计数器开始工作时,当8位计数器TL0从初始值开 始加1计数,当计数器各位全“1”以后,再计1次,计 数器产生溢出,则TF0位由硬件自动置1,同时把TH0 的内容装载到TL0。
29
定时器/计数器的工作方式
方式3
TL0定时/计数器逻辑结构 定时器/计数器T0工作方式3的逻辑结构
30
定时器/计数器的工作方式
方式3
TH0定时/计数器逻辑结构 定时器/计数器T0工作方式3的逻辑结构
31
注意:使用定时器/计数器时应注意以下几个方面:
(1)MCS-51的定时器/计数器为加1计数器。 (2)定时器/计数器T1的工作方式没有方式3,如果 设置它为方式3(M1M0=11),定时器/计数器T1 停止工作。
22
ORG AJMP MAIN:MOV SETB LOOP:MOV MOV JNB CLR CPL AJMP
0000H MAIN TMOD,#10H TR1 TH1,#0D8H TL1,#0F0H TF1,$ TF1 P1.1 LOOP
23
定时器/计数器的工作方式
3、 方式2 (自动装载初值的8位计数器)
19
定时器/计数器的工作方式
方式1 (1)计数模式
计数N次,要求计数器溢出,设初始值为X, 则: X N 216 ,
那么,X 216 N 预先给计数器装入初始值 X 216 N ,当计数器 计数N次后,溢出标志TF0置1。
相关文档
最新文档