第1个回答 2017-11-14
#include<reg51.h>
#define uchar unsigned char
sbit k1=P1^0;
sbit k2=P1^1;
sbit k3=P1^2;
sbit k4=P1^3;
sbit led1=P1^4;
sbit led2=P1^5;
sbit led3=P1^6;
sbit led4=P1^7;
void delay1s(int a)
{
uchar i,j;
while(a--)
for(i=0;i<60;i++)
for(j=0;ij<120;j++);
}
main()
{
uchar keyval=0;
while(1)
{
if(k1==0)
{
while(k1==0);
keyval=1;
}
if(k2==0)
{
while(k2==0);
keyval=2;
}
if(k3==0)
{
while(k3==0);
keyval=3;
}
if(k4==0)
{
while(k4==0);
keyval=4;
}
switch(keyval)
{
case 1:led1=0;delay(1);led1=1;keyval=0;break;
case 2:led2=0;delay(300);led2=1;keyval=0;break;
case 3:led3=0;delay(600);led3=1;keyval=0;break;
case 4:led4=0;delay(900);led4=1;keyval=0;break;
default:break;
}
}
}本回答被提问者和网友采纳