const int buttonPin = 5; // Pin push button terhubung ke pin digital 5
const int ledPin = 21; // Pin LED terhubung ke pin digital 21
bool ledState = 0; // Variabel untuk menyimpan status LED
void setup() {
pinMode(ledPin, OUTPUT); // Mengatur pin LED sebagai output
pinMode(buttonPin, INPUT); // Mengatur pin push button sebagai input
Serial.begin(115200);
Serial.println("Hello, ESP32");;
}
void loop() {
Serial.println(ledState);
int buttonState = digitalRead(buttonPin); // Membaca status push button
if (buttonState == HIGH) { // Jika push button ditekan
delay(20); // Delay kecil untuk debouncing
if (ledState) {
digitalWrite(ledPin, LOW); // Matikan LED jika sedang menyala
ledState = false;
} else {
digitalWrite(ledPin, HIGH); // Nyalakan LED jika sedang mati
ledState = true;
}
while (digitalRead(buttonPin) == HIGH) {
// Tunggu hingga push button dilepas
}
}
}