#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); //address can be 0x27
#include <IRremote.h>
IRrecv remote(12);
decode_results code;
#define RED 9
#define GREEN 10
#define BLUE 11
void setup()
{
lcd.init();
lcd.backlight();
Serial.begin(9600);
remote.enableIRIn();
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
pinMode(11,OUTPUT);
lcd.setCursor(3,0);
lcd.print("Rowaa Shaer");
lcd.setCursor(0,1);
lcd.print("press remote key");
delay(3000);
}
void loop()
{
if(remote.decode(&code))
{
Serial.println(code.value);
if (code.value == 16738455) // code of key 0
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Key 0");
lcd.setCursor(4,1);
lcd.print("LED OFF");
for(int i=9;i<12;i++)
digitalWrite(i, 0);
}
if (code.value == 16724175) // code of key 1
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Key 1");
lcd.setCursor(4,1);
lcd.print("LED Red");
digitalWrite(RED, 1);
}
if (code.value == 16718055) // code of key 2
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Key 2");
lcd.setCursor(3,1);
lcd.print("LED Yellow");
digitalWrite(RED, 1);
digitalWrite(GREEN, 1);
}
if (code.value == 16743045) // code of key 3
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Key 3");
lcd.setCursor(3,1);
lcd.print("LED Green");
digitalWrite(GREEN, 1);
}
if (code.value == 16716015) // code of key 4
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Key 4");
lcd.setCursor(2,1);
lcd.print("LED Turqise");
digitalWrite(BLUE, 1);
digitalWrite(GREEN, 1);
}
if (code.value == 16726215) // code of key 5
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Key 5");
lcd.setCursor(4,1);
lcd.print("LED Blue");
digitalWrite(BLUE, 1);
}
if (code.value ==16734885 ) // code of key 6
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Key 6");
lcd.setCursor(3,1);
lcd.print("LED Purple");
digitalWrite(BLUE, 1);
digitalWrite(RED, 1);
}
if (code.value ==16728765 ) // code of key 7
{
lcd.clear();
lcd.setCursor(5,0);
lcd.print("Key 7");
lcd.setCursor(3,1);
lcd.print("LED White");
digitalWrite(BLUE, 1);
digitalWrite(RED, 1);
digitalWrite(GREEN, 1);
}
remote.resume();
}
}