#include <IRremote.h>
#include <LiquidCrystal.h>
#define PIN_RECEIVER 2
IRrecv receiver(PIN_RECEIVER);
decode_results results;
LiquidCrystal lcd(12,11,10,9,8,7);
int nilaiA;
int nilaiB;
int jumlah;
void setup() {
Serial.begin(115200);
lcd.begin(16,2);
receiver.enableIRIn();
lcd.print("Studi Independen");
delay(1500);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Aplikasi");
lcd.setCursor(0,1);
lcd.print("Penjumlahan");
delay(700);
lcd.clear();
}
void loop() {
lcd.setCursor(0,0);
lcd.print("A: ");
lcd.print(nilaiA);
lcd.setCursor(8,0);
lcd.print("B: ");
lcd.print(nilaiB);
lcd.setCursor(0,1);
lcd.print("Jumlah: ");
lcd.print(jumlah);
if (receiver.decode()) {
long int deCode = receiver.decodedIRData.command;
if(deCode == 2){ //Tombol '+'
jumlah = nilaiA+nilaiB;
nilaiA = 0;
nilaiB = 0;
}
switch (deCode) {
case 48: //tombol 1
if (nilaiA == 0) {
lcd.clear();
nilaiA = 1;
lcd.print("1");
}
else {
lcd.clear();
nilaiB = 1;
lcd.print("1");
}
break;
case 24: //tombol 2
if (nilaiA == 0) {
nilaiA = 2;
lcd.clear();
lcd.print("2");
} else {
nilaiB = 2;
lcd.clear();
lcd.print("2");
}
break;
case 122: //Tombol 3
if (nilaiA == 0) {
nilaiA = 3;
lcd.clear();
lcd.print("3");
} else {
nilaiB = 3;
lcd.clear();
lcd.print("3");
}
break;
case 16: //Tombol 4
if (nilaiA == 0) {
nilaiA = 4;
lcd.clear();
lcd.print("4");
} else {
nilaiB = 4;
lcd.clear();
lcd.print("4");
}
break;
case 56: //Tombol 5
if (nilaiA == 0) {
nilaiA = 5;
lcd.clear();
lcd.print("5");
} else {
nilaiB = 5;
lcd.clear();
lcd.print("5");
}
break;
case 90: //Tombol 6
if (nilaiA == 0) {
nilaiA = 6;
lcd.clear();
lcd.print("6");
} else {
nilaiB = 6;
lcd.clear();
lcd.print("6");
}
break;
case 66: //Tombol 7
if (nilaiA == 0) {
nilaiA = 7;
lcd.clear();
lcd.print("7");
} else {
nilaiB = 7;
lcd.clear();
lcd.print("7");
}
break;
case 74: //Tombol 8
if (nilaiA == 0) {
nilaiA = 8;
lcd.clear();
lcd.print("8");
} else {
nilaiB = 8;
lcd.clear();
lcd.print("8");
}
break;
case 82: //Tombol 9
if (nilaiA == 0) {
nilaiA = 9;
lcd.clear();
lcd.print("9");
} else {
nilaiB = 9;
lcd.clear();
lcd.print("9");
}
break;
}
receiver.resume();
}
}