DPIOT / Práctica 2

Antes de programar: reconocer el ESP32

Antes del primer programa, reconoce las conexiones de tu placa y decide qué entradas y salidas utilizarás.

28/09/2026Guía de desarrolloESP32 · GPIO · Hardware

01 / Qué se pide resolver

Prepara una ficha del ESP32 clásico disponible en clase. Debe relacionar sus características con la conexión de sensores, visualizadores y actuadores, y justificar la selección de GPIO para una maqueta pequeña.

Abrir la consigna docente ↗

El punto de referencia es un módulo WROOM-32 de la familia ESP32 clásica. No traslades automáticamente sus características a C3, S2 o S3.

02 / Localizar los elementos de la placa

ElementoQué debes localizar
Módulo ESP32-WROOM-32Encapsulado metálico y antena impresa del módulo.
Puerto USBPor aquí llegan la alimentación y la programación, a través del conversor USB–UART incluido en la placa.
EN / RESETReinicia el microcontrolador.
BOOTInterviene en la entrada al modo de descarga.
3V3, GND y VIN / 5VIdentifica estos puntos en el esquema de tu modelo antes de elegir cómo suministrar energía por VIN.

Ficha técnica de referencia

CaracterísticaESP32 clásico
ProcesamientoEl núcleo pertenece a la familia Xtensa LX6; según la variante puede haber uno o dos, con frecuencias de hasta 240 MHz.
ConectividadWi-Fi de 2,4 GHz y Bluetooth en el ESP32 clásico.
Lógica de GPIO3,3 V. No conectes directamente señales de 5 V.
InterfacesDispone de UART, SPI e I²C, además de PWM y funciones analógicas disponibles solo en determinados pines.
Memoria flashLa capacidad la define la combinación de módulo y placa, por lo que debe anotarse tras comprobar el modelo.

03 / Justificar las conexiones

Filtra por la función que buscas. Esta selección se refiere al ESP32 clásico y descarta las conexiones que suelen dedicarse a la memoria flash.

UsoGPIO propuestoObservación
OLED · SDA21Dato del bus I²C, configurable por software.
OLED · SCL22Reloj del bus I²C, configurable por software.
Sensor DHT22 · DATA27Entrada/salida digital; pull-up a 3,3 V.
LED externo25Salida digital con resistencia en serie.
Entrada analógica34Pertenece a ADC1 y admite únicamente entrada; necesita resistencias externas si se requiere pull-up o pull-down.
SPI · SCK / MISO / MOSI18 / 19 / 23Es una distribución frecuente, que debe verificarse con el periférico elegido.
GPIO 6–11No usar en esta prácticaNormalmente conectados a la memoria flash del módulo.
GPIO 0, 2, 5, 12, 15Precaución al arrancarSon pines de configuración de arranque (strapping).

Los GPIO34–39 son entradas sin resistencias internas de polarización. Para una medida analógica simultánea con Wi-Fi, revisa ADC1 y las restricciones de uso de ADC2.

04 / Observar una salida digital

Desconecta la alimentación para montar el LED: GPIO25, resistencia de 330 Ω, ánodo del LED y cátodo hacia GND. Después configura placa y puerto en Arduino IDE y carga la prueba:

const uint8_t LED_PIN = 25;
void setup() {
  Serial.begin(115200);
  pinMode(LED_PIN, OUTPUT);
  Serial.println("Prueba de salida GPIO25");
}
void loop() {
  digitalWrite(LED_PIN, HIGH);
  delay(500);
  digitalWrite(LED_PIN, LOW);
  delay(500);
}
Descargar ejemplo GPIO ↓

El resultado previsto es una alternancia cada 0,5 s. Ante un fallo, verifica orientación del LED, retorno a GND, puerto de programación y GPIO seleccionado.

ADC, memoria y consumo

AspectoAnálisis para la práctica
CPU y RAMLa referencia clásica combina Xtensa LX6, hasta 240 MHz según versión y 520 KB de SRAM interna; la flash se identifica en el módulo concreto.
Wi-Fi y BluetoothEl ESP32 original incorpora Wi-Fi 802.11 b/g/n en 2,4 GHz y conectividad Bluetooth clásico y BLE.
ADCEl convertidor SAR clásico puede entregar hasta 12 bits, equivalentes a 4096 códigos. Su escala depende de la atenuación y requiere calibración para relacionar con precisión código y tensión.
GPIO y busesLas conexiones permiten UART, I²C, SPI, PWM y adquisición analógica; el diseño de la placa determina qué pines del chip pueden utilizarse.
Consumo activoEl dimensionamiento de la fuente debe cubrir los picos de CPU y radio. El consumo de reposo no basta para elegir el regulador.
Ahorro de energíaLos modos modem-sleep, light-sleep y deep-sleep desactivan funciones para reducir demanda. La corriente publicada para el chip en reposo no incluye necesariamente el LED y el puente USB de una placa completa.

Conversión ilustrativa

En una conversión ideal cuyo rango fuese 0–3,3 V, el código 2048 correspondería aproximadamente a 2048 × 3,3 / 4095 = 1,65 V. En una medida física intervienen también la atenuación seleccionada, las tolerancias y la calibración.

Aplicación al despliegue IoT

Una estación a batería puede espaciar las medidas, desactivar periféricos y entrar en reposo entre adquisiciones. Al combinar LDR y Wi-Fi, conviene emplear ADC1 para no depender de ADC2 mientras transmite la radio.

05 / Comprobación y entrega

Reúne una fotografía con anotaciones, las características del modelo, seis o más pines justificados y el sketch que hayas probado, junto con las fuentes consultadas.

¿Puedes controlar un LED como salida con GPIO34?

Documentación