Saltar al contenido
Microdesys
  • El proyecto
    • Contenidos
    • Equipo
  • Hardware
  • Documentación
    • Guía
    • Codesys y Esp32 por MQTT en remoto
    • Siemens y Esp32 por MQTT en remoto
    • Programación directa del Esp32 con Wifi MQTT
  • Recursos
    • Presentación
    • Codesys
    • Software
    • Plantillas
    • Más herramientas
  • Editor
  • Chicas STEAM
  • Alternar búsqueda de la web
Menú Cerrar
  • El proyecto
    • Contenidos
    • Equipo
  • Hardware
  • Documentación
    • Guía
    • Codesys y Esp32 por MQTT en remoto
    • Siemens y Esp32 por MQTT en remoto
    • Programación directa del Esp32 con Wifi MQTT
  • Recursos
    • Presentación
    • Codesys
    • Software
    • Plantillas
    • Más herramientas
  • Editor
  • Chicas STEAM
  • Alternar búsqueda de la web

Microcontrolador Esp32

  1. Inicio>
  2. Docs>
  3. Microcontrolador Esp32

Modbus RTU Modo Básico

  • Introducción y alcance de la tecnología RTU Básico
  • Uso del Edito para configurar Esp32 con RTU
  • Cargar un programa (plantilla) en el microcontrolador Esp32
  • Configuración y conexión de un archivo Codesys RTU
  • Denominación de entradas y salidas
  • Ejemplo 1: Entrada y salida digital

Wifi MQTT Modo Básico

  • Instalación y configuración del servidor MQTT
  • Introducción y alcance de la tecnología MQTT Básico
  • Instalación del servidor MQTT Mosquitto
  • Preparación del Compilador para configurar Esp32 MQTT
  • Cargar un programa (Plantilla) en el Esp32 MQTT

Hardware

  • Microcontroladores Espressif
  • Microcontrolador Esp32
  • Entradas y salidas del microcontorlador Esp32

Modbus RTU Modo Avanzado

  • Configuración de canales RTU predefinidos (Easy Client)
  • Configuración de entradas digitales en Modbus RTU Easy Client
  • Configuración de salidas digitales en Modbus RTU Easy Client
  • Entradas analógicas y salidas PWM Modbus RTU (Easy Client)
  • Sensores y actuadores con librería en Modbus RTU en modo Easy Client (EC)
  • Creación de canales Modbus RTU propios

Wifi Esp32

  • Programación directa del Esp32 con Wifi MQTT

Hardware Microdesys

  • Placa de desarrollo Microdesys
  • Shield multifunción Microdesys basic

Codesys y Esp32

  • Codesys y Esp32 por MQTT en remoto

Siemens y Esp32

  • Siemens y Esp32 por MQTT en remoto
  • Instalar y configurar Node Red para uso con Siemens 1200 y LOGO
  • Siemens y Modbus TCP/IP

Chicas STEAM

  • Chicas STEAM

Microcontrolador Esp32

Tabla de contenidos
  • Presentación y versiones
  • Placas de desarrollo basadas en el Esp32
  • Características técnicas y alimentación
  • Usos e incompatibilidades de los GPIOs

Presentación y versiones #

El Esp32 es un dispositivo superior al Esp8266 en muchos aspectos. En 2022 hay ya varios modelos diferentes de este microcontrolador, que ha ido evolucionando desde que saliera la primera versión en 2016. Existen tres versiones en el mercado de este microcontrolador: la versión original, la segunda versión (S2), y la nueva tercera versión (S3).

Para la primera versión, que es el microcontrolador elegido para las placas Microdesys, podemos destacar que, además de disponer de Wifi y Bluetooth, tiene 18 entradas analógicas (no todas utilizables), 10 entradas táctiles capacitivas, dos salidas analógicas reales, casi todos los pines con PWM, y permite comunicar en multitud de protocolos, como I2C y SPI, en algunos casos por duplicado.

Con el resto de versiones, además de ciertas diferencias técnicas en cuanto a la capacidad de procesamiento, memoria, protocolos soportados o distribución de los pines, los principales cambios son los siguientes:

  • La versión S2 puede trabajar con hasta 10 entradas analógicas mientras usa el Wifi. Sin embargo, la versión 1 sólo puede compaginar la función Wifi con 6 entradas analógicas, que en teoría pueden llegar a ser 8. Sin embargo, esta versión S2 no dispone de comunicación Bluetooth.
  • En cambio, la versión S3, la más reciente, incorpora las mejoras en la conectividad de entradas analógicas que tiene la S2 y además vuelve a disponer de Bluetooth, pero ahora Bluetooth 5.0.

Sin embargo, los pocos cambios entre modelos, el alto precio y baja disponibilidad del Esp32 S3, así como su bajo testeo y desarrollo, natural tras tan poco tiempo en el mercado, hace que la versión 1 aún sea la más utilizada.

Existe también una nueva versión reducida, el Esp32-C3, con menor número de GPIOs, tamaño y consumo, orientado a sustituir al Esp8266 en aplicaciones concretas del IOT.

https://docs.espressif.com/projects/esp-idf/en/latest/esp32c3/hw-reference/esp32c3/user-guide-devkitm-1.html

En este enlace se pueden encontrar todas las variantes dentro de cada versión, con el total de sus características:

https://products.espressif.com/#/product-selector?names=ESP32-PICO-V3

Finalmente, hay que tener en cuenta que, más allá de la versión de Esp32, existen multitud de placas de desarrollo que integran este chip, con características y funcionalidades muy diferentes. Estas placas pueden estar producidas por marcas oficiales, como Adafruit o Sparkfun, o por usuarios que las crean como hardware libre. Este es el caso de los modelos NodeMCU Esp32, que son los más extendidos:

Observa que cambian ciertos conectores de la alimentación, así como el ancho de la placa, que en la imagen no se puede apreciar.

Placas de desarrollo basadas en el Esp32 #

Sin embargo, podemos encontrar muchas otras placas de desarrollo, en algunos casos incluyendo funciones muy diferentes, como alimentación por batería, comunicación por radiofrecuencia de largo alcance (LoRa), pantallas OLED, etc.:

  ESP32 Thing   Wemos Oled
ESP32-CAM Tarjeta de desarrollo WiFi-Bluetooth 2.4Ghz con cámara   Esp32 con cámara   ESP32 WearableTarjeta De Desarrollo Esp32 D1 Mini | Cuotas sin interés   Esp32 D1 mini
  Esp32 con EthernetAmazon.com: SX1278 ESP32 LoRa 0.96 Pulgadas Azul OLED Pantalla Digital Bluetooth WiFi Kit Módulo IOT Desarrollo Junta para Arduino 433MHz 470MHz : Industrial y Científico   Esp32 LoRaProgramming the ESP32 with Arduino Code • Wolles Elektronikkiste   Esp32 Wemos D1

Para comparar este producto con una placa Arduino Uno, y acabar de comprender la diferencia entre microcontrolador y placa de desarrollo, se podría decir que el propio Arduino Uno es una placa de desarrollo que está basada en el microcontrolador ATMEGA328P.

Por tanto, Arduino es una compañía que fabrica placas de desarrollo, pero no cuenta con ningún microprocesador propio.

Características técnicas y alimentación #

Vamos a ver una tabla comparativa resumen de las principales características del Esp32-WROOM (versión 1) que es el más utilizado en este nivel.

 NodeMCU Esp8266Arduino UNO R3NodeMCU   Esp32
MicrocontroladorESP8266ATmega328pESP32
Tensión de funcionamiento3,3V5V3. 3V
Pines de E/S digitales91236
Pines de E/S digitales con PWM9636
Pines de entrada analógica1615
SPI/I2C/I2S/UART2/1/2/21/1/1/14/2/2/2
Memoria flash4 MB32 KB4 MB
SRAM64 KB2 KB520 KB
Velocidad de reloj80 MHz16 MHz80 MHz / 160 MHz
WIFIsínosí
Bluetoothnonosí
Sensor táctilnono10

El modelo de placa de desarrollo NodeMCU Esp32 es el más extendido y que mayor accesibilidad de pines proporciona:

Si nos fijamos en la figura anterior, en la que viene la función de cada pin de la placa, vemos que la mayoría tienen varias funciones asignadas. Es por código cómo se decide qué función usar. Las funciones más importante, además de E/S digitales y PWM, se pueden resumir en la siguiente tabla:

ADCEntrada analógica
DACSalida analógica
TOUCHEntrada táctil capacitiva

Por ejemplo, el GPIO32 recuadrado en rojo en la figura anterior, puede funcionar como GPIO, es decir, como entrada digital y como salida digital, pero también como ADC (entrada analógica) y como sensor táctil capacitivo (Touch).

Los GPIOs 34, 35, 36 y 39 sólo pueden funcionar como entradas. El resto de pines pueden, al menos en teoría, funcionar como entradas y salidas digitales y PWM.

Esta versatilidad de la placa es muy útil pero también obliga a tener cuidado a la hora de elegir qué función asignar a cada pin. Esto es debido a que, pese a que este microcontrolador dispone de muchos pines de conexión, hay algunos de ellos que están asociados a actividades incompatibles. Esto quiere decir que hay funciones que no se pueden realizar de forma simultánea porque usan los mismos recursos internos. Por ejemplo, como se verá más adelante, no se pueden utilizar ciertos pines como entradas analógicas si se está usando la comunicación Wifi.

La placa se alimenta a 5V y funciona a una tensión lógica de 3,3V. Es decir, sus pines leen hasta 3,3V y se activan a 3,3V.

La alimentación de la placa se puede realizar de diversas formas. Las más habituales, son:

  • Por el conector micro USB por el que también se programa.
  • Con una fuente de alimentación de 5VDC entre el pin 5V y GND (0V).

Usos e incompatibilidades de los GPIOs #

Hay dos situaciones importantes al trabajar con los GPIOS del Esp32:

  • El uso de ciertos pines como E/S impide el correcto funcionamiento de la placa en multitud de ocasiones.
  • Todos los pines del ADC02 no trabajan como entradas analógicas si está activa la función Wifi. Esto quiere decir que pasa de tener 18 entradas digitales, a 16. Además, del ADC01, que en teoría tiene 8 GPIOS, hay dos que no se utilizan habitualmente (GPIO37 y GPIO38).

Teniendo en cuenta las diferentes funciones antes descritas, a continuación se proporciona una tabla resumen de los pines del microcontrolador. Los pines marcados en rojo no conviene utilizarlos a no ser que se tenga un conocimiento profundo del microcontrolador, ya que se utilizan para procesos internos y suelen dar problemas. Los pines en color naranja, se pueden utilizar teniendo cuidado de evitar ciertas situaciones, como se detalla.

FinalidadPinesTotal
GPIO para E/S digitales y PWM (algunos tienen funciones específicas de protocolos de comunicación)GPIO04, GPIO05, GPIO13, GPIO14, GPIO16, GPIO17, GPIO18, GPIO19, GPIO21, GPIO22, GPIO23, GPIO25, GPIO26, GPIO2714
GPIO o GPI Entradas Analógicas funcionales con WifiGPIO32, GPIO33, GPIO34, GPIO35, GPIO36, GPIO396
GPIO con restriccionesGPIO00, GPIO02, GPIO12, GPIO154
GPIO a no utilizarGPIO01, GPIO03, GPIO06, GPIO07, GPIO08, GPIO09, GPIO10, GPIO118

Reorganización por funciones básicas:

FunciónPinNúmeroObservaciones
GPIO para E/S digitales y PWM sin ninguna restricción y total funcionalidadGPIO04, GPIO05, GPIO13, GPIO14, GPIO16, GPIO17, GPIO18, GPIO19, GPIO23, GPIO2710GPIO05, GPIO18, GPIO19, GPIO23 pueden actuar como SPI. (Hay un segundo SPI en los pines 13,12,14,15)
GPIO para I2CGPIO21, GPIO222Se pueden usar si restricción también como DI y DO si no se usan para el Bus I2C
Salida analógicaGPIO25, GPIO262Se pueden usar si restricción también como DI y DO
Entrada analógica con total funcionalidadGPIO32, GPIO33, GPIO34, GPIO35, GPIO36, GPIO396 
Función táctilHay 10 disponibles en las anteriores categorías  
What are your Feelings
Comparte este artículo:
  • Facebook
  • Twitter
  • LinkedIn
  • Pinterest
Updated on 11 de enero de 2023
Microcontroladores EspressifEntradas y salidas del microcontorlador Esp32
Tabla de contenidos
  • Presentación y versiones
  • Placas de desarrollo basadas en el Esp32
  • Características técnicas y alimentación
  • Usos e incompatibilidades de los GPIOs
  • Política de cookies (UE)
  • Términos y condiciones
Copyright - OceanWP Theme by OceanWP
Gestionar el consentimiento de las cookies
Para ofrecer las mejores experiencias, utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. El consentimiento de estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o las identificaciones únicas en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones.
Funcional Siempre activo
El almacenamiento o acceso técnico es estrictamente necesario para el propósito legítimo de permitir el uso de un servicio específico explícitamente solicitado por el abonado o usuario, o con el único propósito de llevar a cabo la transmisión de una comunicación a través de una red de comunicaciones electrónicas.
Preferencias
El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario.
Estadísticas
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. El almacenamiento o acceso técnico que se utiliza exclusivamente con fines estadísticos anónimos. Sin un requerimiento, el cumplimiento voluntario por parte de tu Proveedor de servicios de Internet, o los registros adicionales de un tercero, la información almacenada o recuperada sólo para este propósito no se puede utilizar para identificarte.
Marketing
El almacenamiento o acceso técnico es necesario para crear perfiles de usuario para enviar publicidad, o para rastrear al usuario en una web o en varias web con fines de marketing similares.
Administrar opciones Gestionar los servicios Gestionar proveedores Leer más sobre estos propósitos
Ver preferencias
{title} {title} {title}

Insertar/editar un enlace

Introduce la URL de destino

O enlaza a contenido ya existente

    No se ha especificado ningún término de búsqueda. Mostrando los elementos recientes. Busca o utiliza las teclas de flecha arriba y abajo para seleccionar un elemento.