单片机定时器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条回答
晓洁伴书生
1楼-- · 2019-07-17 00:20
哈哈,还真是,不过程序这东西,往往会忽略这个小错误而看不到的
留恋忘返
2楼-- · 2019-07-17 06:11
 精彩回答 2  元偷偷看……
702095693
3楼-- · 2019-07-17 11:41
我看到这个程序还在想为什么这要加个分号啊?原来是个错误……哈哈
3312856
4楼-- · 2019-07-17 12:44
初学是会碰到很多问题,随着问题的一个个解决,进步会很明显。
ntmusic
5楼-- · 2019-07-17 17:58
即使没有那个分号,你的程序应该也没办法实现你需要的功能吧
狂客
6楼-- · 2019-07-17 23:33
我有个问题,时间好像没控制好吧。还 有,那个时间中断就算没有,i   还在++吧。求高手解决我的疑问。

一周热门 更多>