Tabla de contenido:
- Paso 1: Cosas que necesita
- Paso 2: comprensión de PWM en ESP32
- Paso 3: Conexiones
- Paso 4: Instale ESP32 BOARDS en Arduino IDE
- Paso 5: Código
- Paso 6: probar la funcionalidad PWM
Video: PWM con ESP32 - Atenuación de LED con PWM en ESP 32 con Arduino IDE: 6 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
En este instructables veremos cómo generar señales PWM con ESP32 usando Arduino IDE y PWM se usa básicamente para generar salida analógica desde cualquier MCU y esa salida analógica podría ser entre 0V y 3.3V (en el caso de esp32) y de 0V a 5V (en el caso de arduino uno) y estas señales PWM (salida analógica) se utilizan para atenuar (salida variable, iluminando el LED con diferente brillo) el LED.
Paso 1: Cosas que necesita
Para este tutorial, necesitará lo siguiente: ESP32
Resistencias de 220 ohmios
LED de color
tablero de circuitos
Pocos saltadores
Paso 2: comprensión de PWM en ESP32
ESP32 tiene un controlador PWM de 16 canales y estos 16 canales son independientes y se pueden configurar de forma independiente para obtener señales PWM con diferentes propiedades para diferentes requisitos. Antes de pasar por el código y todo el proceso, necesita saber lo siguiente: >> hay 16 (0 a 15) Canales pwm en un ESP32. Debe elegir su canal PWM. >> Después de esto, debemos seleccionar la frecuencia para PWM, podemos ir a 5000hz. >> Aquí tenemos una resolución de 1 a 16 bits en ESP32, pero para este tutorial iremos solo por 8 bits lo que significa que el brillo será controlado por valores de 0 a 255. >> Necesita configurar el LED para PWM para hacer eso, debe usar la siguiente línea de código y en eso debe mencionar sobre el canal led (estamos usando el canal 0 de ESP32) que está usando para PWM & freq es la frecuencia (estamos usando 5000hz) de PWM & resolution que está usando (estamos usando una resolución de 8 bits).ledcSetup (ledChannel, freq, resolution); Valores en nuestro caso: const int freq = 5000; const int ledChannel = 0; const int resolution = 8; >> luego mencione qué pin LED necesita usando el siguiente comando: ledcAttachPin (ledPin, ledChannel); - aquí ledPin es el pin no. El que usaremos & ledChannel es el canal que tenemos que seleccionar para PWM.5. Finalmente, para controlar el brillo del LED usando PWM, use la siguiente función: >> la parte principal importante del código será el siguiente comando que escribirá la salida analógica en el pin LED: ledcWrite (ledChannel, dutycycle); este comando anterior necesita 'ledChannel' y 'dutyCycle' donde el canal es el número de canal que usaremos y el ciclo de trabajo es el valor que estamos escribiendo como salida al pin LED.
Paso 3: Conexiones
La parte de conexión es muy fácil. Necesita conectar un LED con resistencia a GPIO16 como se muestra en schmatics.
Paso 4: Instale ESP32 BOARDS en Arduino IDE
Asegúrese de tener Arduino IDE en su PC y de haber instalado placas ESP32 en su Arduino IDE, y si no es el caso, siga las siguientes instrucciones mías para instalarlo.:
Paso 5: Código
Copie el siguiente código y cárguelo en su ESP32: // el número del LED pinconst int ledPin = 16; // 16 corresponde a GPIO16 // configuración de las propiedades de PWMconst int freq = 5000; const int ledChannel = 0; const int resolution = 8; void setup () {// configurar las funciones de LED PWM ledcSetup (ledChannel, freq, resolution); // adjuntar el canal al GPIO para ser controlado ledcAttachPin (ledPin, ledChannel);} void loop () {// aumentar el brillo del LED para (int dutyCycle = 0; dutyCycle <= 255; dutyCycle ++) {// cambiar el LED brillo con PWM ledcWrite (ledChannel, dutyCycle); retraso (15); } // disminuye el brillo del LED para (int dutyCycle = 255; dutyCycle> = 0; dutyCycle -) {// cambiando el brillo del LED con PWM ledcWrite (ledChannel, dutyCycle); retraso (15); }}
Paso 6: probar la funcionalidad PWM
Después de cargar el código, verá que la intensidad de sus LED cambia, lo que nos lleva al final de este instructivo. Diviértase usando PWM con ESP32 en sus proyectos.
Recomendado:
Cómo hacer una conversación ESP múltiple a través de ESP-NOW usando ESP32 y ESP8266: 8 pasos
Cómo hacer que varios ESP hablen a través de ESP-NOW usando ESP32 y ESP8266: En mi proyecto en curso, necesito varios ESP para hablar entre ellos sin un enrutador. Para hacer esto, usaré el ESP-NOW para hacer una comunicación inalámbrica entre ellos sin un enrutador en el ESP
Introducción a ESP32 - Instalación de placas ESP32 en Arduino IDE - Código intermitente ESP32: 3 pasos
Introducción a ESP32 | Instalación de placas ESP32 en Arduino IDE | Código intermitente ESP32: en este instructables veremos cómo comenzar a trabajar con esp32 y cómo instalar placas esp32 en Arduino IDE y programaremos esp 32 para ejecutar código intermitente usando arduino ide
Introducción a Esp 8266 Esp-01 con Arduino IDE - Instalación de placas Esp en Arduino Ide y programación Esp: 4 pasos
Introducción a Esp 8266 Esp-01 con Arduino IDE | Instalación de placas Esp en Arduino Ide y programación de Esp: En este instructables aprenderemos cómo instalar placas esp8266 en Arduino IDE y cómo programar esp-01 y cargar código en él Dado que las placas esp son tan populares, así que pensé en corregir un instructivo para esto y la mayoría de las personas enfrentan problemas
IoT Wallet (billetera inteligente con Firebeetle ESP32, Arduino IDE y hoja de cálculo de Google): 13 pasos (con imágenes)
IoT Wallet (billetera inteligente con Firebeetle ESP32, Arduino IDE y hoja de cálculo de Google): ¡Primer premio en el concurso Instructables Pocket-Sized!: Si invirtió algo de dinero en criptomonedas, probablemente ya sepa que son altamente volátiles. Cambian de la noche a la mañana y nunca se sabe cuánto dinero "real" todavía tiene en su bolsillo
PROGRAMAR ESP / NODEMCU CON ARDUINO IDE: 3 Pasos
PROGRAMACIÓN DE ESP / NODEMCU CON ARDUINO IDE: Hola a todos, Hoy les mostraré cómo agregar el paquete de soporte ESP8266 a Arduino IDE. y programe lo mismo usando Ardunio IDE