小白来问个关于中断的问题

2019-07-15 14:52发布

题目是这样的:利用定时/计数器T0从P1.0输出周期为1s的方波,让发光二极管以1HZ闪烁,设晶振频率为12MHz。

程序仿真后发现io口狂闪不止 怎么回事。。。



#include<reg52.h>
int i;
sbit led=P1^0;               
       



void main()
{

          TMOD=0x01;
          TH0=0x3c;
      TL0=0xb0;
          ET0=1;
          TR0=1;
          EA=1;       
          TF0=0;
          i=0;

while(1)

{
         if(i==10);
           {
                led=~led;
                i=0;
                }
  }          
          
}                 


    void duan() interrupt 1
   {
      TH0=0x3c;
      TL0=0xb0;
   i++;

   }


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
525355
1楼-- · 2019-07-15 18:30
你把i改成100试试,另外你应该计算一下i到底该是多少?……
tom253261024
2楼-- · 2019-07-15 22:24
525355 发表于 2016-3-4 08:44
你把i改成100试试,另外你应该计算一下i到底该是多少?……

解决了   原来吧if(i==10);的分号去掉就好了。。。。
18372561021
3楼-- · 2019-07-16 04:17
平时的注意呀,小问题大错误
525355
4楼-- · 2019-07-16 05:59
 精彩回答 2  元偷偷看……

一周热门 更多>