Hi! I'm a beginner in arduino and I'm having trouble lighting up or blinking LED's in a sequence using millis(). I have 8 LEDs and I want it to light up or blink 2 LEDs at a time starting from the 2 left most LEDs to the 2 rightmost LEDs. It's kind of like the first 2 LEDs will light up and then the next second, the next 2 LEDs will light up while the previous 2 LEDs will turn off so on and so forth. The sketch I've coded lights up 2 LEDs at a time until all 8 LEDs light up. How do I make it like it's running from left to right 2 LEDs lighting up at a time?
int ledPin9 = 9;
int ledPin8 = 8;
int ledPin7 = 7;
int ledPin6 = 6;
int ledPin5 = 5;
int ledPin4 = 4;
int ledPin3 = 3;
int ledPin2 = 2;
unsigned long interval_4 = 4000;
unsigned long interval_3 = 3000;
unsigned long interval_2 = 2000;
unsigned long interval_1 = 1000;
unsigned long previousTime_1 = 0;
unsigned long previousTime_2 = 0;
unsigned long previousTime_3 = 0;
unsigned long previousTime_4 = 0;
void setup()
{
pinMode(ledPin9, OUTPUT);
pinMode(ledPin8, OUTPUT);
pinMode(ledPin7, OUTPUT);
pinMode(ledPin6, OUTPUT);
pinMode(ledPin5, OUTPUT);
pinMode(ledPin4, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(ledPin2, OUTPUT);
}
void loop(){
unsigned long currentMillis = millis();
if (currentMillis - previousTime_1 >= interval_1){
digitalWrite(ledPin9, HIGH);
digitalWrite(ledPin8, HIGH);
previousTime_1 = currentMillis;
}
if (currentMillis - previousTime_2 >= interval_2){
digitalWrite(ledPin7, HIGH);
digitalWrite(ledPin6, HIGH);
previousTime_2 = currentMillis;
}
if (currentMillis - previousTime_3 >= interval_3){
digitalWrite(ledPin5, HIGH);
digitalWrite(ledPin4, HIGH);
previousTime_3 = currentMillis;
}
if (currentMillis - previousTime_4 >= interval_4){
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
previousTime_4 = currentMillis;
}
}