Below is my code:
int ledPinArray[4] = { 8, 9, 10, 11 };
int blinkAllLedsPin = 33;
int sequencePin = 34;
int sequenceDirectionPin = 35;
int potValue = 0;
int numLEDS = 4;
void setup() {
for (int i = 0; i < numLEDS; i++) {
pinMode(ledPinArray[i], OUTPUT);
}
pinMode(blinkAllLedsPin, INPUT);
pinMode(sequencePin, INPUT);
pinMode(sequenceDirectionPin, INPUT);
Serial.begin(9600);
}
void loop() {
potValue = analogRead(A13);
Serial.println(potValue);
if (digitalRead(blinkAllLedsPin) == HIGH) {
turnOnAllLeds();
delay(potValue);
turnOffAllLeds();
delay(potValue);
}
if (digitalRead(sequencePin) == HIGH) {
if (digitalRead(sequenceDirectionPin) == HIGH) {
sequenceForward();
}
if (digitalRead(sequenceDirectionPin) == LOW) {
sequenceBackwards();
}
}
}
void turnOnAllLeds() {
for (int i = 0; i < numLEDS; i++) {
digitalWrite(ledPinArray[i], HIGH);
}
}
void turnOffAllLeds() {
for (int i = 0; i < numLEDS; i++) {
digitalWrite(ledPinArray[i], LOW);
}
}
void sequenceForward() {
for (int i = 0; i < numLEDS; i++) {
digitalWrite(ledPinArray[i], HIGH);
delay(potValue);
digitalWrite(ledPinArray[i], LOW);
}
}
void sequenceBackwards() {
for (int i = numLEDS - 1; i >= 0; i--) {
digitalWrite(ledPinArray[i], HIGH);
delay(potValue);
digitalWrite(ledPinArray[i], LOW);
}
}