标题:
单片机定时器程序的问题
[打印本页]
作者:
adsafs
时间:
2020-8-26 16:39
标题:
单片机定时器程序的问题
11.0592M晶振,我设置的时间是1ms',但每次刷新到TF0=0用时都是71ms,求大佬帮忙解答
#include<reg52.h>
sbit led=P2^0;
int main(void)
{
unsigned int i;
led=0;
TMOD=0X01;
TH0=0XFC;
TL0=0X67;
TR0=1;
while(1)
{
if(TF0==1)
{
TF0=0;
T0=0XFC67;
i++;
if(i>=1000)
{
led=~led;
i=0;
}
}
}
}
作者:
xianfajushi
时间:
2020-8-26 19:48
中断函数重新赋值
作者:
wulin
时间:
2020-8-26 21:11
本帖最后由 wulin 于 2020-8-27 20:18 编辑
#include<reg52.h>
sbit led=P2^0;
int main(void)
{
unsigned int i;
led=0;
TMOD=0X01;
TH0=0XFC;
TL0=0X67;
TR0=1;
while(1)
{
if(TF0==1)
{
TF0=0;
TH0=0XFC;
TL0=0X67;
i++;
if(i>=1000)
{
led=~led;
i=0;
}
}
}
}
作者:
塞北江南
时间:
2020-8-27 11:16
51定时器有8位与16位的,8位他最大定时是256,可以写成T0=0x00-0xff;16位最大定时是65536,由于其每个寄存器是8位的,所以将其折分成了高8位与低8位,因此你那个0XFC67,要折分成高8位TH0=0XFC;低8位TL0=0X67;最好你将视频再好好好看看,啥都明白了
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1