第六?/p>
MCS-51
的定时器
/
计数?/p>
1.MCS-51
系列?/p>
AT89C51
单片机内有几个定?/p>
/
计数器?每个?/p>
/
?/p>
数器有几种工作方式?如何选择和设定?当作定时器或计数器应?/p>
时,它们的速率分别为晶振频率的多少倍?
解:
AT89C51
单片机内?/p>
2
个定?/p>
/
计数器(?/p>
T0
?/p>
T1
)?/p>
T0
有四种工作方?/p>
(
方式
0
?/p>
13
位、方?/p>
1
?/p>
16
位、方?/p>
2-
可自
动装入初值的
8
位、方?/p>
3-
两个
8
?/p>
)
?/p>
T1
有三种工作方?/p>
(
?/p>
T0
相同的前三种
)
?/p>
选择和设定:通过?/p>
TMOD
的设置选择,其高四位选择
T1
,低四位
选择
T0
。其?/p>
M1,M2
用来确定所选的工作方式?/p>
当作定时器或计数器应用时?/p>
T0
?/p>
T1
的速率分别为晶振频率的
1/12,1/12
?/p>
2.
如果采用的晶振频率为
3MHz
,定?/p>
/
计数?/p>
T0
分别工作在方?/p>
0
?/p>
1
?/p>
2
下,其最大的定时时间各为多少?/p>
解:若晶振频率为
3MHz
?/p>
T=
?/p>
TM-TC
?/p>
12/fosc
?/p>
us
)可知,?/p>
?/p>
TC=0
方式
0
时:
Tmax=2^13*4us=32.768ms
方式
1
时:
Tmax=2^16*4us=262.144ms
方式
2
时:
Tmax=2^8*4us=1.024ms
3.
定时
/
计数?/p>
T0
作为计数器使用时,其计数频率不能超过晶振频率
的多少?
解:
由于定时
/
计数?/p>
TO
作为计数器使用时?/p>
是对外部引脚输入的脉
冲进行计数,
CPU
在每个机器周期采样一次引脚,当前一次采样为
高电平,后一次采样为低电平,则为一次有效计数脉冲,所以如果晶
振频率为
fosc
,则其采样频?/p>
fosc/12
,两次采样才能决定一次计?/p>
有效,所以计数频率不能超?/p>
fosc/24
?/p>
4.
简单说明定?/p>
/
计数器在不同工作模式下的特点?/p>
解:方式
0
?/p>
13
位的定时
/
计数器,?/p>
THx
?/p>
8
位和
TLx
的低
5
位构
成?/p>
方式
1
?/p>
16
位的定时
/
计数?/p>
,
?/p>
THx
?/p>
8
位和
TLx
?/p>
8
位构成,
方式
2
?/p>
8
位的定时
/
计数器,
TLx
为加
1
计数器,
THx
为计数初
值寄存器?/p>
方式
3
只能用于
T0
?/p>
是将
T0
的低
8
位用作一个独立的定时
/
计数
器,
而高
8
位的
TH0
用作一个独立的定时器,
并借用
T1
?/p>
TR1
?/p>
TF1
作为?/p>
8
位定时器的启停控制位和溢出标志位?/p>