#include <IRremote.h>
int IR_input=9;
IRrecv IR_fly(IR_input);
int red=10;
int green=5;
int blue=3;
int led=2;
void setup() {
IR_fly.begin(IR_input);
Serial.begin(9600);
pinMode(red, OUTPUT);
pinMode(green, OUTPUT);
pinMode(blue, OUTPUT);
pinMode(led, OUTPUT);
// put your setup code here, to run once:
}
void set_color(int red_v,int green_v,int blue_v)
{
analogWrite(red,red_v);
analogWrite(green,green_v);
analogWrite(blue,blue_v);
}
void loop() {
if(IR_fly.decode())
{
verify();
IR_fly.resume();
}
// put your main code here, to run repeatedly:
}
void verify()
{
switch(IR_fly.decodedIRData.command)
{
case 162:
monitor("POWER ");
digitalWrite(led, LOW);
delay(1000);
break;
case 226:
digitalWrite(led,HIGH);
case 48:
set_color(0,255,0);
break;
case 24:
set_color(0,0,255);
break;
case 122:
set_color(128,0,0);
break;
case 16:
set_color(255,255,0);
break;
case 56:
set_color(128,0,0);
break;
default:
monitor("OTHER ");
set_color(0,0,0);
break;
}
}
void monitor(char*button_name)
{
Serial.print(button_name);
Serial.println("button is pressed");
Serial.print("code:");
Serial.println(IR_fly.decodedIRData.command);
}