写一个C语言按键控制流水灯程序,要求:89C52单片机,流水灯转动时按一次按键流水灯随机停留在第2

写一个C语言按键控制流水灯程序,要求:89C52单片机,流水灯转动时按一次按键流水灯随机停留在第2,4,6的任意Led上。

第1个回答  2015-05-12
你是做摸奖器啊追问

不全是,摸奖器没那简单

追答

那有什么同意吗

总共多少个LED

追问

我的另一个问题更象摸奖器,但要做真的摸奖哭还必须增加一个概率问题,

我新手,花一个多星期没做成摸奖器

追答

#include
#define uint unsigned int
#define uchar unsigned char
uchar a; //随机数
uint b;
uchar c;
uchar d;
bit e;

sbit k1=P3^2;
sbit k2=P3^3;
sbit k3=P3^4;

uchar led[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=114;y>0;y--)
{ a++; if(a>8){a=0;}}

}

void main()
{
while(1)
{
b++;
if(b>1500){c++;b=0;}
if(c>7){c=0;}
P0= led[c];

if(k1==0){delay(50);if(k1==0){e=~e;}}
while(e)
{ if(a==0){P0=led[2];}; if(a==5){P0=led[2];};if(a==2){P0=led[2];};
if(a==1){P0=led[4];}; if(a==7){P0=led[4];};if(a==4){P0=led[4];};
if(a==3){P0=led[6];}; if(a==8){P0=led[6];};if(a==6){P0=led[6];};

if(k1==0){delay(50);if(k1==0){e=~e;}}
}

}
}

追问

喀…传说中的大神吗!哪么快,咋感觉这个问题么多了点啥。那问题又少了点啥!一会儿下班测试下⋯谢了!

追答

别这么说大家一起讨论问题,

你先试,有问题再一起讨论

追问

喀…我这居然通不过、貌似小错误,括号吗?

追答

不是能编译出来吗

我这边都能用

追问

我的Kei𠃊不是正版,两个电脑都出不来,第23行括号前加加return 0 ;才行,不知为什么

追答

你的QQ多少我发个KEILL 给你

还有应用两个按键控制稳定点

#include
#define uint unsigned int
#define uchar unsigned char
uchar a; //随机数
uint b;
uchar c;
uchar d;
bit e;

sbit k1=P3^2;
sbit k2=P3^3;
sbit k3=P3^4;

uchar led[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
/*
delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=114;y>0;y--)
{ ;}

}
*/

void main()
{
while(1)
{ a++; if(a>8){a=0;}
b++;
if(b>1500){c++;b=0;}
if(c>7){c=0;}
P0= led[c];

if(k1==0){e=1;}
while(e)
{ if(a==0){P0=led[2];}; if(a==5){P0=led[2];};if(a==2){P0=led[2];};
if(a==1){P0=led[4];}; if(a==7){P0=led[4];};if(a==4){P0=led[4];};
if(a==3){P0=led[6];}; if(a==8){P0=led[6];};if(a==6){P0=led[6];};

if(k2==0){e=0;}
}

}
}

追问

69285429 谢谢

亲,真棒。如果k3按一下停在1、7、8的任意一个灯的话应该怎么写呀!

K1和k2还像刚才一样

这样的答案20分真太少了

修改貌似k3不能用!喀,啥情况

追答

k3本来就没有做进去

你改哪里了发到我的Qq上去

你改哪里了发到我的Qq上去

追问

我改了下,做进去了,1,7灯能用,8出来全乱码

追答

怎么样能用了吗

追问

正在试,刚写进去,不错呀!高手!^_^

最小系统

手机号多少!再给你充十元话费!

追答

晕到,不用了,

这种LED功率很大的,小心搞烧掉

追问

Led80ma。 单片输出20ma,极限不超40ma,应该行,我今天测试单粒亮了半天没事,单片机据说可以到100度以上,应该没问题,测试几天再说,我买了50片。够他烧几回的。哈哈

追答

这个很刺眼的

追问

是呀大概0,5W

不过接单片机貌似不到这个功率

追答

没事,先玩着吧,反正这个都便宜,

本回答被提问者采纳
第2个回答  2015-05-12
原理图有没有。追问

设有,发挥一下

设有,发挥一下

相似回答