#include <LiquidCrystal_I2C.h>
#define pinPot 34 // Pin potensiometer
#define pinRedLed 16 // Pin LED Merah
#define pinGreenLed 17 // Pin LED Hijau
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
pinMode(pinRedLed, OUTPUT);
pinMode(pinGreenLed, OUTPUT);
lcd.init();
lcd.backlight();
}
void loop() {
float potValue = analogRead(pinPot); // Membaca nilai potensiometer (0-4095)
// Mapping nilai potensiometer untuk sensor 0 - 250
int mappedSensorValue = map(potValue, 0, 4095, 0, 250);
// Mapping nilai potensiometer untuk tegangan 0 - 5V dengan desimal
float voltage = (potValue * 5.0) / 4095.0;
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Voltage : ");
lcd.print(mappedSensorValue); // Menampilkan 2 angka di belakang koma
lcd.print(" V");
lcd.setCursor(0, 1);
lcd.print("V Sensor: ");
lcd.print(voltage, 2); // Menampilkan 2 angka di belakang koma
lcd.print(" V");
// Logika untuk menyalakan LED berdasarkan nilai tegangan
if (voltage > 3.5) {
digitalWrite(pinRedLed, HIGH);
digitalWrite(pinGreenLed, LOW);
} else if (voltage < 2.0) {
digitalWrite(pinRedLed, LOW);
digitalWrite(pinGreenLed, HIGH);
} else {
digitalWrite(pinRedLed, LOW);
digitalWrite(pinGreenLed, LOW);
}
delay(1000); // Tunggu 1 detik sebelum loop berikutnya
}