Después de aprender a encender y apagar un LED, el siguiente paso es hacerlo más interesante: controlar su brillo.
Para lograrlo, Arduino utiliza una técnica llamada PWM (Modulación por Ancho de Pulso).
🎯 Objetivo
Controlar la intensidad (brillo) de un LED utilizando la función analogWrite().
🌈 Efecto Fade (subir y bajar brillo)
🧠 ¿Qué es PWM?
PWM significa Pulse Width Modulation (Modulación por Ancho de Pulso).
👉 Aunque Arduino no tiene salidas analógicas reales, simula una señal analógica encendiendo y apagando el LED muy rápidamente.
- Más tiempo encendido → más brillo
- Menos tiempo encendido → menos brillo
🔌 Pines PWM en Arduino Uno
Los pines que permiten PWM son:
👉 3, 5, 6, 9, 10 y 11 (marcados con ~)
🧰 Materiales
- 1 Arduino Uno
- 1 LED
- 1 resistencia (220Ω)
- Protoboard y cables
⚡ Conexión
- LED (ánodo) → Pin 9 (~PWM)
- LED (cátodo) → Resistencia → GND
💻 Código Arduino
int led = 9;
void setup() {
pinMode(led, OUTPUT);
}
void loop() {
// Aumenta brillo
for (int i = 0; i <= 255; i++) {
analogWrite(led, i);
delay(5);
}
// Disminuye brillo
for (int i = 255; i >= 0; i--) {
analogWrite(led, i);
delay(5);
}
}
🔍 Explicación
- analogWrite(pin, valor) controla el brillo
- El valor va de:
- 0 → apagado
- 255 → máximo brillo
🚀 Mejora del ejercicio
Puedes hacer este proyecto más interesante:
- 🎚️ Controlar brillo con un potenciómetro
- 🔘 Cambiar niveles de brillo con un botón
- 💡 Usar varios LEDs con diferentes intensidades
⚠️ Errores comunes
❌ Usar un pin que no es PWM❌ No usar resistencia en el LED
❌ Confundir analogWrite() con entrada analógica (analogRead())
🧾 Conclusión
El uso de PWM permite controlar dispositivos de manera más precisa, como la intensidad de luces o la velocidad de motores. Es una herramienta fundamental para proyectos más avanzados en Arduino.
💡 Consejo: Experimenta con diferentes valores entre 0 y 255 para ver cómo cambia el brillo del LED.
[warning title="Simulación en Wokwi" icon="check-circle"] https://wokwi.com/projects/458784387357356033 [/warning]



Publicar un comentario