标题: 51单片机流水灯问题 [打印本页]

作者: 小车滚轮子    时间: 2015-3-13 21:24
标题: 51单片机流水灯问题
#include<reg52.h>
#define uchar unsigned char
uchar i,j,z,tt,num;
uchar code table[]={
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0x01
};
void delay(uchar z)
{
        for(i=z;i>0;i--)
        for(j=110;j>0;j--);
}
void main( )
{
                while(1)
             {       
                        if(table!=0x01)
                        {       
                                P1=table;
                                i++;
                                delay(200);                                    
                        }
                        else
                                i=0;
                 }
        }
我调试的时候,为什么P1一直是0xfe, 却不读0xfd,0xfd......
只想问明白这个点。

作者: liaolinhui    时间: 2015-3-15 11:02
P1=table;改成P1=table[i];
作者: dingmingzhou    时间: 2015-3-20 23:55
你要根据数组元素的个数加for循环驱动
作者: zihabi    时间: 2015-3-21 10:30
你要让table[]循环起来,在for循环中要给下标i
作者: 李伟1991    时间: 2015-3-30 18:50
楼主 这C语言学的有点  有待加强啊
作者: dream7726    时间: 2015-3-30 22:37
while(1)
作者: dream7726    时间: 2015-3-30 22:40
for(i=0;i<17;i++)  {  P1=table[i];  }
作者: aa1106574009    时间: 2016-12-19 10:35
while

作者: 那个那个    时间: 2016-12-19 13:25
  P1=table[i]
作者: wbjhao    时间: 2016-12-19 13:44
没有设置进行循环
作者: hylingzhi    时间: 2016-12-19 15:22
先把P1改成 P1 = TABLE[I]




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1