百度知道 - 信息提示
在51单片机中用c语言写程序实现用一个按键控制8个灯的亮和灭(按下按键灯亮,按下按键灯灭)
比如你的8个灯连在 P0口,如果是阴极的
你只要先定义
sbit P0^0=LED0;
.....一定定义下去
然后再定义一个按钮
比如P1.1
sbit P1^1=key;
代码里写
while(true){if(key==1){LED0=0;LED1=0;..//把你要亮的灯置0就行了。阳极的话置1}}
利用单片机控制八个led灯,要求:全亮全灭 ,四亮四灭,以从右到左的 流水形式编程,不是用c语言 编
#include
#define LED P0 /*宏定义LED接于P0口*/
void delay (int); /*声明延迟子函数*/
main()
{
int i;
while(1)
{
LED=0xfe;
for(i=0;i<7;i++)
{
delay(100);
LED=(LED<<1)|0x01; /*最低位LED灯左移一位后进行或运算使得最低位不会为“0”*/
}
for(i=0;i<7;i++)
{
delay(100);
LED=(LED>>1)|0x80; /*最低位LED灯右移一位后进行或运算使得最高位不会为“0”*/
}
LED=0xff;
for(i=0;i<4;i++)
{
delay(300);
LED=~LED; /*所有的LED灯取反全亮或者全灭*/
}
}
}