#include <IRremote.h>
const byte IR_RECEIVE_PIN=2;
#define RED 3
#define ORANGE 4
#define GREEN 5
volatile boolean ledON=false;
void setup() {
Serial.begin(115200);
Serial.println("IR RCEIVE TEST");
IrReceiver.begin(IR_RECEIVE_PIN,ENABLE_LED_FEEDBACK);
pinMode(RED, OUTPUT);
pinMode(ORANGE, OUTPUT);
pinMode(GREEN, OUTPUT);
attachInterrupt(0,buttonPressed,RISING);
}
void loop()
{
}
void buttonPressed()
{
if (IrReceiver.decode())
{
String ir_code=String(IrReceiver.decodedIRData.command,HEX);
Serial.println(ir_code);
if(ir_code=="30")
{
ledON=true;
digitalWrite(GREEN,1);
digitalWrite(RED,0);
digitalWrite(ORANGE,0);
}
else if(ir_code=="18")
{
ledON=true;
digitalWrite(GREEN,0);
digitalWrite(RED,0);
digitalWrite(ORANGE,1);
}
else if (ir_code=="7a")
{
ledON=true;
digitalWrite(GREEN,0);
digitalWrite(RED,1);
digitalWrite(ORANGE,0);
}
IrReceiver.resume();
}
}