单片机/MCU论坛
直播中

崔成浩的哥哥

11年用户 19经验值
擅长:嵌入式技术 控制/MCU
私信 关注
[文章]

【求助】大神帮我看看这个彩灯的程序为什么不行啊

#include
#define uint unsigned int
#define uchar unsigned char
uchar code table[]={
        0xff,0xe7,0xc3,0x81,0x00,       //从中间向两侧点亮
        0xff,0xe7,0xc3,0x81,0x00,
        0xff,0x7e,0x3c,0x18,0x00,        //从两侧向中间点亮
        0xff,0x7e,0x3c,0x18,0x00,
        0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,        //循环左移
        0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,
        0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,        //循环右移
        0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,
        0x01
};


void delay(uint z)
{
        uint x,y;
        for(x=z;x>0;x--)
                for(y=120;y>0;y--);
}


void main()
{
        uint i;
        while(1)
        {
                if(table!=0x01)
                {
                        P1=table[1];
                        i++;
                        delay(1000);
                }
                else
                {
                        i=0;
                }
        }
}

回帖(8)

张三

2012-11-19 12:19:39
把 i 设置为全局变量或者静态变量。
举报

姜小文

2012-11-19 12:46:19
举报

林一明

2012-11-19 16:57:54
P1=table[1];
这个地方应该是要写P1=table【i】;的吧
举报

lstcspring

2012-11-19 21:39:08
楼上正解,程序有笔误
举报

崔成浩的哥哥

2012-11-19 21:48:47
引用: one明 发表于 2012-11-19 16:57
P1=table[1];
这个地方应该是要写P1=table【i】;的吧

正解啊。谢谢哥们哈{:soso_e183:}。是我自己没检查到这个错误。{:soso_e117:}
举报

崔成浩的哥哥

2012-11-19 21:50:01
引用: lstcspring 发表于 2012-11-19 21:39
楼上正解,程序有笔误

3Q。{:soso_e113:}
举报

肖华军

2012-11-19 22:48:21
注意细节
举报

崔成浩的哥哥

2012-11-20 20:05:38
引用: sugar2121103 发表于 2012-11-19 22:48
注意细节

3Q{:soso_e181:}
举报

更多回帖

×
20
完善资料,
赚取积分