//The code to turn off/on all LED's is still not quite right.
#include <IRremote.h>
#define IR_RECEIVE_PIN 10 // Signal Pin of IR receiver
bool pinState = LOW;
void setup() {
Serial.begin(115200);
while (!Serial);
IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK); // Start the receiver
Serial.println("Starting Serial Port");
for (int pin = 31; pin <= 40; pin++) {
pinMode(pin, OUTPUT);
digitalWrite(pin, LOW);
Serial.print("Setting pin ");
Serial.print(pin);
Serial.println(" as an OUTPUT, LOW pin.");
}
}
void loop() {
if (IrReceiver.decode()) {
//Serial.println(IrReceiver.decodedIRData.decodedRawData, DEC); // Print "old" raw data
translateIR();
//IrReceiver.printIRResultShort(&Serial); // Print complete received data in one line
//IrReceiver.printIRSendUsage(&Serial); // Print the statement required to send this data
IrReceiver.resume(); // Enable receiving of the next value
}
}
void translateIR() {
// Takes command based on IR code received
Serial.print(IrReceiver.decodedIRData.command);
Serial.print(": ");
switch (IrReceiver.decodedIRData.command) {
case 162:
Serial.println("POWER ");
Serial.println("POWER ");
for (int pin = 31; pin <= 40; pin++) {
digitalWrite(pin, HIGH);
Serial.println("Setting all LED's to " ? "off" : "on");
}
delay(1000);
for (int pin = 31; pin <= 40; pin++) {
digitalWrite(pin, LOW);
Serial.println("Setting all LED's to " ? "off" : "on");
}
break;
case 226:
Serial.println("MENU");
break;
case 34:
Serial.println("TEST");
break;
case 2:
Serial.println("PLUS");
break;
case 194:
Serial.println("BACK");
break;
case 224:
Serial.println("PREV.");
break;
case 168:
Serial.println("PLAY");
break;
case 144:
Serial.println("NEXT");
break;
case 104:
Serial.println("num: 0");
digitalWrite(40, HIGH);
Serial.print("Flashing LED 10 ");
Serial.println(digitalRead(40) ? "on" : "off");
delay(1000);
digitalWrite(40, LOW);
Serial.println(digitalRead(40) ? "on" : "off");
break;
case 152:
Serial.println("MINUS");
break;
case 176:
Serial.println("key: C");
break;
case 48:
Serial.println("num: 1");
digitalWrite(31, HIGH);
Serial.print("Flashing LED 1 ");
Serial.println(digitalRead(31) ? "on" : "off");
delay(1000);
digitalWrite(31, LOW);
Serial.println(digitalRead(31) ? "on" : "off");
break;
case 24:
Serial.println("num: 2");
digitalWrite(32, HIGH);
Serial.print("Flashing LED 2 ");
Serial.println(digitalRead(32) ? "on" : "off");
delay(1000);
digitalWrite(32, LOW);
Serial.println(digitalRead(32) ? "on" : "off");
break;
case 122:
Serial.println("num: 3");
digitalWrite(33, HIGH);
Serial.print("Flashing LED 3 ");
Serial.println(digitalRead(33) ? "on" : "off");
delay(1000);
digitalWrite(33, LOW);
Serial.println(digitalRead(33) ? "on" : "off");
break;
case 16:
Serial.println("num: 4");
digitalWrite(34, HIGH);
Serial.print("Flashing LED 4 ");
Serial.println(digitalRead(34) ? "on" : "off");
delay(1000);
digitalWrite(34, LOW);
Serial.println(digitalRead(34) ? "on" : "off");
break;
case 56:
Serial.println("num: 5");
digitalWrite(35, HIGH);
Serial.print("Flashing LED 5 ");
Serial.println(digitalRead(35) ? "on" : "off");
delay(1000);
digitalWrite(35, LOW);
Serial.println(digitalRead(35) ? "on" : "off");
break;
case 90:
Serial.println("num: 6");
digitalWrite(36, HIGH);
Serial.print("Flashing LED 6 ");
Serial.println(digitalRead(36) ? "on" : "off");
delay(1000);
digitalWrite(36, LOW);
Serial.println(digitalRead(36) ? "on" : "off");
break;
case 66:
Serial.println("num: 7");
digitalWrite(37, HIGH);
Serial.print("Flashing LED 7 ");
Serial.println(digitalRead(37) ? "on" : "off");
delay(1000);
digitalWrite(37, LOW);
Serial.println(digitalRead(37) ? "on" : "off");
break;
case 74:
Serial.println("num: 8");
digitalWrite(38, HIGH);
Serial.print("Flashing LED 8 ");
Serial.println(digitalRead(38) ? "on" : "off");
delay(1000);
digitalWrite(38, LOW);
Serial.println(digitalRead(38) ? "on" : "off");
break;
case 82:
Serial.println("num: 9");
digitalWrite(39, HIGH);
Serial.print("Flashing LED 9 ");
Serial.println(digitalRead(39) ? "on" : "off");
delay(1000);
digitalWrite(39, LOW);
Serial.println(digitalRead(39) ? "on" : "off");
break;
default:
Serial.print(IrReceiver.decodedIRData.command);
Serial.println(": other button");
}
}