满意答案
yivdi2o28
2014.05.15
采纳率:46% 等级:11
已帮助:4795人
#include<reg52.h>
#define uint unsigned int
sbit S1=P1^0;
sbit S2=P1^1;
sbit S3=P1^2;
sbit S4=P1^3;
sbit LED1=P1^4;
void delay(uint);
main()
{
S1 = 1;
S2 = 1;
S3 = 1;
S4 = 1;
while(1)
{
if(S1==0)
{
P2 = 0X00;
LED1 = 0;
delay(500);
P2 = ~P2;
LED1 = ~LED1;
delay(500);
};
if(S2==0)
{
P2 = 0Xc0;
delay(500);
P2 = 0xff;
LED1 = 1;
delay(500);
};
if(S3==0)
{
P2 = 0X07;
LED1 = 0;
delay(500);
P2 = 0XFF;
LED1 = 1;
delay(500);
};
if(S4==0)
{
P2 = 0X38;
LED1 = 0;
delay(500);
P2 = 0xff;
LED1 =1;
delay(500);
};
};
}
void delay(uint z)
{
uint x, y;
for(x=85; x>0; x--)
for(y=z; y>0; y--);
}
具体还要看你单片机和LED引脚的连线,原理大概就是上面那样了,可以下载到机子验证。
00分享举报