const int ledPins[5] = {2, 3, 4, 5, 6}; // LED pins
int count = 0; // Counter variable
bool up = true; // Counting direction (true = up, false = down)
int delayTime = 200; // Default delay time
int Mode = 3; // Change this value to switch between modes (1, 2, or 3)
void setup() {
for (int i = 0; i < 5; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
void loop() {
switch (Mode) {
case 1: // Counting up and resetting
for (int i = 0; i < 5; i++) {
digitalWrite(ledPins[i], bitRead(count, i));
}
count++;
if (count > 31) count = 0;
delay(delayTime);
break;
case 2: // Counting up and down
for (int i = 0; i < 5; i++) {
digitalWrite(ledPins[i], bitRead(count, i));
}
if (count == 31) {
up = false;
} else if (count == 0) {
up = true;
}
count += up ? 1 : -1;
delay(delayTime);
break;
case 3: // Turning all LEDs on and off
for (int i = 0; i < 5; i++) {
digitalWrite(ledPins[i], HIGH);
}
delay(delayTime);
for (int i = 0; i < 5; i++) {
digitalWrite(ledPins[i], LOW);
}
delay(delayTime);
break;
}
}