PWM en ESP32 con LEDC (WIP)

Manejar PWM en ESP32 es dirente que con arduinos debido a que se utilizan otros timers, todos los pines aceptan PWM y la resolución de 12 bits nos permite cambiar la frecuencia y la resolución de la señal.
IMPORTANTE: este tutorial se basa en la versión 3.0 de ESP32 que cambia ciertas funciones.
Código para encender y apagar un LED:
Definimos pin PWM, la frecuencia a 5000Hz y resolución de 8 bits (0-255, 10bits-1023, 12bits-4095):
#define pinPWM 23
int frecuencia = 5000;
byte resolution = 8;
Aquí adjuntamos el pin PWM configurando la frecuencia y resolución:
ledcAttach(pinPWM, frecuencia, resolution);
Con esta función realizamos un fade en el LED de igual manera que si lo hacemos con analogWrite:
ledcWrite(pinPWM, i);
En versiones anteriores lo hacíamos asignando el canal PWM en vez del pin explícito, por lo que nos facilita el uso.
Notas
- Nada.