怎么用51定时器延时?找了很久,都没有,自己写了个,有问题.

2020-01-27 11:46发布

怎么实现不了呢?帮忙看看多谢!

void timer0_init(void)  
{
TMOD |=0x01;    //MODEL1,timer  
TH0=0xdC;             //定时10ms
  TL0=0x00;
  ET0=1;             //中断使能
TR0=1;                 //关闭定时器0
}

void T0_OverFlow(void) interrupt 1 //定时器0溢出中断,延时10ms
{
TH0=0xDC;
TL0=0x00;
  Time++;
  if(Time==50)
  {
    TR0=0;
     Time=0;
   }

void Delay_s(Uchar Num)
{
    while(TR0==0)
   {
    for(;Num>=0;Num--);
    TR0=1;
   }
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。