#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16,2);
const int pinPot = 34;
const int pinLED = 12;
int sensor = 0;
int levelsensor=0;
float vin;
int brightness = 0;
void setup() {
// put your setup code here, to run once:
pinMode(pinPot, INPUT);
pinMode(pinLED, OUTPUT);
Serial.begin(115200);
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("UAS 2204016");
Serial.println("Hello, ESP32!");
}
void loop() {
// put your main code here, to run repeatedly:
sensor = analogRead(pinPot);
vin=((float)(3.3*sensor))/4095;
brightness = map(sensor, 3715, 4095, 0, 255);
levelsensor=map(brightness, 0, 255, 0, 100);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Nilai Sensor : ");
lcd.setCursor(0, 1);
lcd.print(sensor,1);
lcd.setCursor(6, 1);
lcd.print(vin,1);
lcd.setCursor(9, 1);
lcd.print("V");
lcd.setCursor(12, 1);
if (levelsensor>=0 and levelsensor<=100){
lcd.print(levelsensor,1);
lcd.setCursor(15, 1);
lcd.print("%");
}
analogWrite(pinLED, brightness);
if (vin<3) {
Serial.println("EMpty");
}else{
Serial.print(levelsensor);
Serial.println("%");
}
Serial.print("Nilai Sensor : ");
Serial.println(sensor);
delay(1000); // this speeds up the simulation
}