ESP32
ESP32
Para aquellos que buscan agregar conectividad inalámbrica a proyectos integrados o construir
dispositivos IoT, el ESP32 es posiblemente la opción más popular. Ofrece una opción de doble núcleo
para aplicaciones con uso intensivo de procesador, mientras que WiFi y Bluetooth integrados simplifican
los diseños. También tiene abundante E/S, memoria e interoperabilidad para satisfacer las necesidades
de la mayoría de las aplicaciones.
Espressif, la empresa detrás del chip ESP-32, también fabrica módulos y placas de desarrollo. Si tiene la
intención de diseñar una PCB personalizada con ESP32, el módulo ESP32-WROOM-32 es una excelente
opción. Optar por el módulo en lugar del chip básico tiene varias ventajas. En particular, el módulo ya
está aprobado por la FCC, lo que significa que no necesitará tomar medidas adicionales para lograr el
cumplimiento de la FCC. Esto simplifica considerablemente el proceso de fabricación.
Cuando se trata de diseño de PCB personalizado, comprender la distribución de pines del ESP32-
WROOM-32 resulta crucial. Este artículo repasará con gran detalle el pinout del ESP32-WROOM-32.
Distribución de pines ESP32-WROOM-32
El módulo ESP32-WROOM-32 tiene 38 pines en total. El pinout es el siguiente:
Echemos un vistazo más de cerca a los pines ESP32 y sus funciones uno por uno.
Pines GPIO
El módulo ESP32-WROOM-32 tiene 32 pines GPIO a los que se les pueden asignar diferentes funciones
programando los registros apropiados. Hay varios tipos de GPIO: solo digitales, analógicos, capacitivos
táctiles, etc. La mayoría de los GPIO digitales se pueden configurar con pull-up o pull-down interno, o
configurarse en alta impedancia.
¿Qué GPIO son seguros de usar?
Aunque el módulo tiene muchos pines con diversas funciones, es posible que algunos de ellos no sean
adecuados para sus proyectos. La siguiente tabla muestra qué pines son seguros de usar y cuáles deben
usarse con precaución.
Tus pines de máxima prioridad. Son perfectamente seguros de usar.
Preste mucha atención porque su comportamiento, especialmente durante el arranque, puede
ser impredecible. Úsalos sólo cuando sea absolutamente necesario.
Se recomienda evitar el uso de estos pines.
Etiqueta de ¿Seguro de
Alfiler GPIO Razón
pin usar?
8 IO32 GPIO32
9 IO33 GPIO33
10 IO25 GPIO25
11 IO26 GPIO26
12 IO27 GPIO27
13 IO14 GPIO14
16 IO13 GPIO13
26 IO4 GPIO4
27 IO16 GPIO16
28 IO17 GPIO17
30 IO18 GPIO18
31 IO19 GPIO19
33 IO21 GPIO21
36 IO22 GPIO22
37 IO23 GPIO23
La siguiente imagen muestra qué pines GPIO se pueden utilizar de forma segura.
GPIO de entrada únicamente
Los pines 4, 5, 6 y 7 no se pueden configurar como salidas. Se pueden utilizar como entradas digitales o
analógicas, o para otros fines. También carecen de resistencias internas pull-up y pull-down, a diferencia
de los otros pines GPIO.
Pines de interrupción ESP32
Todos los GPIO se pueden configurar como interrupciones. Para obtener más información, consulte este
tutorial.
Pines ADC
El módulo ESP32-WROOM-32 tiene dos bloques ADC (Convertidor analógico a digital); ADC1 y ADC2.
Cada bloque tiene múltiples canales:
La resolución de los ADC en el ESP32 se puede configurar hasta 12 bits. Esto significa que el ADC puede
detectar 4096 (2^12) niveles analógicos discretos. Esto da como resultado una resolución de 3,3 V
(voltaje de funcionamiento) /4096 unidades, o 0,0008 voltios (0,8 mV) por unidad.
Advertencia:
Cuando Wi-Fi está habilitado, los pines ADC2 no se pueden usar. Si necesita Wi-Fi, considere usar los
pines ADC1.
Pines DAC
El módulo ESP32-WROOM-32 contiene dos convertidores digitales a analógicos (DAC) de 8 bits. Estos
DAC son útiles para convertir señales digitales en voltajes analógicos.
Pines táctiles
El módulo ESP32-WROOM-32 tiene diez GPIO capacitivos táctiles etiquetados como TOUCH0 a TOUCH9.
Estos pines funcionan midiendo el cambio en la capacitancia cuando un dedo u objeto conductor está
cerca de la superficie del pin.
Se pueden utilizar para diversas aplicaciones, como botones táctiles, controles deslizantes táctiles o
incluso reconocimiento de gestos básico. También se pueden usar para despertar el ESP32 del sueño
profundo , lo cual es particularmente útil en aplicaciones sensibles a la energía.
Pines I2C
El módulo ESP32-WROOM-32 tiene dos interfaces de bus I2C, pero no tiene pines I2C dedicados. En
cambio, permite una asignación de pines flexible, lo que significa que cualquier pin GPIO se puede
configurar como I2C SDA (línea de datos) y SCL (línea de reloj).
Sin embargo, GPIO21 (SDA) y GPIO22 (SCL) se usan comúnmente como pines I2C predeterminados para
facilitar a las personas el uso de código, bibliotecas y bocetos existentes de Arduino.
Pines SPI
El módulo ESP32-WROOM-32 presenta tres SPI (SPI, HSPI y VSPI). HSPI y VSPI se usan comúnmente para
propósitos generales, mientras que el tercero se usa para interactuar con la memoria flash SPI integrada
en el módulo.
Similar a I2C, el ESP32 permite una asignación flexible de pines para SPI. Esto significa que cualquier pin
GPIO se puede configurar como pin SPI.
Pines UART
El módulo ESP32-WROOM-32 tiene tres interfaces UART: UART0, UART1 y UART2. Estas interfaces
permiten la comunicación en serie con varios periféricos o para fines de registro y depuración.
Tenga en cuenta que los pines UART1 (GPIO 9 y GPIO 10) se utilizan para interactuar con la memoria
flash SPI integrada en el módulo, por lo que no puede utilizarlos. Sin embargo, aún puedes usar UART1
activando bits el protocolo UART en otros pines GPIO.
Además de los pines TX y RX básicos, las interfaces UART en el ESP32 también admiten RTS (Solicitud de
envío) y CTS (Borrar para enviar) para el control de flujo de hardware, aunque se usan con menos
frecuencia.
Pines PWM
Casi todos los pines GPIO del módulo se pueden configurar para generar salida PWM.
El PWM en el ESP32 se puede configurar con alta resolución, generalmente hasta 16 bits, lo que permite
un control preciso sobre las señales PWM. La frecuencia PWM también se puede ajustar, con un rango
típico de unos pocos Hz a decenas de MHz, lo que la hace adecuada para una amplia gama de
aplicaciones, desde controlar motores hasta atenuar LED.
Tenga en cuenta que, si hay periféricos conectados a estos pines, puede tener problemas al intentar
actualizar el ESP32 con un nuevo firmware. Esto se debe a que estos periféricos podrían impedir que el
ESP32 entre en el modo correcto.
Pines de alimentación
Los pines de alimentación proporcionan el voltaje necesario al módulo para funcionar:
3V3 es el pin de voltaje de suministro principal. Debe contar con una fuente de alimentación
estable de 3,3 V.
GND es el pin de tierra.
Habilitar PIN
El pin EN es el pin de habilitación para el ESP32. Cuando se coloca en ALTO, el chip está habilitado y
operativo; cuando se baja, el chip se desactiva.
Nota
Documentación extraída de: https://lastminuteengineers.com/esp32-wroom-32-pinout-reference/