Atenúa un LED con PWM
Parte de la sección Salidas del Journey de Arduino de Coddy. Lección 1 de 24.
digitalWrite() conoce dos niveles: encendido o apagado. Para hacer que un LED brille tenuemente, la placa enciende y apaga el pin cientos de veces por segundo. Tus ojos no pueden seguir el parpadeo y perciben el promedio: un pin que está encendido una cuarta parte del tiempo parece tener una cuarta parte del brillo.
Este truco se llama PWM, modulación por ancho de pulso. La proporción de tiempo que el pin está encendido es su ciclo de trabajo.
analogWrite(pin, value) lo establece con un número de 0 a 255:
analogWrite(9, 0); // siempre apagado
analogWrite(9, 64); // encendido una cuarta parte del tiempo
analogWrite(9, 127); // encendido aproximadamente la mitad del tiempo
analogWrite(9, 255); // siempre encendidoUna vez que escribes un valor, la placa mantiene el pin pulsando por sí sola, incluso durante delay(), hasta que escribas uno nuevo. analogWrite() convierte el pin en una salida por sí solo; pinMode(9, OUTPUT) en setup() sigue indicando para qué sirve el pin.
Desafío
FácilEl LED rojo está conectado al pin 9. Haz que brille a un cuarto de su brillo máximo:
- un cuarto de 255 es aproximadamente 64
- escríbelo con
analogWrite()
Pulsa Run para verlo y después Check.
Pruébalo tú mismo
const int ledPin = 9;
void setup() {
pinMode(ledPin, OUTPUT);
// ajusta aquí el brillo del LED a una cuarta parte
}
void loop() {
// nada que repetir: el pin sigue generando pulsos por sí solo
}
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Salidas
Practica por tu cuenta: Playground de Arduino