#include <IRremote.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C LCD(0x27,20,4);
#define IR_RECEIVE_PIN 6
decode_results results;
const int redPin =2 ;
void setup(){
IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK);
Serial.begin(9600);
pinMode(redPin, OUTPUT);
LCD.init();
LCD.backlight();
LCD.begin(16,2);
}
void loop(){
if (IrReceiver.decode())
{
translateIR();
IrReceiver.resume();
}
}
void translateIR()
{
// Takes command based on IR code received
switch (IrReceiver.decodedIRData.command) {
case 162:
LCD.print("POWER");
break;
case 226:
LCD.print("MENU");
break;
case 34:
LCD.print("TEST");
break;
case 2:
LCD.print("PLUS");
break;
case 194:
LCD.print("BACK");
break;
case 224:
LCD.print("PREV.");
break;
case 168:
LCD.print("PLAY");
break;
case 144:
LCD.print("NEXT");
break;
case 104:
LCD.print("num: 0");
break;
case 152:
LCD.print("MINUS");
break;
case 176:
LCD.print("key: C");
break;
case 48:
LCD.print("num: 1");
break;
case 24:
LCD.print("num: 2");
break;
case 122:
LCD.print("num: 3");
break;
case 16:
LCD.print("num: 4");
break;
case 56:
LCD.print("num: 5");
break;
case 90:
LCD.print("num: 6");
break;
case 66:
LCD.print("num: 7");
break;
case 74:
LCD.print("num: 8");
break;
case 82:
LCD.print("num: 9");
break;
default:
LCD.clear();
LCD.print(IrReceiver.decodedIRData.command);
LCD.print(" other button");
}}