#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd (0x27,16,2);
#include <IRremote.h> //เรียกใช้ในLibrary
#define IR_RECEIVE_PIN 12
int remote; //name
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
int led6 = 7;
int led7 = 8;
int R =11;
int G =10;
int B =9;
void setup() {
lcd.init ();
lcd.backlight();
Serial.begin(9600);
IrReceiver.begin(IR_RECEIVE_PIN);
pinMode(led1, OUTPUT); //red
pinMode(led2, OUTPUT); //orange
pinMode(led3, OUTPUT); //yellow
pinMode(led4, OUTPUT); //green
pinMode(led5, OUTPUT); //light blue
pinMode(led6, OUTPUT); //blue
pinMode(led7, OUTPUT); //purple
pinMode(R, OUTPUT);
pinMode(G, OUTPUT);
pinMode(B, OUTPUT);
}
void loop() {
if (IrReceiver.decode()) {
IrReceiver.resume();
Serial.println(IrReceiver.decodedIRData.command);
}
remote = IrReceiver.decodedIRData.command;
Serial.print("remote : ");
Serial.println(remote);
if (remote == 162) { //POWER
Serial.println("Aonann");
delay(1000);
}
else if (remote == 226) { //MENU red 1
digitalWrite(led1, HIGH);
analogWrite(R,255);
analogWrite(G,0);
analogWrite(B,0);
Serial.println("MENU");
lcd.setCursor(0,0);
lcd.print("MENU : 226");
delay(1000);
lcd.clear();
}
else if (remote == 34) { //TEST orange 2
digitalWrite(led2, HIGH);
analogWrite(R,255);
analogWrite(G,127);
analogWrite(B,0);
Serial.println("TEST");
lcd.setCursor(0,0);
lcd.print("TEST : 34");
delay(1000);
lcd.clear();
}
else if (remote == 2 ) { //PLUS yellow 3
digitalWrite(led3, HIGH);
analogWrite(R,255);
analogWrite(G,255);
analogWrite(B,0);
Serial.println("PLUS");
lcd.setCursor(0,0);
lcd.print("PLUS : 2");
delay(1000);
lcd.clear();
}
else if (remote == 194 ) { //BACK green 4
digitalWrite(led4, HIGH);
analogWrite(R,0);
analogWrite(G,255);
analogWrite(B,0);
Serial.println("BACK");
lcd.setCursor(0,0);
lcd.print("BACK : 194");
delay(1000);
lcd.clear();
}
else if (remote == 168 ) { //PLAY light 5
digitalWrite(led5, HIGH);
analogWrite(R,0);
analogWrite(G,255);
analogWrite(B,0);
Serial.println("PLAY");
lcd.setCursor(0,0);
lcd.print("PLAY : 168");
delay(1000);
lcd.clear();
}
else if (remote == 224 ) { //PREVIOUS blue 6
digitalWrite(led6, HIGH);
analogWrite(R,0);
analogWrite(G,0);
analogWrite(B,255);
Serial.println("PREVIOUS");
lcd.setCursor(0,0);
lcd.print("PREVIOUS : 224");
delay(1000);
lcd.clear();
}
else if (remote == 144 ) { //NEXT purple 7
digitalWrite(led7, HIGH);
analogWrite(R,0);
analogWrite(G,0);
analogWrite(B,255);
Serial.println("NEXT");
lcd.setCursor(0,0);
lcd.print("NEXT : 144");
delay(1000);
lcd.clear();
}
else if (remote == 152 ) { //MINUS 8
digitalWrite(led1, HIGH);
analogWrite(R,255);
analogWrite(G,0);
analogWrite(B,0);
Serial.println("MINUS");
lcd.setCursor(0,0);
lcd.print("MINUS : 152");
delay(1000);
lcd.clear();
}
else if (remote == 176 ) { //C 9
digitalWrite(led4, HIGH);
analogWrite(R,0);
analogWrite(G,255);
analogWrite(B,0);
Serial.println("C");
lcd.setCursor(0,0);
lcd.print("C : 176");
delay(1000);
lcd.clear();
}
else if (remote == 82 ) { //9 10
digitalWrite(led6, HIGH);
analogWrite(R,0);
analogWrite(G,0);
analogWrite(B,255);
Serial.println("9");
lcd.setCursor(0,0);
lcd.print("9 : 82");
delay(1000);
lcd.clear();
}
//
}