单片机定时器while(1)应用

2019-07-16 01:19发布

#include<reg52.h>
sbit FM=P2^3;
void Init_timer(void)
{
  TMOD|=0X01;
  TH0=0Xff;
  TL0=0Xfc;
EA=1;
ET0=1;
TR0=1;                    
}
void main()
{
  int i;
Init_Timer();
while(1);
{
   for(i=0;i<=20;)
     { if(TF0==1)
        {
                 TF0=0;
            TH0=0Xff;
            TL0=0Xfc;

        }
          i++;
     }
}


}
void Timer_isr(void) interrupt 1 using 3
{       
          TH0=0Xff;
      TL0=0Xfc;
          
          FM=~FM;

}   为什么它不执行while(1)里面的语句呢,,,,我想让它循环20次,,,定时1s


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
lovezxy
1楼-- · 2019-07-16 05:38
while(1);
条件为真,永远停在这里了,
要把分号去掉。。。
西林落叶
2楼-- · 2019-07-16 08:19
真的是非常感谢,,,,没注意那个分号;呵呵   感谢!!
hsir__
3楼-- · 2019-07-16 11:51
 精彩回答 2  元偷偷看……
heishe
4楼-- · 2019-07-16 16:18
呵呵,我也有过这样的错误
gzh_soul
5楼-- · 2019-07-16 18:15
初学者经常会遇到这样的事,我也是过来人。哈哈。
morethanthe
6楼-- · 2019-07-16 22:02
{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}{:9:}

一周热门 更多>