Seleccionar página
< Todos los temas
Imprimir

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:

Código:

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.
Etiquetas:
Tabla de contenidos