#include <IRremote.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
IRrecv remote(2);
int code; //decode_results code;
#define RED 7
#define GREEN 8
#define BLUE 9
void setup()
{
pinMode(RED, OUTPUT);
pinMode(GREEN, OUTPUT);
pinMode(BLUE, OUTPUT);
Serial.begin(9600);
remote.enableIRIn();
lcd.init();
lcd.backlight();
}
void loop()
{
if (remote.decode()) // if (remote.decode(&code))
{
code = remote.decodedIRData.command; // Not needed
Serial.print("irCode: ");
Serial.println(code);
// Serial.println(code.value);
if (code == 48)
{
lcd.clear();
digitalWrite(RED, 1);
digitalWrite(GREEN, 0);
digitalWrite(BLUE, 0);
lcd.setCursor(3, 0);
lcd.print("click 1");
lcd.setCursor(3, 1);
lcd.print("RGB is red ");
}
if (code == 104)
{
digitalWrite(RED, 0);
digitalWrite(GREEN, 0);
digitalWrite(BLUE, 0);
lcd.setCursor(3, 0);
lcd.print("click 0");
lcd.setCursor(3, 1);
lcd.print("no color ");
}
if (code == 24)
{
digitalWrite(RED, 0);
digitalWrite(GREEN, 1);
digitalWrite(BLUE, 0);
lcd.print("RGB is green ");
lcd.print("click 3");
lcd.setCursor(3, 1);
lcd.print("RGB is green ");
}
if (code == 122)
{
digitalWrite(RED, 0);
digitalWrite(GREEN, 0);
digitalWrite(BLUE, 1);
lcd.setCursor(3, 0);
lcd.print("click 3");
lcd.setCursor(3, 1);
lcd.print("RGB is blue ");
}
remote.resume();
}
}