#define LED_PIN 21
#define BUTTON_PIN 5
int hitungTekan = 0;
bool nyalaLED = false;
unsigned long waktuDebounce = 0;
const unsigned long jedaDebounce = 50;
int tombolTerakhir = LOW;
void setup() {
pinMode(LED_PIN, OUTPUT);
pinMode(BUTTON_PIN, INPUT);
digitalWrite(LED_PIN, LOW);
Serial.begin(115200);
}
void loop() {
int tombolSekarang = digitalRead(BUTTON_PIN);
if (tombolSekarang != tombolTerakhir && (millis() - waktuDebounce) > jedaDebounce) {
waktuDebounce = millis();
tombolTerakhir = tombolSekarang;
if (tombolSekarang == HIGH) {
if (hitungTekan < 5) {
hitungTekan++;
Serial.print("Tombol ditekan ke-");
Serial.println(hitungTekan);
if (hitungTekan == 5) {
nyalaLED = true;
Serial.println("LED ON!");
}
} else {
Serial.println("Sudah 5 kali, counter tidak bertambah.");
}
}
}
digitalWrite(LED_PIN, nyalaLED);
}