int ledPin = 13; // LED connected to D13
int buttonPin = 2; // Push button connected to D2
bool isReversed = false;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}
void loop() {
// Read the state of the button
int buttonState = digitalRead(buttonPin);
// Toggle the blink pattern if the button is pressed
if (buttonState == HIGH) {
isReversed = !isReversed;
delay(200); // Debounce delay
}
// Determine blinking counts based on current mode (normal or reversed)
int blinkCount1 = isReversed ? 30 : 10;
int blinkCount2 = isReversed ? 20 : 20;
int blinkCount3 = isReversed ? 10 : 30;
// Blink the LED according to the current pattern
for (int i = 0; i < blinkCount1; i++) {
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
delay(1000);
}
for (int i = 0; i < blinkCount2; i++) {
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
}
for (int i = 0; i < blinkCount3; i++) {
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
}
// Delay for 60 seconds (simulate 1 minute)
delay(60000);
}