#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
#define pbAUP 2
#define pbADOWN 3
#define pbBUP 4
#define pbBDOWN 5
#define pbtmbh 6
#define pbkrng 7
#define pbkali 8
#define pbbagi 9
int A = 0;
int B = 0;
int ttl = 0;
void setup() {
// put your setup code here, to run once:
lcd.init();
lcd.backlight();
pinMode(pbAUP, INPUT_PULLUP);
pinMode(pbADOWN, INPUT_PULLUP);
pinMode(pbBUP, INPUT_PULLUP);
pinMode(pbBDOWN, INPUT_PULLUP);
pinMode(pbtmbh, INPUT_PULLUP);
pinMode(pbkrng, INPUT_PULLUP);
pinMode(pbkali, INPUT_PULLUP);
pinMode(pbbagi, INPUT_PULLUP);
lcd.setCursor(0,0);
lcd.print("nilaiA ? nilaiB=");
}
void loop() {
// put your main code here, to run repeatedly:
if (digitalRead(pbAUP) == LOW){
A++;
lcd.setCursor(0,1);
lcd.print(" ");
lcd.setCursor(0,1);
lcd.print(A);
delay(200);
}
if (digitalRead(pbADOWN) == LOW){
A--;
lcd.setCursor(0,1);
lcd.print(" ");
lcd.setCursor(0,1);
lcd.print(A);
delay(200);
}
if (digitalRead(pbBUP) == LOW){
B++;
lcd.setCursor(6,1);
lcd.print(" ");
lcd.setCursor(6,1);
lcd.print(B);
delay(200);
}
if (digitalRead(pbBDOWN) == LOW){
B--;
lcd.setCursor(6,1);
lcd.print(" ");
lcd.setCursor(6,1);
lcd.print(B);
delay(200);
}
if (digitalRead(pbtmbh) == LOW){
ttl = A + B;
lcd.setCursor(4,1);
lcd.print(" ");
lcd.setCursor(4,1);
lcd.print("+");
lcd.setCursor(10,1);
lcd.print(" ");
lcd.setCursor(10,1);
lcd.print(ttl);
}
if (digitalRead(pbkrng) == LOW){
ttl = A - B;
lcd.setCursor(4,1);
lcd.print(" ");
lcd.setCursor(4,1);
lcd.print("-");
lcd.setCursor(10,1);
lcd.print(" ");
lcd.setCursor(10,1);
lcd.print(ttl);
}
if (digitalRead(pbkali) == LOW){
ttl = A * B;
lcd.setCursor(4,1);
lcd.print(" ");
lcd.setCursor(4,1);
lcd.print("*");
lcd.setCursor(10,1);
lcd.print(" ");
lcd.setCursor(10,1);
lcd.print(ttl);
}
if (digitalRead(pbbagi) == LOW){
ttl = A / B;
lcd.setCursor(4,1);
lcd.print(" ");
lcd.setCursor(4,1);
lcd.print("/");
lcd.setCursor(10,1);
lcd.print(" ");
lcd.setCursor(10,1);
lcd.print(ttl);
}
lcd.setCursor(9,1);
lcd.print("=");
}