XIAOBAI 发表于 2014-10-27 15:10:49

帮忙!

#include <IRremote.h>

int RECV_PIN = 11;   //红外线接收器OUTPUT端接在pin 11
int LED1 = 10;      // 定义LED引脚为10
IRrecv irrecv(RECV_PIN);   // 定义IRrecv 对象来接收红外线信号
decode_results results;   //解码结果放在decode_results构造的对象results里
void irdisplay(unsigned long value)//按下按键后,显示本遥控对应的按键
{
switch(value){         //判定按下的是哪个按键,串口显示按钮名称
case 0xFFA25D:
    Serial.println("POWER");
    digitalWrite(LED1, LOW);    //电源键按下,执行关闭LED灯
    break;
case 0xFF629D:
    Serial.println("Mode");
    break;
case 0xFFE21D:
    Serial.println("MUTE");
    digitalWrite(LED1, HIGH);      //静音键按下,执行点亮LED灯
    break;
case 0xFFA857:
    Serial.println("-");

    break;
case 0xFF906F:
    Serial.println("+");
    break;
      }
}

void setup()
{
pinMode(LED1,OUTPUT);          // 定义LED为输出引脚
   Serial.begin(9600);          //开启串口通信,并设定波特率为9600
irrecv.enableIRIn();          //启动红外解码
}
void loop() {
if (irrecv.decode(&results))
{
    //解码成功,收到一组红外线信号
    irdisplay(results.value);   
    irrecv.resume();         
}

}







void loop()
{
for (int a=0; a<=255;a++)                //循环语句,控制PWM亮度的增加
{
    analogWrite(11,a);
    delay(8);                           //当前亮度级别维持的时间,单位毫秒            
}
    for (int a=255; a>=0;a--)             //循环语句,控制PWM亮度减小
{
    analogWrite(11,a);
    delay(8);                           //当前亮度的维持的时间,单位毫秒
}
delay(800);                           //完成一个循环后等待的时间,单位毫秒
}




如何将下面这个程序的效果用上面的“—"和"+"按键控制!
谢谢!

XIAOBAI 发表于 2014-10-27 15:11:55

求帮忙!:handshake
页: [1]
查看完整版本: 帮忙!