51
单片机定时器使用——小灯闪?/p>
一、定时器工作方式设置
TMOD=0x01
GATE =0
?/p>
TR=1
控制开始计时;
C/ T=0
作为定时时器使用?/p>
M1=0\M0=1
用作
16
位定时器
二、计数寄存器
TH0\TL0
初始值计算如定时
0.02
?/p>
普?/p>
51
单片?/p>
12T
模式?/p>
(
一
)
手工计算
例如
晶振?/p>
10.6850MHZ
定时
20
毫秒
X/10.6850*1000000*12=20
毫秒
X=17808
原始?/p>
T0=Y Y+17808=65536 Y=47728
利用科学计算器进?/p>
16
进制转换?/p>
0Xb800 TH0=0x80 TL0=0x00
(二)单片机公式计算
T1MS=
?/p>
65536-1068500/12/1000)
//
计算定时
1ms
所需要定时的计数
?/p>
TL0=T1MS;//
初始化定时的计数初值(?/p>
8
位)
,高
8
位丢?/p>
TH0=T1MS>>8;//
将这个数右移
8
位,将高
8
位移至第
8
位的位置?/p>
(三)启动定时器
(TR0=1)
,判断是否溢?/p>
(If(TF0==1){//})
,时?/p>
到?/p>
(
?/p>
)
闪烁的小灯代?/p>
#include<REG51.h>
//P1 0
脚接
LED
小灯
sbit led=P1^0;