Este proyecto utiliza un Arduino para controlar un barrido de 10 LEDs. La velocidad del barrido se ajusta de forma gradual mediante un potenciómetro, permitiendo al usuario controlar la velocidad del efecto luminoso de manera intuitiva.
/*
Creado: Luis Alvarez (edualv1723@gmail.com)
https://alvelectronics.com
*/
// Definición de pines
const int numLEDs = 10; // Número de LEDs
const int potPin = A0; // Pin del potenciómetro
const int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; // Pines de los LEDs
// Variables
int potValue = 0;
void setup() {
// Inicialización de pines de los LEDs como salida
for (int i = 0; i < numLEDs; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
void loop() {
// Lectura del valor del potenciómetro
potValue = analogRead(potPin);
// Mapeo del valor del potenciómetro al rango de LEDs
int ledLevel = map(potValue, 0, 1023, 0, numLEDs);
// Encender los LEDs progresivamente según el nivel del potenciómetro
for (int i = 0; i < numLEDs; i++) {
if (i < ledLevel) {
digitalWrite(ledPins[i], HIGH);
} else {
digitalWrite(ledPins[i], LOW);
}
}
}