Esptop 10 referencia de pinout una guía completa

Esptop 10 referencia de pinout una guía completa
ESP32 es un tablero de microcontroladores que tiene una serie de pines GPIO para varios fines. Cada uno de estos pines está diseñado para funciones específicas. ESP32 presenta un mayor número de pines en comparación con los tableros Arduino Uno o ESP8266. Para comenzar a trabajar con ESP32, es esencial un conocimiento suficiente de su PIN. El objetivo de esta guía es discutir todos los pines disponibles en el tablero y sus características asociadas.

Esta guía Pinout para ESP32 contiene el siguiente contenido:

1: Introducción a ESP32

  • 1.1: esp32 pinout
  • 1.2: ESP32 36 PIN Version Board
  • 1.3: ESP32 36 PIN Version Board
  • 1.4: ¿Cuál es la diferencia??

Pins GPIO de 2: ESP32

  • 2.1: pines de entrada/salida
  • 2.2: Pins solo de entrada
  • 2.3: Pins de interrupción
  • 2.4: Pins RTC

Pins ADC 3: ESP32

  • 3.1: esp32 adc pinout
  • 3.2: Pin de ADC del canal 1
  • 3.3: Pin de ADC del canal 2
  • 3.4: Cómo usar ESP32 ADC
  • 3.5: Limitación de ADC en ESP32

4: Pins DAC

5: alfileres PWM

6: Pins SPI en ESP32

Pins de 7: I2C

Pins 8: I2s

9: Uart

10: Pines táctil capacitivo

Pins de tirantes 11: esp32

12: alfileres en alto en el arranque

13: Habilitar (en) pin

Pins de potencia de 14: ESP32

Sensor de efecto Hall de 15: ESP32

Antes de avanzar aquí, resumimos una breve introducción al tablero de IoT ESP32.

1: Introducción a ESP32

  • ESP32 es un tablero de microcontroladores basado en IoT muy popular.
  • La parte principal de esta placa de microcontrolador es un chip Tensilica XTensa LX6 diseñado por ESPRESSIF Systems.
  • Contiene un procesador de doble núcleo y cada uno de estos núcleos se puede controlar por separado.
  • Un total de 48 pines están presentes en el chip ESP32, sin embargo, no todos estos pines están expuestos a los usuarios.
  • ESP32 viene en dos versiones diferentes: 30 alfileres y 36 alfileres.
  • ESP32 puede subir a una frecuencia a partir de 80 MHz a 240 MHz.
  • Contiene un ULP especial (coprocesador de potencia ultra baja) que ahorra una gran cantidad de potencia usando muy menos potencia mientras el procesador principal está apagado.
  • Contiene a bordo de wifi y un módulo Bluetooth dual.
  • ESP32 es más barato que otros microcontroladores.

1.1: esp32 pinout

Múltiples variantes de ESP32 están disponibles en el mercado, hoy cubriremos el Pinout detallado de la variante de 30 pines que viene con el microcontrolador ESP32-Wroom-32 a veces también denominado Wreom32.

Un total de 48 pines están disponibles en chips ESP32, entre los cuales 30 pines están expuestos al usuario, mientras que otros están integrados dentro del microcontrolador; Algunos tableros también contienen seis pines integrados de flash SPI adicionales que resumen el pin total a 36.

1.Tablero de versión 2: ESP32 30 pines

La imagen a continuación representa el pinout detallado de la variante ESP32 de 30 pin que contiene todos sus periféricos que discutimos uno por uno en detalle.

Algunos periféricos principales dentro de ESP32 son:

  • Total de 48 alfileres*
  • 18 pines ADC de 12 bits
  • Dos pines DAC de 8 bits
  • 16 canal PWM
  • 10 pines táctil capacitivo
  • 3 Uart
  • 2 I2C
  • 1 LATA
  • 2 i2s
  • 3spi

*El chip ESP32 contiene un total de 48 pines de los cuales solo 30 pines disponibles para la interfaz externa (en algunos tableros 36 que incluyen 6 pines SPI adicionales) se integran 18 pines restantes dentro del chip para comunicación.

1.3: ESP32 36 PIN Version Board

Aquí hay una imagen de un tablero ESP32 que tiene un total de 36 pines.

1.4: Diferencia entre la versión ESP32 de 30 pines y la versión ESP32 36 PIN

Ambos Board de ESP32 comparten la misma especificación La única diferencia principal aquí es 6 pines adicionales que están expuestos en la placa ESP32 (36 pines) son el pin integrado SPI Flash y, en segundo lugar, el GPIO 0 se reemplaza con PIN GND en la placa ESP32 (30 pines) que resulta en el resultado falta de Toque 1 y ADC2 CH1 alfiler.

Pins GPIO de 2: ESP32

Como se mencionó anteriormente, ESP32 tiene un total de 48 pines de los cuales solo 30 pines son accesibles para los usuarios. Cada uno de estos 30 pines de salida de entrada de propósito general tienen una función específica y se pueden configurar utilizando un registro específico. Hay diferentes pines GPIO como UART, PWM, ADC y DAC.

De estos 30 pines, algunos son de potencia, mientras que algunos se pueden configurar como entrada y salida, mientras que hay ciertos pines que son solo de entrada.

2.1: pines de entrada/salida

Casi todos los pines GPIO se pueden configurar como entrada y salida, excepto los 6 pines de flash de interfaz periférica serial (SPI) que no se pueden configurar para fines de entrada o salida. Estos 6 alfileres SPI están disponibles en el tablero de versiones de 36 pines.

La tabla que se detalla a continuación explica el estado de los pines GPIO ESP32 que se pueden usar como entrada y salida:

Aquí DE ACUERDO significa que el pin correspondiente se puede usar como entrada o salida.

Pasador de gpio APORTE PRODUCCIÓN Descripción
GPIO 0 Arrancados DE ACUERDO Salida PWM al arranque
GPIO 1 TX PIN DE ACUERDO DEPUMTA DE SALIDA EN BOOT
GPIO 2 DE ACUERDO DE ACUERDO A bordo de LED
GPIO 3 DE ACUERDO Pasador de rx Alto en el arranque
GPIO 4 DE ACUERDO DE ACUERDO -
GPIO 5 DE ACUERDO DE ACUERDO Salida PWM al arranque
GPIO 6 - - Pin flash SPI
GPIO 7 - - Pin flash SPI
GPIO 8 - - Pin flash SPI
GPIO 9 - - Pin flash SPI
GPIO 10 - - Pin flash SPI
GPIO 11 - - Pin flash SPI
GPIO 12 DE ACUERDO DE ACUERDO FALLO DE BOOT A HIGH PILL
GPIO 13 DE ACUERDO DE ACUERDO -
GPIO 14 DE ACUERDO DE ACUERDO Salida PWM al arranque
GPIO 15 DE ACUERDO DE ACUERDO Salida PWM al arranque
GPIO 16 DE ACUERDO DE ACUERDO -
GPIO 17 DE ACUERDO DE ACUERDO -
GPIO 18 DE ACUERDO DE ACUERDO -
GPIO 19 DE ACUERDO DE ACUERDO -
GPIO 21 DE ACUERDO DE ACUERDO -
GPIO 22 DE ACUERDO DE ACUERDO -
GPIO 23 DE ACUERDO DE ACUERDO -
GPIO 25 DE ACUERDO DE ACUERDO -
GPIO 26 DE ACUERDO DE ACUERDO -
GPIO 27 DE ACUERDO DE ACUERDO -
GPIO 32 DE ACUERDO DE ACUERDO -
GPIO 33 DE ACUERDO DE ACUERDO -
GPIO 34 DE ACUERDO Solo entrada
GPIO 35 DE ACUERDO Solo entrada
GPIO 36 DE ACUERDO Solo entrada
GPIO 39 DE ACUERDO Solo entrada

2.2: Pins solo de entrada

Los pines GPIO 34 a 39 no se pueden configurar como salida, ya que son solo para el propósito de entrada. Esto se debe a la falta de resistencia interna de pull up o desplegable, por lo tanto, solo se puede usar como entrada.

Además, GPIO 36 (VP) y GPIO 39 (VN) se utilizan para preamplificadores de ruido ultra bajos en ESP32 ADC.

Para resumir los siguientes son los solo pines de entrada en ESP32:

  • GPIO 34
  • GPIO 35
  • GPIO 36
  • GPIO 39

2.3: Pins de interrupción

Todos los pines GPIO en ESP32 pueden tomar interrupciones externas. Esto ayuda a monitorear el cambio en una interrupción específica en lugar de monitorear continuamente.

2.4: Pins RTC

ESP32 también tiene algunos pines RTC GPIO. Estos pines RTC permiten que ESP32 funcione en modo de suspensión profunda. Cuando ESP32 está dentro del modo de suspensión profunda mientras se ejecuta un coprocesador de potencia ultra baja (ULP), estos pines RTC pueden despertar ESP32 del sueño profundo ahorrando un gran porcentaje de potencia.

Estos pines GPIO RTC pueden actuar como una fuente de excitación externa para despertar ESP32 del sueño profundo en un momento particular o interrumpir. RTC GPIO Pins incluye:

  • RTC_GPIO0 (GPIO36)
  • RTC_GPIO3 (GPIO39)
  • RTC_GPIO4 (GPIO34)
  • RTC_GPIO5 (GPIO35)
  • RTC_GPIO6 (GPIO25)
  • RTC_GPIO7 (GPIO26)
  • RTC_GPIO8 (GPIO33)
  • RTC_GPIO9 (GPIO32)
  • RTC_GPIO10 (GPIO4)
  • RTC_GPIO11 (GPIO0)
  • RTC_GPIO12 (GPIO2)
  • RTC_GPIO13 (GPIO15)
  • RTC_GPIO14 (GPIO13)
  • RTC_GPIO15 (GPIO12)
  • RTC_GPIO16 GPIO14)
  • RTC_GPIO17 (GPIO27)

Pins ADC 3: ESP32

La Junta ESP32 tiene dos ADC integrados de 12 bits también conocidos como ADC SAR (Registros de aproximación sucesivos). Los ADC de la placa ESP32 admiten 18 canales de entrada analógicos diferentes, lo que significa que podemos conectar 18 sensores analógicos diferentes para tomar la entrada de ellos.

Pero este no es el caso aquí; Estos canales analógicos se dividen en dos categorías Channel 1 y Channel 2, ambos canales tienen algunos pines que no siempre están disponibles para la entrada ADC. Veamos cuáles son esos alfileres ADC junto con otros.

3.1: esp32 adc pinout

Como se mencionó anteriormente, la Junta ESP32 tiene 18 canales ADC. De 18 solo 15 están disponibles en el tablero de devkit v1 doit que tiene un total de 30 gpios.

Eche un vistazo a su tablero e identifique los pines ADC mientras los destacamos en la imagen a continuación:

3.2: Pin de ADC del canal 1

El siguiente es la asignación de pin dada de la placa DOIT de Devkit ESP32. ADC1 en ESP32 tiene 8 canales, sin embargo, la placa Doit Devkit solo admite 6 canales. Pero garantizo que estos son más que suficientes.

ADC1 GPIO PIN ESP32
CH0 36
CH1 37* (na)
CH2 38* (na)
CH3 39
CH4 32
CH5 33
CH6 34
CH7 35

*Estos alfileres no están disponibles para la interfaz externa; Estos están integrados dentro de los chips ESP32.

La siguiente imagen muestra los canales ADC1 ESP32:

3.3: Pin de ADC del canal 2

Los tableros de Devkit doit tienen 10 canales analógicos en ADC2. Aunque ADC2 tiene 10 canales analógicos para leer datos analógicos, estos canales no siempre están disponibles para usar. ADC2 se comparte con los controladores WiFi integrados, lo que significa que en el momento en que la placa está usando wifi, estos ADC2 no estarán disponibles. La solución a este problema es usar ADC2 solo cuando el controlador Wi-Fi esté apagado.

ADC2 GPIO PIN ESP32
CH0 4
CH1 0 (Na en 30 pin versión esp32-devkit doit)
CH2 2
CH3 15
CH4 13
CH5 12
CH6 14
CH7 27
Ch8 25
CH9 26

La imagen de abajo muestra la asignación de pines del canal ADC2.

3.4: Cómo usar ESP32 ADC

ESP32 ADC funciona de manera similar como la diferencia de solo Arduino aquí es que tiene ADC de 12 bits. Entonces, la placa ESP32 asigna los valores de voltaje analógico que van de 0 a 4095 en valores discretos digitales.

  • Si el voltaje dado a ESP32 ADC es cero un canal ADC, el valor digital será cero.
  • Si el voltaje dado a ADC es máximo significa 3.3V El valor digital de salida será igual a 4095.
  • Para medir un voltaje más alto, podemos usar el método de divisor de voltaje.

Nota: ESP32 ADC se establece por defecto en 12 bits, sin embargo, es posible configurarlo en 0 bits, 10 bits y 11 bits. El ADC predeterminado de 12 bits puede medir el valor 2^12 = 4096 y el voltaje analógico varía de 0V a 3.3V.

3.5: Limitación de ADC en ESP32

Aquí hay algunas limitaciones de ESP32 ADC:

  • ESP32 ADC no puede medir directamente el voltaje mayor que 3.3V.
  • Cuando los controladores Wi-Fi están habilitados, ADC2 no se puede usar. Solo se pueden usar 8 canales de ADC1.
  • El ADC ESP32 no es muy lineal; muestra no linealidad comportamiento y no puede distinguir entre 3.2v y 3.3V. Sin embargo, es posible calibrar ESP32 ADC. Aquí hay un artículo que lo guiará para calibrar el comportamiento de no linealidad ADC ESP32.

El comportamiento de no linealidad de ESP32 se puede ver en el monitor en serie de Arduino IDE.

4: Pins DAC

ESP32 presenta dos a bordo DAC de 8 bits (Convertidor digital a analógico). Usando pines DAC ESP32, cualquier señal digital se puede transformar en analógico. La aplicación DAC PINS incluye voltaje y control PWM.

Los siguientes son los dos pines DAC en el tablero ESP32.

  • DAC_1 (GPIO25)
  • DAC_2 (GPIO26)

5: alfileres PWM

La placa ESP32 contiene 16 canales de modulación de ancho de pulso independiente (PWM) que pueden generar diferentes señales PWM. Casi todos los GPIO pueden generar una señal PWM, sin embargo, la entrada solo los pasadores 34,35,36,39 no se puede usar como pines PWM ya que no pueden emitir una señal.

Nota: En 36 pin ESP32, Pins integrados SPI Flash a bordo 6 (GPIO 6, 7, 8, 9, 10, 11) no se puede usar como PWM.

Lea aquí una guía completa para principiantes para controlar pines PWM ESP32 usando Arduino IDE.

6: Pins SPI en ESP32

ESP32 tiene cuatro periféricos SPI integrados en su microcontrolador:

  • SPI0: No se puede usar externamente solo para la comunicación interna.
  • SPI1: No se puede usar externamente con dispositivos SPI. Solo para la comunicación de memoria interna
  • SPI2: SPI2 o HSPI pueden comunicarse con dispositivos y sensores externos. Tiene señales de bus independientes con cada capacidad de autobús para controlar 3 dispositivos de esclavos.
  • SPI3: SPI3 o VSPI puede comunicarse con dispositivos y sensores externos. Tiene señales de bus independientes con cada capacidad de autobús para controlar 3 dispositivos de esclavos.

La mayoría de los tableros ESP32 vienen con pines SPI preasignados para SPI2 y SPI3. Sin embargo, si no se asigna, siempre podemos asignar pines SPI en el código. Los siguientes son los pines SPI que se encuentran en la mayoría de la placa ESP32 que son preasignadas:

Interfaz SPI Mosi MISO Sclk CS
VSPI GPIO 23 GPIO 19 GPIO 18 GPIO 5
HSPI GPIO 13 GPIO 12 GPIO 14 GPIO 15

Los pines SPI mencionados anteriormente pueden variar según el tipo de tablero. Ahora escribiremos un código para verificar los pines SPI ESP32 usando Arduino IDE.

Para obtener un tutorial completo sobre la interfaz periférica en serie, haga clic aquí.

Pins de 7: I2C

El tablero ESP32 viene con un solo bus I2C que admite hasta 120 dispositivos I2C. Por defecto, dos pines SPI para SDA y SCL se definen en GPIO 21 y 22 respectivamente. Sin embargo, usando el comando cable.Begin (SDA, SCL) Podemos configurar cualquier GPIO como interfaz I2C.

Los siguientes dos pines GPIO están configurados por defecto para I2C:

  • GPIO21 - SDA (PIN de datos)
  • GPIO22 - SCL (pin de sincronización del reloj)

Pins 8: I2s

I2S (Sound Inter-IC) es un protocolo de comunicación sincrónica que transmite señales de audio entre dos dispositivos de audio digitales en serie.

ESP32 tiene dos periféricos I2S, cada uno de ellos opera en modo de comunicación de medio dúplex, sin embargo, también podemos combinarlos para operar en modo dúplex completo.

Normalmente, los dos pines DAC en ESP32 se usan para la comunicación de audio I2S. Los siguientes son los pines I2S en ESP32:

  • GPIO 26 - Reloj en serie (SCK)
  • GPIO 25 - Word Select (WS)

Para los pines de datos de serie I2S (SD) podemos configurar cualquier pin GPIO.

9: Uart

Por defecto, ESP32 tiene tres interfaces UART que son UART0, UART1 y UART2. Tanto UART0 como UART2 se pueden usar externamente, sin embargo, el UART1 no está disponible para la interfaz y comunicación externos porque está conectado internamente a la memoria Flash SPI integrada.

  • UART0 es por defecto en el GPIO1 (TX0) y GPIO3 (RX0) de ESP32. Este PIN está conectado internamente al convertidor USB a serial y es utilizado por ESP32 para la comunicación en serie a través del puerto USB. En caso de que si usemos pines UART0, no podremos comunicarnos con la PC. Por lo tanto, no se recomienda usar pines UART0 externamente.
  • UART2, por otro lado, no está conectado internamente al convertidor USB a serial, lo que significa que podemos usarlo para la interfaz externa para la comunicación UART entre dispositivos y sensores.
  • UART1, como se mencionó anteriormente, está conectado internamente con la memoria flash, así que no use el pin 9 y 10 de GPIO para la comunicación externa de UART.

Nota: El chip ESP32 tiene capacidad de multiplexación, lo que significa que también se pueden usar diferentes pines para comunicaciones, como podemos configurar cualquier pin GPIO en ESP32 para la comunicación UART1, definiéndolo dentro del código Arduino.

El siguiente es los pines UART de ESP32:

Autobús UART Rx Tx Descripción
Uart0 GPIO 3 GPIO 1 Se puede usar pero no recomendado porque conectado internamente al convertidor USB a serial
UART1 GPIO 9 GPIO 10 No use la memoria flash ESP32 conectada a SPI ESP32
Uart2 GPIO 16 GPIO 17 Permitido usar

10: Pines táctil capacitivo

ESP32 tiene 10 pines GPIO que tienen soporte incorporado para sensores táctiles capacitivos. Usar estos pines se puede detectar cualquier cambio en la carga eléctrica. Estos alfileres actúan como una almohadilla táctil, como la entrada sensorial de un dedo humano o cualquier otra interrupción táctil causada.

Usando estos pines, también podemos diseñar una fuente de atención externa para ESP32 desde el modo de suspensión profunda.

Los pasadores táctiles incluyen:

  • Touch_0 (GPIO4)
  • Touch_1 (GPIO0)
  • Touch_2 (GPIO2)
  • Touch_3 (GPIO15)
  • Touch_4 (GPIO13)
  • Touch_5 (GPIO12)
  • Touch_6 (GPIO14)
  • Touch_7 (GPIO27)
  • Touch_8 (GPIO33)
  • Touch_9 (GPIO32)

Los siguientes son los pines del sensor táctil en el tablero ESP32:

Touch_1 Falta el pin en esta versión de la placa ESP32 (30 pin). Touch_1 Pin está en (GPIO0) que está presente en el ESP32 de 36 pines.

Aquí hay un tutorial sobre el sensor táctil capacitivo ESP32 con Arduino IDE.

Pins de tirantes 11: esp32

ESP32 tiene pines con fataje que pueden poner ESP32 en diferentes modos como el cargador de arranque o el modo de flasheo. En la mayoría de los tableros que cuentan con la serie USB incorporada, no tenemos que preocuparnos por estos pines, ya que el tablero mismo pone ESP32 en modo correcto, ya sea flashing o arranque en modo.

Sin embargo, en caso de que estos pines estén en uso, uno puede encontrar problemas para cargar un nuevo código, intermitir firmware o restablecer la placa ESP32.

A continuación se encuentran los alfileres de tirantes ESP32 disponibles:

  • GPIO 0 (debe ser bajo para ingresar al modo de arranque)
  • GPIO 2 (debe estar flotando o bajo durante el arranque)
  • GPIO 4
  • GPIO 5 (debe ser alto durante el arranque)
  • GPIO 12 (debe ser bajo durante el arranque)
  • GPIO 15 (debe ser alto durante el arranque)

12: alfileres en alto en el arranque

Algunos pines GPIO muestran un comportamiento inesperado cuando las salidas conectadas a estos pines porque estos pines muestran un estado alto o generan una señal PWM una vez que se inicia o se restablece la placa ESP32.

Estos alfileres son:

  • GPIO 1
  • GPIO 3
  • GPIO 5
  • GPIO 6 a GPIO 11 (interconectado con Flash SPI interno ESP32: no use estos alfileres para ningún otro propósito).
  • GPIO 14
  • GPIO 15

13: Habilitar (en) pin

Este pin se utiliza para habilitar la placa ESP32. Usando esto podemos controlar el regulador de voltaje ESP32. Este pin habilita el chip cuando se tira alto y cuando se hace bajo, ESP32 funciona con potencia mínima.

Conectando el pin (habilitar) para GND el 3.3V El regulador de voltaje de 3V deshabilita esto, lo que significa que podemos usar un botón externo para reiniciar ESP32 si es necesario.

Pins de potencia de 14: ESP32

ESP32 tiene múltiples fuentes de entrada de energía. Principalmente se pueden usar dos pines para alimentar ESP32 que incluyen el pin Vin (VIN) y el 3V3 (3.3V) PIN. La principal fuente de encendido ESP32 está utilizando el cable USB. Las otras dos fuentes requerían suministro regulado externo.

El ESP32 tiene un a bordo regulador de voltaje de salida 3.3V que toma la entrada de dos fuentes USB y el pin VN después de eso, convierte el voltaje de entrada (5V) a 3.3V para ESP32 funcionando.

Las siguientes son las tres fuentes de energía para ESP32:

  • Puerto USB: solo puede dar energía de entrada a ESP32
  • PIN VN: funciona de entrada de doble vía y salida
  • Pin 3V3: funciona de entrada doble y salida

Nota: El pin 3v3 de ESP32 no está conectado al regulador de voltaje en la placa, no se recomienda usar esto para la entrada de energía porque el ligero aumento en el voltaje dará como resultado un flujo más de corriente desde el terminal de salida del regulador LDO (AMS1117) a la entrada que resulta en un daño permanente del regulador de voltaje ESP32.

Sin embargo, si tienes constante 3.Suministro de 3V, entonces se puede usar.

En segundo lugar, no dé más de 9V al pin VN ya que ESP32 solo necesita 3.3V para trabajar; Todos los voltajes restantes se disiparán como calor.

Para obtener una guía más detallada sobre las fuentes de energía ESP32 y los requisitos de voltaje, verifique este tutorial cómo alimentar ESP32.

Sensor de efecto Hall de 15: ESP32

ESP32 presenta un sensor de efectos de pasillo incorporado que usamos el cual podemos detectar cambios en el campo magnético y ejecutar una salida específica en consecuencia.

Aquí hay un tutorial sobre cómo usar el sensor ESP32 integrado en el efecto Hall e imprimir los datos de lectura a través del monitor en serie.

Conclusión

Comenzar con ESP32 nunca ha sido fácil, pero usar este artículo en ESP32 Pinout cualquiera puede comenzar con un tablero basado en IoT en unos minutos. Aquí este artículo cubre todos los detalles sobre ESP32 Pinout. Cada pin ESP32 se discute en detalle extenso. Para obtener más tutoriales sobre alfileres específicos, consulte otros tutoriales en la placa ESP32.