#include <Wire.h>
#include <LiquidCrystal_I2C.h>
const int potPin = A0; // Pin potensiometer
const int buttonPin = 7; // Pin pushbutton
const int buzzerPin = 8; // Pin buzzer
LiquidCrystal_I2C lcd(0x27, 16, 2); // Ganti 0x27 dengan alamat I2C LCD Anda jika berbeda
void setup() {
pinMode(buttonPin, INPUT_PULLUP); // Gunakan resistor pull-up internal
pinMode(buzzerPin, OUTPUT);
lcd.init();
lcd.backlight(); // Nyalakan backlight LCD
lcd.setCursor(0, 0);
lcd.print("Siap digunakan");
delay(2000); // Tampilkan pesan selama 2 detik
lcd.clear();
}
void loop() {
int potValue = analogRead(potPin); // Baca nilai potensiometer
int buttonState = digitalRead(buttonPin); // Baca status tombol
if (buttonState == LOW) { // Tombol ditekan
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Nilai Potensiometer:");
lcd.setCursor(0, 1);
lcd.print(potValue); // Tampilkan nilai potensiometer
noTone(buzzerPin); // Matikan buzzer
} else { // Tombol tidak ditekan
lcd.clear();
if (potValue > 0) { // Hanya berbunyi jika potensiometer tidak di posisi 0
lcd.setCursor(0, 0);
lcd.print("Anda tidak punya");
lcd.setCursor(0, 1);
lcd.print("Akses ");
tone(buzzerPin, 1000); // Buzzer berbunyi
delay(100); // Durasi buzzer berbunyi
noTone(buzzerPin); // Matikan buzzer
}
}
delay(200); // Delay singkat untuk stabilitas
}