5. Salidas PWM¶
VÍDEO: PWM en Arduino para regular la intensidad de brillo de un LED
Nota
No todos los pines digitales se pueden usar con PWM, solamente los que se indican con una «onda»:
- PWM (Pulse Wide Modulation o Modulación de Ancho de Pulso)
Es una técnica que se utiliza para simular valores de distinta intensidad analógicos mediante pulsos o «parpadeos» de la señal:
Código para encender un LED conectado en el pin 9 con una intensidad de 25 (la intensidad puede ir desde 0 hasta 255):
1analogWrite(9, 25);
Tarea PWM brillo¶
Monta el circuito de la figura:
Realiza el mismo programa que el de las tareas anteriores,
pero en vez de repetir las líneas con las mismas
instrucciones cuatro veces, usa el bucle for( ).
Prueba a ir cambiando el número de repeticiones y los tiempos de
encendido y apagado, verás cómo ahora es más rápido usando las
variables y el bucle for( ).
Sería el código equivalente a:
Ajuste de brillo con bucle for¶
VÍDEO: Ajuste de brillo usando la variable «i» del bucle for()
Tarea PWM for()¶
Usando el bucle for(), programa el LED para que se encienda
progresivamente de 0 a 255 con un retardo de 20 ms entre cambios de
intensidad.
Fíjate en la imagen, te servirá de guía:
Figura 5.1La variable i aumenta de 1 en 1 (i++).¶
Sería el equivalente en código a los siguientes bloques:
Tarea brillo sube baja¶
Usando el bucle for(), programa el LED para que se encienda
progresivamente de 0 a 255 de 5 en 5 y luego de 255 a 0 de 5 en 5,
con un retardo de 15 ms entre cambios de intensidad.
Fíjate en la imagen, te servirá de guía: