单片机如何一个按钮实现控制4个led灯的循环闪烁

2024-10-30 22:17:24
推荐回答(2个)
回答(1):

0 0
1 1
1 0
0 1
是这样的四种状态吗? 这样很简单的,, 主要还是检测按键, 按键按下 你把一个变量+1, 比如
if(Key == 0)

{
delay(); //延时10ms,延时函数 自己写吧

if(Key == 0)

{
num++;

if(num >= 4)

num = 0;
while(!Key);

}
}
然后根据num 的值 对Led进行状态刷新就好了。
switch(num)
{
case 0: Led1 = 1; Led2 = 0; break;

case 1: Led1 = 0; Led2 = 1; break;

case 2: Led1 = 0; Led2 = 0; break;

case 3: Led1 = 1; Led2 = 1; break;

default : break;

}
就可以了,,,顺序的话 可以按照具体要求更换下位置就可以了。

回答(2):

sbit key = P1_0; sbit led = P1_1; #define led_on 0 main() { while( key ) { led = ! led_on; } while