Cómo programar el procesador WiFi ESP8266

24 de marzo de 2015

Lang: cs en de es

ESP8266 es un microprocesador de 32 bits con chip WiFi integrado y pila TCP/IP.

esp8266-esp-03

El chip ESP8266 se puede comprar como un módulo listo para usar. Normalmente bajo la denominación ESP-01 ESP-02 ESP-03 etc. donde sólo difiere la forma de implementación. Estos módulos contienen un cristal, unos pocos componentes pasivos, el chip ESP8266 y un chip de memoria flash que se conecta a través de SPI y el programa se carga en esta memoria.
Los módulos disponibles tienen un programa cargado en ellos que se puede utilizar para controlar el chip utilizando comandos AT similares a los módems telefónicos. El dispositivo (por ejemplo, un microprocesador) se conecta al módulo a través de una línea serie (RS232 TTL 3,3V). A continuación, el dispositivo se conecta a Internet a través de WIFI utilizando dicho módulo.

El problema fundamental que se encuentra el desarrollador con estos módulos que se venden con el chip ESP8266 es la alimentación. El chip funciona a 3,3V y necesita hasta 300mA de pico. Este voltaje tan bajo y a una corriente no del todo despreciable no es del todo normal y no hay estabilizador en el módulo. Por lo tanto, necesitas conseguir alguna fuente de alimentación de 3,3V adecuada o un estabilizador. La salida de 3.3V de Arduino o de los convertidores USB-UART no es suficiente.

El enlace serie no sólo comunica con el módulo, sino que también permite cargar actualizaciones de firmware en el módulo.
¡Gracias a que el fabricante proporciona documentación y un completo SDK es posible desarrollar y cargar tu propio programa al módulo! Por lo tanto, pronto se introdujeron varios programas de portabilidad muy interesantes e incluso nuevos programas:

  • nodemcu es una máquina virtual para esp8266 que ejecuta programas escritos en Lua.
  • micropython para esp8266 Python también se puede utilizar para programar microordenadores con sólo tener micropython en el dispositivo.
  • frankeinsten es un programa que te permite configurar el microcontrolador desde la línea de comandos, de forma muy similar a como lo harías si estuvieras conectado a un sistema Unix.
  • esphttpd es un servidor HTTP que se ejecuta directamente en el microprocesador, y puedes modificar estados del procesador o leer datos a través de la web.
Esto convierte a los módulos en una plataforma de desarrollo por derecho propio y pueden utilizarse de forma totalmente independiente. El propio chip ESP8266 tiene varios pines de entrada/salida y puede, por ejemplo, cargar un programa desde una tarjeta SD mediante SPI. Todas las capacidades del chip ESP8266 se describen en la documentación.

Ilustración de la solución: el SoC ESP8266 funciona con batería y tiene un sensor de temperatura y humedad conectado. Ejecuta un servidor web y proporciona el valor medido a través de una página web. Sólo hay que conectarse a él con un teléfono móvil a través de WiFi - aquí OpenMoko Neo Freerunner, pero por supuesto también se pueden utilizar teléfonos Android e iOS.

esp8266 webserver freerunner>

El chip ESP8266 es una solución excelente para una verdadera solución IoT (Internet de las cosas), lo que significa que cada dispositivo está conectado a Internet. El microprocesador también es barato y muy potente. Gracias a los proyectos mencionados, no se necesitan grandes conocimientos de programación. Por lo tanto, IoT está realmente llegando....

Artículos sobre un tema similar

Lenguaje de programación Go
Análisis de la asignación y fijación de precios del desarrollo de proyectos de software
Programa Python para controlar Docker mediante la API
Cómo utilizar MailCatcher para probar correos electrónicos
API OpenAI de Python
Creación de una aplicación web WebSocket y configuración de un proxy
Gestión de proyectos: desarrollo ágil de software
Cómo ejecutar aplicaciones PHP antiguas
Lo que debe saber un buen programador
Lenguaje de programación Rust
NodeJS: desarrollo, configuración del servidor
Fallo de seguridad de Nette CVE-2020-15227
API REST: API de plataforma
Alojamiento web y de correo personalizado con el software ISP Config
Programación en SQL: PostgreSQL, MySQL/MariaDB
HTTPS: web segura
Base de datos NoSQL Mongo DB
Connecting to Microsoft SQL Server from Linux
¿Cuál es la descripción del trabajo de un programador?
Localización de aplicaciones Python
Qué correo y alojamiento web elegir
Digispark - Programar microcontrolador Atmel ATtiny con Arduino IDE
Desarrollo para procesadores ARM con Arduino IDE
Smartphone abierto con Linux - Openmoko Neo FreeRunner

Boletin informativo

Si está interesado en recibir noticias puntuales por correo electrónico.
Puedes registrarte rellenando tu email suscripción de noticias.


+