#include <IRremote.h>
#include <LiquidCrystal_I2C.h>
int recv_pin = 3;
int btn_value = 0;
IRrecv receiver(recv_pin);
LiquidCrystal_I2C lcd(0x27, 20, 4);
void setup() {
// put your setup code here, to run once:
receiver.enableIRIn();
lcd.init();
lcd.backlight();
Serial.begin(9600);
lcd.begin(20,4);
lcd.setCursor(0,1);
lcd.print("IR Sensor & Remote");
}
void loop() {
// put your main code here, to run repeatedly:
if (receiver.decode()){
translateIR();
receiver.resume();
}
}
int translateIR(){
btn_value = receiver.decodedIRData.command;
Serial.println(btn_value);
lcd.clear();
if(btn_value == 162){
lcd.setCursor(0,1);
lcd.print("POWER BUTTON");
}
if(btn_value == 226){
lcd.setCursor(0,1);
lcd.print("MENU BUTTON");
}
if(btn_value == 34){
lcd.setCursor(0,1);
lcd.print("TEST BUTTON");
}
if(btn_value == 2){
lcd.setCursor(0,1);
lcd.print("PLUS (+)");
}
if(btn_value == 194){
lcd.setCursor(0,1);
lcd.print("BACK BUTTON");
}
if(btn_value == 224){
lcd.setCursor(0,1);
lcd.print("PREVIOUS BUTTON");
}
if(btn_value == 168){
lcd.setCursor(0,1);
lcd.print("PLAY BUTTON");
}
if(btn_value == 144){
lcd.setCursor(0,1);
lcd.print("NEXT BUTTON");
}
if(btn_value == 152){
lcd.setCursor(0,1);
lcd.print("MINUS (-)");
}
if(btn_value == 104){
lcd.setCursor(0,1);
lcd.print("0");
}
if(btn_value == 48){
lcd.setCursor(0,1);
lcd.print("1");
}
if(btn_value == 24){
lcd.setCursor(0,1);
lcd.print("2");
}
if(btn_value == 122){
lcd.setCursor(0,1);
lcd.print("3");
}
if(btn_value == 16){
lcd.setCursor(0,1);
lcd.print("4");
}
if(btn_value == 56){
lcd.setCursor(0,1);
lcd.print("5");
}
if(btn_value == 90){
lcd.setCursor(0,1);
lcd.print("6");
}
if(btn_value == 66){
lcd.setCursor(0,1);
lcd.print("7");
}
if(btn_value == 74){
lcd.setCursor(0,1);
lcd.print("8");
}
if(btn_value == 82){
lcd.setCursor(0,1);
lcd.print("9");
}
if(btn_value == 176){
lcd.setCursor(0,1);
lcd.print("C");
}
}