当前位置: 代码迷 >> 单片机 >> 精确定时LED一秒闪烁 求指教解决方法
  详细解决方案

精确定时LED一秒闪烁 求指教解决方法

热度:75   发布时间:2016-04-28 16:08:18.0
精确定时LED一秒闪烁 求指教
我用的是铁牛单片机,晶振12MHz。在学习了小宋老师的定时器学习的教程之后,针对我的板子写了个定时一秒闪烁的程序。



但是闪烁频率好快,明显快于一秒了。求解答恩。

程序如下:


#include<stdio.h>
 #include<reg52.h>
 typedef unsigned char unit8;
 typedef unsigned int unit16;


 sbit led=P2^0;
 main()
 { 
  unit16 counter=0;
  led=0;
  TMOD=0x10;
TR1=1;
TH1=0x00;
TL1=0xe0;
while(1)
{
if(TF1==1)
{ TH1=0xfc;
TL1=0x67;
counter++;
TF1=0; }
 

if(counter==50)

led=~led;
counter=0;
}
 

}

 
 }

------解决方案--------------------
他用定时器T1,计数初值0FC67H,定时时间400微秒离20毫秒差远了,所以闪的快
  相关解决方案