迷你强 发表于 2013-6-24 09:36
程序,还是程序逻辑的问题
#include <IRremote.h>
int RECV_PIN = 11;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); //初始化红外遥控
pinMode(12,1);
}
void loop() {
if (irrecv.decode(&results))
{
switch (results.value)
{
case 16724175: //按键1,开灯
{
digitalWrite(12,1); //点亮LED
Serial.println("turn on LED"); //串口显示开灯
break;
}
case 16738455: //按键2 熄灭
{
digitalWrite(12,0); //熄灭LED
Serial.println("turn off LED"); //串口显示关灯
break;
}
case 16718055: //按键3 闪烁
{
while(1)
{
digitalWrite(12,1);
delay(300);
digitalWrite(12,0);
delay(300);
}
break;
}
}
irrecv.resume(); // 接收下一个值
}
}
我想用按键控制灯泡的亮,灭和闪烁。。。但是,我按了3键后,灯闪烁,如果我再按2键让熄灭时,熄灭不了了。。一直闪烁,你帮我看一下如果修改呢?谢谢啦 |