// Define the GPIO pins for the LEDs
const int ledPins[] = {18, 19, 21,22};
// Function to initialize the LED pins
void setup() {
// Initialize serial communication
Serial.begin(115200);
// Set LED pins as OUTPUT
for(int i = 0; i <4; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
// Function to turn off all LEDs
void allOff() {
for(int i = 0; i < 4; i++) {
digitalWrite(ledPins[i], LOW);
}
}
// Main function to control the LED blinking pattern
void loop() {
// Pattern:----
allOff();
digitalWrite(ledPins[4], HIGH);
delay(500); // 500 milliseconds
// Pattern: ---*
allOff();
digitalWrite(ledPins[3], HIGH);
delay(500);
// Pattern: --*-
allOff();
digitalWrite(ledPins[2], HIGH);
delay(500);
// Pattern: -*--
allOff();
digitalWrite(ledPins[1], HIGH);
delay(500);
// Pattern: *---
allOff();
digitalWrite(ledPins[0], HIGH);
delay(500);
}