Cualquier placa de Arduino nos provee de una buena cantidad de salidas PWM, pero a veces para determinados proyectos necesitamos aún más (si queremos controlar muchos servomotores, o la intensidad de distintos juegos de luces, por ejemplo).
Para cubrir esta necesidad existe la librería SoftPWM, que es capàz de convertir cualquier pin digital de Arduino en una salida PWM.
Lo unico que tenemos que hacer es descargar la librería SoftPWM e instalarla (si no sabes cómo aquí te lo explicamos), ahora veamos todas las posibilidades que nos ofrece esta librería:
Inicializa la librería y define la polaridad del pin, aunque esto último es opcional.
Permite indicar que pin queremos utilizar y el valor que queremos sacar por él.
También podemos indicar la salida que queremos en porcentaje utilizando softPWMSetPercent.
Si lo que queremos hacer es aumentar y reducir progresivamente el valor que estamos enviando por el PWM esta función nos permite hacerlo de forma sencilla y comoda.
Esta función permite cambiar la polaridad del pin que estamos utilizando.
#include <SoftPWM.h> void setup(){ SoftPWMBegin(); SoftPWMSet(13, 0); SoftPWMSetFadeTime(13, 1000, 1000); } void loop(){ SoftPWMSet(13, 255); delay(1000); SoftPWMSet(13, 0); delay(1000); }