9299.net
大学生考试网 让学习变简单
当前位置:首页 >> 工学 >>

《单片机微型计算机原理与接口技术》第六章 单片微机的定时器_图文

《单片机微型计算机原理与接口技术》第六章 单片微机的定时器_图文

第六章 单片微机的 定时器/计数器 原理及应用

6.1 概述
通常采用以下三种方法来实现定时或计数: 1.硬件法 硬件定时功能完全由硬件电路完成,不占用CPU时间。 但当要求改变定时时间时,只能通过改变电路中的元件参数来 实现,很不灵活。 2.软件法

软件定时是执行一段循环程序来进行时间延时,优点是 无额外的硬件开销,时间比较精确。但牺牲了CPU的时间。
3.可编程定时器/计数器

可编程定时器/计数器最大特点是可以通过软件编程来 实现定时时间的改变,通过中断或查询方法来完成定时功能或 计数功能。有专门的可编程定时器/计数器芯片可供选用,比 如Intel 8253。还有一些日历时钟芯片,如菲利浦公司的 PCF8583等。
目前单片微机中往往已配备了定时器/计数器(timer/ counter)。 80C51芯片内包含有两个16位的定时器/计数器:T0和 T1;而80C52包含有三个16位的定时器/计数器:T0、T1和T2; 在80C51系列的部分产品(如Philips公司的80C552)中,还包 含有一个用做看门狗的8位定时器(T3)。 定时器/计数器的核心是一个加1计数器.其基本功能是 计数加1。

若是对单片微机的T0、T1 或T2引脚上输入的一个1到0 的跳变进行计数增l,即是计数功能。 若是对单片微机内部的机器周期进行计数,从而得到定 时,这就是定时功能。

定时功能和计数功能的设定和控制都是通过软件来设定
的。 80C51的定时器/计数器除了可用作定时器或计数器之外, 还可用作串行接口的波特率发生器。

6.2 定时器/计数器T0、T1
定时器/计数器T0、T1 的内部结构简图示于图6-1中。 从图中可以看出,定时器/计数器T0、T1由以下几部分组成: ? ? ? ? 计数器TH0、TL0和TH1、TL1; 特殊功能寄存器TMOD、TCON; 时钟分频器; 输入引脚T0、T1。

6.2.1 与定时器/计数器T0、T1有关的特殊功能寄存器
⒈ 定时器/计数器T0、T1 的方式寄存器——TMOD 字节地址为89H。 TMOD的格式如下:低4位用来定义T0,高4位用来定义T1

D7

D6

D5 M1 T1

D4 M0

D3

D2

D1 M1

D0 M0

GATE C/T

GATE C/T T0

各位的意义如下:

? GATE——门控位。
GATE=1时,由外部中断引脚、和TR0、TR1共同来启动 定时器。当 /INT0 引脚为高电平时,TR0置位启动定时器T0; 当引脚为高电平时,TR1置位,启动定时器T1。 GATE=0时,仅由TR0和TR1置位来启动定时器T0和T1。

C/T——功能选择位。

C/T=1时,选择计数功能;C/T=0时,选择定时功能。
T0、T1 的计数、定时功能是通过TMOD中的位来选择的。 ① 定时器,设置C/T=0

计数输入信号是内部时钟脉冲,每个机器周期使寄存器的值增1。 每个机器周期等于12个振荡周期,故计数速率为振荡周期的1/ 12。当采用12MHz的晶体时,计数速率为1MHz。定时器的定时 时间,与系统的振荡频率fosc、计数器的长度和初始值等有关。 ② 计数器,设置C/T=1 这时,通过引脚T0(P3.4)和T1(P3.5)对外部信号进行计 数。在每个机器周期的S5P2期间,CPU采样引脚的输入电平。若 前一机器周期采样值为1,下一机器周期采样值为0,则计数器增 1,此后的机器周期S3P1期间,新的计数值装入计数器。

所以检测一个1到0的跳变 需要两个机器周期,故计数脉冲频率 不能高于振荡脉冲频率的1/24。 ? M1、M0——工作方式选择位。 由于有M1和M0两位,可以有四种工作方式,如表6-1所 示。 ⒉ 定时器/计数器T0、T1 的控制寄存器——TCON 控制寄存器TCON是一个逐位定义的8位寄存器,字节地址为 88H,位寻址的地址为88H~8FH。其格式如下:
位地 址 位功 能 8FH TF1 8EH TR1 8DH TF0 8CH TR0 8BH IE1 8AH IT1 89H IE0 88H IT0

其中各位的意义如下:

?

TF1(TCON.7)——定时器/计数器T1的溢出标志。

T1溢出时,该位由内部硬件置位。若中断开放,即响应 中断,进入中断服务程序后,由硬件自动清0;若中断禁止, 可用于判跳,用软件清0。 ? TR1(TCON.6)——T1的运行控制位。 用软件控制,置 l时,启动 T1;清0时,停止 T1。 ? TF0(TCON.5)——T0的溢出标志。

T0溢出时,该位由内部硬件置位。若中断开放,即响应 中断,进入中断服务程序后,由硬件自动清0;若中断禁止, 可用于判跳,用软件清0。 ? TR0(TCON.4)——T0的运行控制位。 用软件控制,置1时,启动T0;清 0时,停止 T0。

?

IE1(TCON.3)——外部中断1下降沿触发标志位。

?
? ?

IE0(TCON.I)——外部中断0下降沿触发标志位。
IT1(TCON.0)——外部中断1触发类型选择位。 IT0(TCON.0)——外部中断0触发类型选择位。

TCON的低4位与中断有关,已在第五章“中断系统”中讨论 过。

复位后,TCON的所有位均清0。T0和T1均是关断的。
⒊ 定时器/计数器T0、T1 的数据寄存器 由 TH1( 地 址 为 8DH) 、 TL1( 地 址 为 8BH) 和 TH0( 地 址 为 8CH)、TL0(地址为8AH)寄存器所组成。复位后,所有这四个寄 存器全部清零。 ⒋ 定时器/计数器中断

⑴ 中断允许寄存器IE ? ? EA位--中断允许总控制位 ET0位、ET1位、ET2位--T0、T1和T2的中断允许控制位。

某位=0,则禁止对应定时器/计数器的中断。
某位=1,则允许对应定时器/计数器的中断。 ⑵ 中断矢量 定时器T0:000BH 定时器T1:001BH

定时器T2:002BH

⑶ 中断优先级寄存器IP
PT0位、PT1位、PT2位--T0、T1和T2中断优先级控制位。 某位为0,则相应的定时器/计数器的中断为低优先级;

某位为1,则相应的定时器/计数器的中断为高优先级。

6.2.2 定时器/计数器T0、T1 的工作方式
根据对TMOD寄存器中M1和M0的设定,T0可选择四种 不同的工作方式,而T1只具有三种工作方式(即方式0、方式1 和方式2)。 ⒈ 方式0:13位定时器/计数器

当TMOD中的M1=0、M0=0时,选定方式0工作。方式 0时的结构如图6-2所示。这种方式下,计数寄存器由13位组成, 即THx高八位(作计数器)和TLx的低5位(32分频的定标器)构成。 TLx的高3位未用。 计数时,TLx的低5位溢出后向THx进位,THx溢出后将TFx置 位,并向CPU申请中断。

从图6–2中可看到:

C/T位的电平为“0”或“1”,用来设定是作定时器或计数器。
门控位GATE可用作对INTx引脚上的高电平时间进行计量。 由图6–2上可看出,当GATE=0时,A点为高电平,定时器/计数 器的启动/停止由 TRx决定。TRx=1,定时器/计数器启动; TRx=0,定时器/计数器停止。 当GATE=1时A点的电位由INTx决定,因而B点的电位就由 TRx和INTx决定,即定时器/计数器的启动/停止由TRx和INTx 两个条件决定。 计数溢出时,TFx置位。如果中断允许,CPU响应中断并转入中 断服务程序,由内部硬件清TFx。TFx也可以由程序查询和清零。 ⒉ 方式1:16位定时器/计数器 当TMOD中的M1=0、M0=l时,选定方式1工作。

方式1时,T0、T1的逻辑结构如图6-3所示。这种方式下,计 数寄存器由16位组成,THx高八位和TLx的低8位。 计数时,TLx溢出后向THx进位,THx溢出后将TFx置 位,如果中断允许,CPU响应中断并转入中断服务程序,由 内部硬件清TFx。TFx也可以由程序查询和清零。 ⒊ 方式2:定时常数自动重装载的8位定时器/计数器 当TMOD中的M1=1、M0=0时,选定方式2工作。这种方式 是将16位计数寄存器分为两个8位寄存器,组成一个可重载的8 位计数寄存器。方式2时定时器/计数器T0、T1的逻辑结构如 图6-4所示。 在方式2中,TLx作为8位计数寄存器,THx作为8位计数常数 寄存器。 当TLx计数溢出时,一方面将TFx置位,并向CPU申请中断; 另一方面将THx的内容重新装入TLx中,继续计数。

重新装入不影响THx的内容。 方式2适合于作为串行口波特率发生器使用。 ⒋ 方式3

当TMOD中的M1=l、M0=1时,选定方式3工作。这种方式是是将 T0分为一个8位定时器/计数器和一个 8位定时器,TL0用于 8位定 时器/计数器,TH0用于8位定时器。方式3时定时器/计数器T0、 T1逻辑结构分别如图6–5、图6–6所示。
⑴ 工作方式3下的定时器/计数器T0 方式3时,T0的结构见图6–5 所示。其工作与方式0时相同,只是此 时的计数器为8位计数器TL0,它占用了T0的GATE、INT0、启动 /停止控制位TR0、T0引脚 (P3.4) 以及 计数溢出标志位TF 0和T0 的中断矢量(地址为000BH)等。

TH0所构成的定时器只能作为定时器用,因为此时的外部引 脚T0已为定时器/计数器TL0所占用。这时它占用了T1的启动 /停止控制位TR1、计数溢出标志位TF1及T1中断矢量(地址为 001BH) 。

T0方式3时,T1的结构如图6–6所示,T1只可选方式0、1或2。 由于此时计数溢出标志位TF1及T1中断矢量(地址为001BH)已 被TH0所占用,所以T1仅能作为波特率发生器或其它不用中断 的地方。作串行口波特率发生器时,T1的计数输出直接去串行 口,只需设置好工作方式,串行口波特率发生器自动开始运行, 如要停止工作,只需向T1送一个设为工作方式3的控制字即可。

6.5 定时器/计数器的应用编程
6.5.1 定时器的应用
⒈ 定时器/计数器溢出率的计算

定时器/计数器运行前,在其中预先置入的常数,称为 定时常数或计数常数(TC)。由于计数器是加 1(向上)计 数的,故而预先置入的常数均应为补码。 其中:

t——定时时间。 Tc——机器周期。

Fosc——晶体振荡器频率。

L——计数器的长度。
对于T0及T1: 方式0 方式1 方式2 L=13 213=8 192 L=16 216=65 536 L=8 28=256

对于T2:
L=16 216=65 536 TC——定时器/计数器初值,即定时常数或计数常数。 定时时间的倒数即为溢出率,即:

根据要求的定时时间t、设定的定时器工作方式(确定L) 及晶体振荡 频率fosc,可计算出TC值(十进制数),再将其转换成二进制数TCB, 然后再分别送入THi、TLi(对于T0,i=0;对于T1,i=l)。 对于定时器/计数器T0、T1: 方式0时:TCB=TCH+TCL,TCH——高8位,TCL—低5位 MOV THi,#TCH ;送高8位 MOV TLi,#TCL ;送低5位(高3位为0) 方式1时:TCB=TCH+TCL,TCH——高8位,TCL—低8位 MOV THi,#TCH ;送高8位

MOV TLi,#TCL ;送低8位。
方式2时:TCB——8位重装载 MOV THi,#TCB;送高8位

MOV TLi,#TCB ;送低8位。 对于定时器/计数器T2:与T0、T1的方式1相同 例 1.要求在 P1.0引脚上产生周期为2 ms的方波输出。

已知晶体振荡器的频率为fosc=6MHz。可使用T0作定 时器,设为方式0,设定 lms的定时,每隔1ms使P1.0引脚上的 电平变反。 (1) 解:定时常数计算
振荡器的频率fosc=6MHz,机器周期为2μs,方式0计数器 长度L=13(213=8 192),定时时间 t=1ms=0.001s

定时常数:

TC为7692=1E0CH,二进制数TCB=0 0 0 1 1 1 1 0 0 0 0 0 1 1 0 0 B,取低13位,其中高8位TCH=F0H,低5位为TCL = 0CH. 计 数 长 度 为 1E0CH=7692 , 定 时 为 (8192— 7692)×2μs=0.001S

TMOD的设定(即控制字)

( 2) 编 程
ORG 0000H AJMP MAIN

ORG 000BH AJMP INQP ORG 0030H MAIN:

;T0中断矢量

MOV TMOD,#00H ;写控制字,设T0为定时器 ;方式0 MOV TH0,#0F0H ;写定时常数(定时1ms) MOV TL0,#0CH SETB TR0 SETB ET0 ;启动 T0 ;允许T0中断

SETB EA
AJMP $

;开放CPU中断
;定时中断等待

ORG XXXX H

;T0中断服务程序

INQP:MOV TH0,#0F0H
MOV TL0,#0CH CPL RETI P1.0

;重写定时常数

;P1.0变反输出 ;中断返回

例2.使用T1的方式1,设定1ms的定时。同样,在P1.0引脚 上产生周期为2 ms的方波输出。晶体振荡器的频率为fosc=6 MHz。 ⑴ 解: 定时常数计算

振荡器的频率fosc=6MHz=6×106Hz,方式1计数器长度L= 16,2L=216=65536 定时时间 t=1ms=0.001s
定时常数

定时常数TC转换成二进制TCB=1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 B =F E 0 CH 所以 TCH=FEH(高8位),TCL=0CH(低8位) TMOD的设定(即控制字)



编程

ORG 0000H
AJMP MAIN ORG 001BH AJMP INQP ORG 100H ;主程序入口 ;T1中断矢量地址

MAIN:MOV TMOD,#10H
MOV TH1,#0FEH

;写控制字,T1为定时器、 ;方式1
;写定时常数 ,定时1ms

MOV TL1,#0CH
SETB TR1 ;启动T1

SETB ET1
SETB EA AJMP $

;允许T1中断
;开放CPU中断

ORG 00 XX H
INQP:MOV TH1,#0FEH MOV TL1,#0CH CPL RETI P1.0

;中断服务程序
;重写定时常数

;P1.0变反输出 ;中断返回

例3.欲用80C51产生两个方波,一个周期为200μs,另一 个周期为 400μs,该80C51同时使用串行口,用定时器 /计数器作为 波特率发生器。 focs=9.216 MHz。

⑴ 这时T0采用方式3工作,其中:

TL0产生200μs方波,由 P1.0输出;
TH0产生400μs方波,由Pl.1输出;

T1设置为 方式2 作波特率发生器用。

定时常数计算 ?TL0定时常数为 TCL0:tl0=100μs

单位μs,为十进数制数值。十六进制数值为TCBL0=B3H。 ?TH0定时常数为TCH0:定时时间为th0=200μs

单位μs,为十进制数值。十六进制的值为TCBH0=66 H。 ?TH1的波特率(详细计算见串行口部分)

设波特率为2400,则定时常数为TC2=F6H

⑵编程

ORG 0000H
AJMP MAIN ORG 000BH AJMP ITL0 ORG 00lBH ;TH0的中断入口 ;TL0的中断入口

AJMP ITH0
ORG 0100H MAIN: MOV SP,# 60H MOV TMOD,# 23H ;设栈指针 ;设T0为方式3,T1为2

MOV TL0,#0B3H
MOV TH0,#66H

;设TL0初值(100μs定时)
;设TH0初值(200μs定时)

MOV TL1 , # 0F6H ; 设 TL1 初 值 ( 波 特 率 为 2400) MOV TH1,# 0F6H ;设 TH1初值 SETB SETB SETB SETB TR0 TR1 ET0 ET1 ;启动 TL0 ;启动TH0 ;允许TL0中断 ;允许TH0中断

SETB
AJMP $

EA

;CPU中断开放

ITL0:MOV TL0,# 0B3H CPL P1.0 RETI

;重装定时常数 ;输出方波(200μs)

ITH0:MOV TH0,#66H CPL RETI P1.1

;重装定时常数 ;输出方波(400μs)

6.5.2 计数器的应用
当 TMOD 寄存器中C/T位设置为“1”时,定时器/计数器作 为计数器使用,可对来自单片微机引脚 T0 或 T1 上的负跳变脉冲 进行计数,计数溢出时可申请中断,也可查询溢出标志位 TFx。 例4.假如一个用户系统已使用了二个外部中断源,即INT0和, INT1,用户系统要求从P1.0引脚上输出一个5KHz的方波,并要求 采用定时器/计数器作为串行口的波特率发生器,另外还需要再增 加一个外部中断源。

⑴ 为了不增加其他硬件开销,可以把T0设置为方式3,这时可把单 片微机的引脚T0作为外部中断源,TL0设置为计数器,但计数器的 定时常数设为FFH,这样当T0引脚上出现从“1”至“0”的负跳变时, TL0计数溢出,申请中断,相当于一个边沿触发的外部中断源。

在T0方式3下, TH0只能做8位定时器,用来产生5KHz 方波的定时。 当T0设置为方式3之后,T1就作为串行口的波特 率发生器,设为方式2。 由P1.0引脚上输出5KH频率的方波,而方波周期为 200μs,则要求定时时间为100μs,若采用12MHz的晶体振荡器, 则机器周期为1μs。 计算时间常数: (28-TC)×1μs=100μs ∴TC=256-100=156 ⑵ 编程: ORG 0000H SJMP MAIN

ORG 000BH
AJMP TL0INT ;TL0中断入口

ORG 001BH

AJMP TH0INT
ORG 0030H

;TH0中断入口

MAIN: MOV TMOD,#27H ;设T0为方式3,TL0为计数 器方式,TH0为定时器方式,T1作波特率发生器,方式2。 MOV TH0,#156 MOV TL0, #0FFH MOV TL1,#BAUD ;TH0定时常数。 ;TL0计数常数 ;BAUD根据波特率算出 ;的时间常数。

MOV TH1,#BAUD
MOV TCON,#55H 启 ;置TR0和TR1为“1”, ;动TL0和TH0。

SETB ET0 SETB ET1 SETB EA

;允许TR0中断 ;允许TR1中断 ;允许CPU中断

SJMP $
TL0INT: MOV TL0,#0FFH (中断处理) RETI TH0INT: MOV TH0,#156

;中断等待。
;重置计数长度

;重置定时常数

CPL
RETI

P1.0

;P1.0引脚输出方波

6.5.3

门控位GATE的应用

门控位GATE可用作对 INTx 引脚上的高电平持续时间 进行计量。当GATE位设为“1”,并设定时器/计数器启动位 TRx为“1”,这时定时器/计数器定时完全取决于 INTx 引脚, 仅当 INTx 引脚电平为“1”时,定时器才工作,换另一角度看, 定时器实际记录的时间就是相应 INTx 引脚上高电平的持续时 间。通过反相器,则可测得相应 INTx 引脚上低电平的持续时 间。二个时间的和即为 INTx 引脚上输入波形的周期,其倒数 即为 INTx 引脚上输入波形的频率。还可算出占空比等参数。 例5.利用定时器/计数器测定图6-11(下页) 所示波形的一个 周期长度。 利用门控信号GATE启动定时器的方法。T1为计数器, T1的电平由 1到 0,计数器计数。

P3.3( INT1)
TR1 置1 T1开始计时 TR1清零

图6–11 波形脉冲宽度测试原理 编程: ⑴ 查询法 ORG 0000H START: MOV TMOD,#90H ; 设 置 T1 为 定 时 器 , ;方式1,GATA位置“1” MOV TL1,#00H MOV TH1,#00H LP1: JB P3.3,LP1 ;P3.3为高电平,等待 ;置为最大定时值

SETB TR1

;当P3.3为低电平时,置TR1位为“1”

LP2: JNB
LP3: JB

P3.3,LP2
P3.3,LP3

;当P3.3为低电平时,再等待
;当P3.3为高电平时,T1开始定时计数 ; 当 P3.3 为 低 电 平 时 , 高 电 平 脉 宽 定 ;时计数结束

CLR TR1 SJMP $

当fosc=12MHz时,机器周期为1μs,本方案最大被测脉冲宽 度为65536μs (65.536ms)。由于靠软件进行启动和停止计数,存在 一定的测量误差。 若被测波形除了接至P3.3,另外同时通过一个反相器接至 P3.2 (INT0) ,则通过编程同时可以测得波形的高电平宽度和低电 平宽度。

⑵ 中断法

对于脉冲宽度大于65.536ms的脉冲,可以采用对定时溢 出次数进行计数的方法。这样,脉宽为 (定时溢出时间×溢出 次数)+定时时间。利用定时器/计数器来测定脉冲周期的方法 参见图6-12。
(1) 设定晶体振荡器为 6 MHz,机器周期Tc为2μs,定时器/计 数器T0为方式1,定时溢出时间为 100 ms,

则T0定时时间常数为:(TH0)=3CH,(TL0)=B0H 因为外部脉冲同时接至T1的输入引脚T1,所以T1脚上对下 降沿计数二次,即为外部脉冲的一个周期时间。现设T1为计数器。 计数值为2。当计数值为1时,启动定时器;当计数值为2时,中断 计数器T1,并停止定时器T0的定时;

T1中断优先级设为高于定时器T0。 计数初值为 FFFEH:(TH1)=FFH,(TL0)=FEH。 (2) 编 程

ORG 0000H
SJMP MAIN ORG 000BH AJMP TIME0 ORG 00IBH ;定时器 T1中断入口 ;定时器T0中断入口

AJMP TIME1

ORG 0030H

MAIN:MOV R0,#0
MOV

;清除T0定时中断次数计数器

TMOD , # 59H; 设 T0 为 定 时 器 方 式 1,GATE = 1 ; 设T1为计数器、方式1

MOV TH0,#3CH
MOV TL0,#0B0H MOV TH1,#0FFH MOV TL1,#0FEH SETB TR0

;T0定时器初值

;T1计数器初值

;启动T0定时器

SETB TR1
MOV IP,#08H

;启动T1计数器
;T1中断优先级高于T0

SETB ET1

;允许T1中断

SETB ET0
SETB EA SETB 20H LOOP: SETB F0 JB F0,$

;允许T0中断
;CPU开中断 ;设20H为T1计数中断标志 ;设用户标志F0为T0定时中断标志 ;T0定时未溢出,等待

JB

20H,LOOP ; 判 T1 计 数 溢 出 , 若 未 溢 出 ;则循环,否则结束

SJMP $

TIME0:

MOV TL0,#0B0H;重置T0定时器初值
MOV TH0,# 3CH

INC

R0

;T0定时溢出计数器加 1

CPL F0
RETI TIME1: CLR F0

;清除T0定时中断标志

;清除T0定时中断标志 ;清除T1计数中断标志 ;禁止T0、T1 中断

CLR 20H CLR ET0

CLR ET1
CLR EA RETI 可测的最大周期长度为 256×100ms=25.6 s。若周期大于25.6 s,则 不用R0作计数器,改用16位计数器即可。 ;关中断

6.5.4

运行中读定时器/计数器

80C51可以随时读写计数寄存器TLx和THx (x为0 或1) ,比如用于实时显示计数值等。但在读取时应注意 由于分时读取TLx和THx而带来的特殊性。假如我们先 读TLx,再取读THx,由于这时定时器/计数器还在运行, 如果在读THx之前刚好发生TLx溢出向THx进位的情况, 这样读得的TLx值就不正确了,同样,先读THx后读 TLx时也可能产生这种错误。

一种解决办法是:先读THx,后读TLx,再重读THx, 若二次读得的THx值是一样的,则可以确定读入的数据是正确 的;若二次读得的THx值不一致,则必须重读。

例. 飞读
RDTIME: MOV A,TH0 MOV R0,TL0 ;读TH0 ;读TL0并存入R0

CJNE A,TH0,RDTIME ;再读TH0,与上次 ;读入的TH0比较,若不等,重读

MOV R1,A
RET

;存TH0在R1中

END

图6–1 定时器/计数器T0、T1的内部结构框图

图6–2 方式0时,定时器/计数器T0、T1的逻辑结构图

图6–3 方式1时,定时器/计数器T0、T1的逻辑结构图

图6–4 方式2时定时器/计数器T0、T1的结构简图

图6–5 定时器/计数器T0方式3时的逻辑结构图

图6–6

定时器/计数器T0方式3时,T1的逻辑结构图

图6–7 定时器/计数器T2的捕获方式

图6–8 定时器/计数器T2的自动重装载方式

图6–9 定时器/计数器T2的波特率发生器方式

图6–10

监视定时器T3

图6–12 利用定时器/计数器测脉冲周期

表6–1定时器/计数器的工作方式

M1 M0 工作方式 计数器配置 0 0 0 方式0 1 方式1 13位计数器 16位计数器

1
1

0 方式2
1 方式3

自动重装载的8位计数器
T0分为两个8位计数器,T1停止 计数

表6–2 定时器/计数器T2的工作方式

RCLK+TCLK 0 0 1 ×

CP/RL2 0 1 × ×

TR2 1 1 1 0

工作方式 自动重装载方式 捕获方式 波特率发生器方式 关闭


网站首页 | 网站地图 | 学霸百科 | 新词新语
All rights reserved Powered by 大学生考试网 9299.net
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@qq.com