const int MAX_LEDS = 5;
const int LED_PINS[MAX_LEDS] = {11, 10, 9, 6, 5};
const int BLINK_RATE[MAX_LEDS] = {16000, 8000, 4000, 2000, 1000};
unsigned long lastTime[MAX_LEDS] = {0, 0, 0, 0, 0};
bool ledState[MAX_LEDS] = {false, false, false, false, false};
void setup() {
Serial.begin(9600);
for (int pin = 0; pin < MAX_LEDS; pin++) {
pinMode(LED_PINS[pin], OUTPUT);
}
}
void loop() {
for (int ledNum = 0; ledNum < MAX_LEDS; ledNum++) {
if (millis() - lastTime[ledNum] >= BLINK_RATE[ledNum]) {
lastTime[ledNum] = millis();
ledState[ledNum] = ! ledState[ledNum];
Serial.print("LED #");
Serial.print(ledNum);
Serial.println(" changing");
}
digitalWrite(LED_PINS[ledNum], ledState[ledNum]);
}
}