#include <IRremote.h>
#define PIN_RECEIVER 2
IRrecv receiver(PIN_RECEIVER);
int x = 0;
int y = 0;
int z = 0;
int buttonPresed = 0;
void setup() {
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
receiver.enableIRIn();
}
void loop()
{
// Checks received an IR signal
if (receiver.decode()) {
switch (receiver.decodedIRData.command){
case 48:
digitalWrite(5,HIGH);
z = 1;
break;
case 16:
digitalWrite(5,LOW);
z = 0;
break;
case 24:
digitalWrite(4,HIGH);
y = 1;
break;
case 56:
digitalWrite(4,LOW);
y = 0;
break;
case 122:
digitalWrite(3,HIGH);
x = 1;
break;
case 90:
digitalWrite(3,LOW);
x = 0;
break;
case 162:
if (buttonPresed == 0 ){
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
buttonPresed = 1;
break;
}
if (buttonPresed == 1 ){
digitalWrite(3, x);
digitalWrite(4, y);
digitalWrite(5, z);
buttonPresed = 0;
break;
}
break;
}
receiver.resume(); // Receive the next value
}
}