// Define the LED pins
int ledPins[] = {3, 5, 6, 9, 10, 11}; // Pins for 6 LEDs
int numLeds = 6;
int brightness = 0;
int fadeAmount = 5; // Fade increment
void setup() {
Serial.begin(9600);
// Set all LED pins as outputs
for (int i = 0; i < numLeds; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
void loop() {
// Move the LEDs forward
for (int i = 0; i < numLeds; i++) {
// Fade in
for (brightness = 0; brightness <= 255; brightness += fadeAmount) {
analogWrite(ledPins[i], brightness);
Serial.println(brightness);
delay(100); // Delay for smooth fading
}
// Fade out
for (brightness = 255; brightness >= 0; brightness -= fadeAmount) {
analogWrite(ledPins[i], brightness);
Serial.println(brightness);
delay(100); // Delay for smooth fading
}
}
// Move the LEDs backward
for (int i = numLeds - 2; i >= 0; i--) {
// Fade in
for (brightness = 0; brightness <= 255; brightness += fadeAmount) {
analogWrite(ledPins[i], brightness);
Serial.println(brightness);
delay(100); // Delay for smooth fading
}
// Fade out
for (brightness = 255; brightness >= 0; brightness -= fadeAmount) {
analogWrite(ledPins[i], brightness);
Serial.println(brightness);
delay(100); // Delay for smooth fading
}
}
}