const int leds[] = {2, 3, 4, 5, 6};
unsigned long previousMillis[] = {0, 0, 0, 0, 0};
// ALL VALUES ARE IN MILLISECONDS
const unsigned long intervals[] = {
100, // LED 1 → 100ms
250, // LED 2 → 250ms
500, // LED 3 → 500ms
750, // LED 4 → 750ms
1000 // LED 5 → 1000ms
};
bool ledState[] = {LOW, LOW, LOW, LOW, LOW};
void setup() {
for (int i = 0; i < 5; i++) {
pinMode(leds[i], OUTPUT);
}
}
void loop() {
unsigned long currentMillis = millis();
for (int i = 0; i < 5; i++) {
if (currentMillis - previousMillis[i] >= intervals[i]) {
previousMillis[i] = currentMillis;
ledState[i] = !ledState[i];
digitalWrite(leds[i], ledState[i]);
}
}
}