#include <Arduino.h>
#define LED_PIN 2
#define BUTTON_PIN 4
bool blinkMode = true;
bool lastButtonState = HIGH;
unsigned long lastDebounceTime = 0;
const unsigned long debounceDelay = 200;
void setup() {
pinMode(LED_PIN, OUTPUT);
pinMode(BUTTON_PIN, INPUT_PULLUP);
}
void loop() {
bool buttonState = digitalRead(BUTTON_PIN);
if (buttonState == LOW && lastButtonState == HIGH) {
if (millis() - lastDebounceTime > debounceDelay) {
blinkMode = !blinkMode;
lastDebounceTime = millis();
}
}
lastButtonState = buttonState;
if (blinkMode) {
digitalWrite(LED_PIN, HIGH);
delay(500);
digitalWrite(LED_PIN, LOW);
delay(500);
} else {
digitalWrite(LED_PIN, HIGH);
}
}