Microcontroladores basados en ESP8266: Configuración Arduino IDE y características

Arduino, STM32 (Maple), ESP8266, ESP32, etc
Avatar de Usuario
Naguissa
Administrador del Sitio
Mensajes: 484
Registrado: 04 Jul 2016, 11:17
Agradecido: 102 veces
Agradecimiento recibido: 134 veces

Microcontroladores basados en ESP8266: Configuración Arduino IDE y características

Mensaje sin leer por Naguissa »

Desarrollado como un puente Wifi, estos dispositivos ya integran un microcontrolador Tensilica de 32 bits a alta velocidad (tanto o mas que STM32) para manejar la WiFi.

Este microcontrolador se puede reprogramar y con ello han salido herramientas para hacerlo conservando la funcionalidad WiFi. Entre estas herramientas se encuentra un paquete para el IDE Arduino, que permite programar el microcontrolador como si se tratase de un Arduino con escudo Wifi.

La pega es que se ha de programar de manera no-bloqueante si no deseamos interferir con el funcionamiento de la WiFi. Para ello se ha creado la instrucción "yield()" que permite al microcontrolador ejecutar las tareas pendintes que tenga en 2o plano. Además, el toolkit aprovecha cualquier "delay()" para ejecutar esas tareas.

Existen muchísimas variaciones de este microcontrolador de Espressif, desde el minúsculo ESP05, el pequeño pero versátil ESP01 hasta los mas completos, que suelen estar basados en el ESP12F, como es NodeMCU.
Collage de esp8266
Collage de esp8266

Tabla de características:
ESP8266
Procesador Tensilica LX106 32 bit 80MHz (hasta 160MHz)
RAM 80KBytes (40KBytes disponibles)
Flash Externa, hasta 4MBytes
ROM interna No
Alimentación 3,0V – 3,6V
Consumo 80 mA promedio, 225mA máximo
Consumo modo deep sleep 20uA con RTC
WiFi b/g/n WEP, WPA. SoftAP
Cifrados TLS 1.2 por software
UART 2 (en uno solo puede usarse el Tx)
I²C 1
SPI 2
1-wire Por software
I²S 1
IR
GPIO usables 32
PWM 8
ADC 1 (10 bits)
Temporizadores 3









Aquí tenéis la web oficial del fabricante: Web oficial de Espressif sobre productos ESP8266.

Para usar estos dispositivos en el IDE Arduino usaremos el plugin de la comunidad ESP8266:

Pasos para instalar el soporte para ESP8266 en el IDE Arduino:

Pongo los de Windows, pero en Linux y Mac es exactamente igual.

Necesitas Arduino 1.6.4 o superior.


1) Abrimos el IDE Arduino
ESP8266 en Arduino IDE 01 - Abrir Arduino IDE
ESP8266 en Arduino IDE 01 - Abrir Arduino IDE

2) Vamos al menú "Archivo" -> "Preferencias"
ESP8266 en Arduino IDE 02 - Ir a Archivo - Preferencias
ESP8266 en Arduino IDE 02 - Ir a Archivo - Preferencias

3) En el cuadro de texto "Gestor de URLs Adicionales de Tarjetas ponemos:

http://arduino.esp8266.com/stable/packa ... index.json

Y pulsamos el botón "Ok".
ESP8266 en Arduino IDE 03 - Añadir URL de tarjetas
ESP8266 en Arduino IDE 03 - Añadir URL de tarjetas

4) Abrimos el menú "Herramientas" -> "Placa" -> "Gestor de tarjetas..."
ESP8266 en Arduino IDE 04 - Ir a Herramientas - Placa - Gestor de tarjetas
ESP8266 en Arduino IDE 04 - Ir a Herramientas - Placa - Gestor de tarjetas

5) Una vez que se haya actualizado la información (se hace automáticamente) buscamos la opción "esp8266 by ESP8266 Community" y pulsamos el botón "Instalar".
ESP8266 en Arduino IDE 05 - Buscar ESP8266 by ESP8266 Community
ESP8266 en Arduino IDE 05 - Buscar ESP8266 by ESP8266 Community

6) Esperamos mientras dura el proceso de descarga e instalación.
ESP8266 en Arduino IDE 06 - Esperar instalación
ESP8266 en Arduino IDE 06 - Esperar instalación

7) Comprobamos que está instalado
ESP8266 en Arduino IDE 07 - Instalación completada
ESP8266 en Arduino IDE 07 - Instalación completada

8) Ya estarán disponibles las placas en el menú "Herramientas" -> "Placa"
ESP8266 en Arduino IDE 08 - Módulos disponibles en Herramientas - Placa
ESP8266 en Arduino IDE 08 - Módulos disponibles en Herramientas - Placa


Pinouts y conectar los diferentes ESP8266 en modo normal y modo Flash:


El pinout y la manera de conectar los diferentes ESP8266 en modo normal y modo Flash para ser programados directamente con el IDE (o para cambiar o actualizar el firmware) lo tenéis explicado en el hilo: Conexión modo flash para ESP8266



Ejemplos de compra en Aliexpress:


ESP05: sirve como puente WiFi para otro microcontrolador, usado con comandos AT. No es reprogramable. Poco recomendado, pero útil para su función. Es diminuto.

ESP01: Versátil, reprogramable, pero muy pocos pines. Muy útil para controlar un único dispositivo.

NodeMCU v2/v3: Me encanta este dispositivo, muy completo. Incluye conector USB, se puede reprogramar usándolo.

Ya no encuentro el ESP201, un módulo que sería muy bueno si no fuese por los pines que pusieron en una 3a hilera.

Tags:
Avatar de Usuario
Naguissa
Administrador del Sitio
Mensajes: 484
Registrado: 04 Jul 2016, 11:17
Agradecido: 102 veces
Agradecimiento recibido: 134 veces

Re: Microcontroladores basados en ESP8266: Configuración Arduino IDE y características

Mensaje sin leer por Naguissa »

Cambios:

2016-08-23 - Creación.
2016-11-11 - Enlace al hilo de pinouts y modo Flash.
2018-07-05 - Añadida tabla de características
  • Similar Topics
    Respuestas
    Vistas
    Último mensaje