LED Parpadeante con ESP32
Enseña el uso básico de la salida GPIO con ESP32. Conseguimos un efecto de parpadeo encendiendo y apagando un LED desde el pin digital. Versión para ESP32 del clásico proyecto blink en Arduino UNO; los comandos básicos de blink en el entorno Arduino son los mismos, pero la distribución de pines y los niveles GPIO de 3,3 V del ESP32 difieren de los del Arduino UNO.

Video
Diagrama del circuito

Código fuente
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// LED Parpadeante con ESP32
4// ─────────────────────────────────────────
5// Hace parpadear un LED en el GPIO 5 del ESP32 cada 500 ms. Es la versión
6// ESP32 del clásico sketch blink de Arduino; solo cambia el número de pin.
7//
8// Pines:
9// GPIO 5 -> LED rojo (con una resistencia de 220 ohmios)
10// GND -> Patilla corta del LED (cátodo)
11
12void setup() {
13 pinMode(5, OUTPUT); // Pin del LED como salida
14}
15
16void loop() {
17 digitalWrite(5, HIGH); // Encender el LED
18 delay(500); // Esperar 0.5 s
19 digitalWrite(5, LOW); // Apagar el LED
20 delay(500);
21}
22Preguntas frecuentes
¿Qué pines del ESP32 puedo utilizar para el LED?▾
Los pines GPIO 2, 4, 5, 12–19, 21–23, 25–27, 32 y 33 pueden utilizarse con total seguridad como salidas. Los GPIO 34–39 son solo de entrada y no pueden controlar LED. Los GPIO 6–11 están conectados a la memoria flash interna, por lo que no deben utilizarse bajo ningún concepto.
¿Qué resistencia es adecuada para un LED con un ESP32 a 3,3 V?▾
Los pines del ESP32 suministran 3,3 V. Para el LED rojo, lo adecuado es una resistencia de entre 100 y 220 Ω; una resistencia de 220 Ω proporciona una corriente de aproximadamente 6-7 mA y el LED se ve con claridad. Dado que los LED azules y blancos tienen una tensión directa elevada, pueden brillar con menos intensidad a 3,3 V.
Al cargar el código, aparece «Connecting...» y se queda bloqueado, ¿qué debo hacer?▾
En algunas placas ESP32, es necesario mantener pulsado el botón BOOT para iniciar el modo de carga. Cuando aparezca «Connecting...», mantén pulsado el botón BOOT y suéltalo cuando comience la carga. Además, asegúrate de que el cable USB sea un cable de datos.
¿Funciona el código de Arduino en el ESP32 sin modificaciones?▾
Las funciones básicas (pinMode, digitalWrite, delay) son las mismas; en la mayoría de los casos, basta con cambiar los números de los pines. En el menú «Herramientas», hay que seleccionar «ESP32 Dev Module» como placa.
