Salida analógica PWM
Modulación de Ancho de Pulso (Pulse width modulation
(PWM
)) es una manera artificial de generar una salida analógica en un pin digital. Existen dos parámetros asociados al PWM que son la frecuencia y el ciclo de trabajo (duty cycle). El ciclo de trabajo define que tan largo sera el estado del pin en alto de un periodo
. El máximo ciclo de trabajo es cuando el pin esta todo el tiempo en alto (100%) y el mínimo todo el tiempo en bajo (0%).
En el ESP8266 todos los pines (excepto el GPIO16 o el pin 0) soportan PWM en su salida.
Limitación del PWM
La limitación es que todos deben correr a la misma frecuencia de trabajo, la cual esta entre 1Hz y 1kHz
Aplicación de PWM
Para usar el PWM, primero se debe crear un objeto
import machine
p12 = machine.Pin(12)
pwm12 = machine.PWM(p12)
pwm12.freq(500)
pwm12.duty(512)
- La frecuencia va de entre
1
a1000
, esto es equivalente a 1Hz hasta 1kHz. - El ciclo de trabajo va de
0
a1023
, esto es equivalente a0%
hasta100%
Referencias
http://docs.micropython.org/en/latest/esp8266/tutorial/pwm.html