/*

 An example of the use of an Array with 8 LEDs cycling back and forth, turning each one
 on and off in sequence indicated in the ledPins array, a modification of the Array tutorial
 program that is currently in public domain.

 By: GC1CEO
 Date: 10/19/2024


Original program:
  created 2006

  by David A. Mellis

  modified 30 Aug 2011

  by Tom Igoe

  This example code is in the public domain.

  https://www.arduino.cc/en/Tutorial/Array

*/

int timer = 500;           // The higher the number, the slower the timing.
int ledPins[] = {

  12, 11, 10, 9, 8, 7, 6, 5
};       // an array of pin numbers to which LEDs are attached
int pinCount = 8;           // the number of pins (i.e. the length of the array)

void setup() {

  // the array elements are numbered from 0 to (pinCount - 1).

  // use a for loop to initialize each pin as an output:

  for (int thisPin = 0; thisPin < pinCount; thisPin++) {

    pinMode(ledPins[thisPin], OUTPUT);

  }
}

void loop() {

  // loop from the lowest pin to the highest:

  for (int thisPin = 0; thisPin < pinCount; thisPin++) {

    // turn the pin on:

    digitalWrite(ledPins[thisPin], HIGH);

    delay(timer);

    // turn the pin off:

    digitalWrite(ledPins[thisPin], LOW);

  }

  // loop from the highest pin to the lowest:

  for (int thisPin = pinCount - 1; thisPin >= 0; thisPin--) {

    // turn the pin on:

    digitalWrite(ledPins[thisPin], HIGH);

    delay(timer);

    // turn the pin off:

    digitalWrite(ledPins[thisPin], LOW);

  }
}
$abcdeabcde151015202530354045505560fghijfghij