最容易理解的写法:
设置b1、b2、b3、reset四个按钮(按下为0)和对应的LED1、LED2、LED3三个灯(点亮为0)
int reset, b1,b2,b3,LED1,LED2,LED3;
while(1)
{
(读取reset)
if(reset==0)
{
LED1=LED2=LED3=1;
read=1;
}
if(read==1)
{
(读取b1, b2, b3);
if(b1==0)
{
LED1=0;
read=0;
}
elseif(b2==0)
{
LED2=0;
read=0;
}
elseif(b3==0)
{
LED3=0;
read=0
}
else LED1=LED2=LED3=1;
}
}
追问我试一试
追答不一定对哈……我没玩过单片机……
追问开头怎么写的

衔接这个
追答那个我就真不知道了……应该是设置引脚之类的吧……并没有玩过……
追问
这样可以么
追答你在电脑上看……就是定义几个变量而已……不是别的。而且我觉得你可能需要设置引脚什么的。
追问那怎么玩
追答这个……你可能要查一下单片机开头怎么编……貌似是有一些说法的。而且我好像忘记输出了……
追问试了,不得行。。。
追答怎么呢?我看看程序。
追问
老师说设置引脚是这样的,你再看看
追答应该是这样的,你写输出了吗?
追问没有
怎么写
追答……
你等一会儿
sbit b1=P3^4;
sbit b2=P3^5;
sbit b3=P3^6;
sbit rst=P3^7;
sbit l1=P3^4;
sbit l2=P3^5;
sbit l3=P3^6;
l1=l2=l3=1;
int main()
{
unsigned char read;
while(1)
{
if(rst==0)
{
l1=l2=l3=1;
read=1;
}
if(read==1)
{
if(b1==0)
{
l1=0;
read=0;
}
if(b2==0)
{
l2=0;
read=0;
}
if(b3==0)
{
l3=0;
read=0
}
}
return 0;
}
改一下6~8行,那是led的口,写错了