#include <IRremote.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int signal=10;
int data;
#define signal 10
#define num1 48
#define num2 24
#define num3 122
#define num4 16
#define num5 56
#define num6 90
#define num7 66
#define num8 74
#define num9 82
#define test 34
#define menu 226
#define arrow 194
#define plus 2
#define minus 152
#define forward 224
#define backward 144
#define pause 168
#define power 162
#define zero 104
#define c 176
void setup()
{
Serial.begin(9600);;
IrReceiver.begin(signal);
lcd.init();
lcd.backlight();
lcd.print("enter any button");
}
void loop()
{
if (IrReceiver.decode())
{
// Serial.println(IrReceiver.decodedIRData.command);
IrReceiver.resume();
data=IrReceiver.decodedIRData.command;
switch(data)
{
case num1:
lcdprint("num1");
break;
case num2:
lcdprint("num2");
break;
case num3:
lcdprint("num4");
break;
case num4:
lcdprint("num4");
break;
case num5:
lcdprint("num5");
break;
case num6:
lcdprint("num6");
break;
case num7:
lcdprint("num7");
break;
case num8:
lcdprint("num8");
break;
case num9:
lcdprint("num9");
break;
case power:
lcdprint("power");
break;
case menu:
lcdprint("menu");
break;
case test:
lcdprint("test");
break;
case forward:
lcdprint("forward");
break;
case backward:
lcdprint("backward");
break;
case pause:
lcdprint("pause");
break;
case plus:
lcdprint("plus");
break;
case minus:
lcdprint("minus");
break;
case arrow:
lcdprint("arrow");
break;
case c:
lcdprint("c");
break;
case zero:
lcdprint("zero");
break;
}
}
}
void lcdprint(char*display)
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("pressed button:");
lcd.setCursor(0,1);
lcd.print(display);
lcd.print(" code:");
lcd.print(data);
}