标题: 用定时器实现精确延时一分钟 [打印本页]

作者: admin    时间: 2010-1-2 19:13
标题: 用定时器实现精确延时一分钟

/*-----------------------------------------------
注:1.硬件应使用12MHz晶振;
    2.程序使用定时器0,溢出周期50ms,然后通过软件计数器
一分钟后发光管灯灭,然后一分钟又亮周而复始
-------------------------------------------------*/

#include<reg52.h>

sbit P00=P0^0;
sbit P14=P1^4;

unsigned char Count=0;
unsigned char Half_Min=0;

void main()
{
P00=0;
 P14=0;
 TMOD=0x01;
 TH0=0x3C;
 TL0=0xB0;
 ET0=1;
 EA=1;
 TR0=1;
 
 while(1);
}


void timer_0() interrupt 1
{
 TH0=0x3C;
 TL0=0xB0;
 
 Count++;

 if(Count>19)     //大于19则为1s
    {Half_Min++;
     Count=0;

 

    if(Half_Min>=60) //60秒
  {
      P00=~P00;
  Half_Min=0;
  }
        }
}






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1