/medium.com/@shfamrsya/lcd-i2c-dengan-esp32-menggunakan-ide-arduino-31fd4f2f4e49
#include <LiquidCrystal_I2C.h>
int btnLantai1 = 2,btnLantai2 = 4,btnLantai3 = 16;
int lift;
int lcdColumns = 16;
int lcdRows = 2;
int posisi = 1;
LiquidCrystal_I2C lcd(0x27, lcdColumns, lcdRows);
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println("Hello, ESP32!");
lcd.init();
lcd.backlight();
pinMode(btnLantai1, INPUT_PULLUP);
pinMode(btnLantai2, INPUT_PULLUP);
pinMode(btnLantai3, INPUT_PULLUP);
}
int checkButten(){
if (digitalRead(btnLantai1)){
return 1;
}else if (digitalRead(btnLantai3)){
return 3;
}else if (digitalRead(btnLantai2)){
return 2;
}else{
return posisi;
}
}
void loop() {
lcd.setCursor(7, 0);
Serial.println(digitalRead(btnLantai1));
// int ditekan = checkButten();
// if (ditekan!=posisi){
// String arah = (ditekan > posisi) ? "UP" : (ditekan < posisi) ? "DOWN" : "STUK";
// lcd.print(arah + " " + String(ditekan));
// Serial.println(ditekan);
// posisi = ditekan;
// }
// put your main code here, to run repeatedly:
delay(100); // this speeds up the simulation
}