// int led1 = 2;
// int led2 = 4;
// int led3 = 6;
// int led4 = 8;
// int timer1 =850;
// int timer2 = 900;
// int timer3 = 950;
// int timer4 = 1000;
// unsigned long currentTime1;
// unsigned long previousTime1 = 0;
// unsigned long currentTime2;
// unsigned long previousTime2 = 0;
// unsigned long currentTime3;
// unsigned long previousTime3 = 0;
// unsigned long currentTime4;
// unsigned long previousTime4 = 0;
// unsigned long led1OnTime;
// unsigned long led2OnTime;
// unsigned long led3OnTime;
// unsigned long led4OnTime;
// bool led1State = false;
// bool led2State = false;
// bool led3State = false;
// bool led4State = false;
// void setup() {
// // put your setup code here, to run once:
// pinMode(led1, OUTPUT);
// pinMode(led2, OUTPUT);
// pinMode(led3, OUTPUT);
// pinMode(led4, OUTPUT);
// }
// void loop() {
// currentTime1 = millis();
// currentTime2 = millis();
// currentTime3 = millis();
// currentTime4 = millis();
// if (currentTime1 - previousTime1 >= timer1){
// digitalWrite(led1, HIGH);
// led1State = true;
// led1OnTime = millis();
// previousTime1 = currentTime1;
// }
// if (currentTime2 - previousTime2 >= timer2){
// digitalWrite(led2, HIGH);
// led2State = true;
// led2OnTime = millis();
// previousTime2 = currentTime2;
// }
// if (currentTime3 - previousTime3 >= timer3){
// digitalWrite(led3, HIGH);
// led3State = true;
// led3OnTime = millis();
// previousTime3 = currentTime3;
// }
// if (currentTime4 - previousTime4 >= timer4){
// digitalWrite(led4, HIGH);
// led4State = true;
// led4OnTime = millis();
// previousTime4 = currentTime4;
// }
// if (led1State && millis()- led1OnTime >= 100){
// digitalWrite(led1, LOW);
// led1State = false;
// }
// if (led2State && millis()- led2OnTime >= 100){
// digitalWrite(led2, LOW);
// led2State = false;
// }
// if (led3State && millis()- led3OnTime >= 100){
// digitalWrite(led3, LOW);
// led3State = false;
// }
// if (led4State && millis()- led4OnTime >= 100){
// digitalWrite(led4, LOW);
// led4State = false;
// }
// }
const int ledPins[] = {9, 6, 5, 3};
const int timers[] = {700, 800, 900, 1000};
const int ledCount = sizeof(ledPins) / sizeof(ledPins[0]);
unsigned long previousTimes[ledCount] = {0};
unsigned long onTimes[ledCount] = {0};
bool ledStates[ledCount] = {false};
void setup() {
for (int i = 0; i < ledCount; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
void loop() {
unsigned long currentTime = millis();
for (int i = 0; i < ledCount; i++) {
if (currentTime - previousTimes[i] >= timers[i]) {
digitalWrite(ledPins[i], HIGH);
ledStates[i] = true;
onTimes[i] = currentTime;
previousTimes[i] = currentTime;
}
if (ledStates[i] && currentTime - onTimes[i] >= 100) {
digitalWrite(ledPins[i], LOW);
ledStates[i] = false;
}
}
}