询问keil编流水灯的问题,有程序,求找错

2019-07-16 03:02发布

目前程序如下,显示没有错误,但是下载到51上之后8个灯全亮。。。
#include<reg52.h>
unsigned char table[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
void delay()
{
  unsigned int j;
  for(j=0;j<20000;j++);
}
main()
{
unsigned char i;
while(1)
  {
    for(i=0;i<8;i++);
{   
  P1=table[i];   
  delay();  
  }
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
in发烧友ing
2019-07-16 08:55
你好,这位朋友,刚看到你这个问题我也很白痴的去调试,也想不通!
后来真感到惭愧!
只是一个很小很小的错误而已。
就是if语句后面多加了一个分号,if语句一旦加了分号,那后面的语句就不包括在if语句里了
,也就是说if循环就不起任何作用了,把分号去掉就行了!
这种小错误,希望楼主以后自己能检查出来,不然学这个就没什么意思了……

#include<reg52.h>
unsigned char table[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
void delay()
{
  unsigned int j;
  for(j=0;j<20000;j++);
}
main()
{
unsigned char i;
while(1)
  {
    for(i=0;i<8;i++);
{   
  P1=table;   
  delay();  
  }
}
}

一周热门 更多>