#include <IRremote.h>
#include <LiquidCrystal.h>
IRrecv receiver(0);
LiquidCrystal lcd = LiquidCrystal(12, 11, 10, 9, 8, 7);
void setup() {
lcd.begin(16, 2);
lcd.setCursor(4, 1);
lcd.print("Welcome");
receiver.enableIRIn();
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
if(receiver.decode()){
translateIR();
receiver.resume();
}
}
void lcdPrint(char* text){
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Button Pressed :");
lcd.setCursor(0, 1);
lcd.print(text);
lcd.print(" Code :");
lcd.print(receiver.decodedIRData.command);
}
void translateIR(){
switch(receiver.decodedIRData.command){
case 162:
lcdPrint("POWER");
break;
case 226:
lcdPrint("MENU");
break;
case 34:
lcdPrint("TEST");
break;
case 2:
lcdPrint("Plus");
break;
case 194:
lcdPrint("Back");
break;
case 224:
lcdPrint("Prev.");
break;
case 168:
lcdPrint("Play");
break;
case 144:
lcdPrint("Next ");
break;
case 104:
lcdPrint("Num 0");
break;
case 152:
lcdPrint("Minus");
break;
case 176:
lcdPrint("Key : C");
break;
case 48:
lcdPrint("num: 1");
break;
case 24:
lcdPrint("num: 2");
break;
case 122:
lcdPrint("num: 3");
break;
case 16:
lcdPrint("num: 4");
break;
case 56:
lcdPrint("num: 5");
break;
case 90:
lcdPrint("num: 6");
break;
case 66:
lcdPrint("num: 7");
break;
case 74:
lcdPrint("num: 8");
break;
case 82:
lcdPrint("num: 9");
break;
default:
lcd.setCursor(0, 1);
lcd.print("Please Enter the valid button");
}
}