INGENIEROS ESP8266 Placa de desarrollo NodeMCU
El Internet de las cosas (IoT) ha sido un campo de tendencia en el mundo de la tecnología. Ha cambiado la forma en que trabajamos. Los objetos físicos y el mundo digital están conectados ahora más que nunca. Teniendo esto en cuenta, Espressif Systems (una empresa de semiconductores con sede en Shanghái) ha lanzado un adorable microcontrolador habilitado para WiFi del tamaño de un bocado: ESP8266, ¡a un precio increíble! Por menos de $ 3, puede monitorear y controlar cosas desde cualquier parte del mundo, perfecto para casi cualquier proyecto de IoT.
La placa de desarrollo equipa el módulo ESP-12E que contiene el chip ESP8266 con microprocesador Tensilica Xtensa® LX32 RISC de 106 bits que funciona a una frecuencia de reloj ajustable de 80 a 160 MHz y es compatible con RTOS.
Chip ESP-12E
- Tensilica Xtensa® de 32 bits LX106
- Frecuencia de reloj de 80 a 160 MHz.
- RAM interna de 128kB
- Flash externo de 4 MB
- Transceptor Wi-Fi 802.11b/g/n
También hay 128 KB de RAM y 4 MB de memoria Flash (para el almacenamiento de programas y datos), lo suficiente para hacer frente a las grandes cadenas que componen web páginas, datos JSON/XML y todo lo que lanzamos a los dispositivos IoT hoy en día. El ESP8266 integra un transceptor Wi-Fi 802.11b/g/n HT40, por lo que no solo puede conectarse a una red WiFi e interactuar con Internet, sino que también puede configurar una red propia, lo que permite que otros dispositivos se conecten directamente a eso. Esto hace que el ESP8266 NodeMCU sea aún más versátil.
Requisito de potencia
Como el volumen de operacióntagEl rango de ESP8266 es de 3 V a 3.6 V, la placa viene con un volumen LDOtage regulador para mantener el voltage estable a 3.3V. Puede suministrar de forma fiable hasta 600 mA, lo que debería ser más que suficiente cuando el ESP8266 consume hasta 80 mA durante las transmisiones de RF. La salida del regulador también se divide en uno de los lados de la placa y se etiqueta como 3V3. Este pin se puede utilizar para suministrar energía a componentes externos.
Requisito de potencia
- Vol de funcionamientotage: 2.5 V a 3.6 V
- Regulador integrado de 3.3 V 600 mA
- Corriente de funcionamiento de 80 mA
- 20 μA durante el modo de suspensión
La alimentación al ESP8266 NodeMCU se suministra a través del conector USB MicroB incorporado. Alternativamente, si tiene un voltaje de 5V reguladotagLa fuente, el pin VIN se puede utilizar para alimentar directamente el ESP8266 y sus periféricos.
Advertencia: El ESP8266 requiere una fuente de alimentación de 3.3 V y niveles lógicos de 3.3 V para la comunicación. ¡Los pines GPIO no son tolerantes a 5V! Si desea interconectar la placa con componentes de 5 V (o más), deberá realizar algunos cambios de nivel.
Periféricos y E/S
El ESP8266 NodeMCU tiene un total de 17 pines GPIO divididos en los encabezados de pines en ambos lados de la placa de desarrollo. Estos pines se pueden asignar a todo tipo de tareas periféricas, que incluyen:
- Canal ADC: un canal ADC de 10 bits.
- Interfaz UART: la interfaz UART se utiliza para cargar el código en serie.
- Salidas PWM: pines PWM para atenuar LED o controlar motores.
- Interfaz SPI, I2C e I2S: interfaz SPI e I2C para conectar todo tipo de sensores y periféricos.
- Interfaz I2S: interfaz I2S si desea agregar sonido a su proyecto.
E/S multiplexadas
- 1 canales ADC
- 2 interfaces UART
- Salidas 4 PWM
- Interfaz SPI, I2C e I2S
Gracias a la función de multiplexación de pines del ESP8266 (múltiples periféricos multiplexados en un solo pin GPIO). Lo que significa que un solo pin GPIO puede actuar como PWM/UART/SPI.
Interruptores a bordo e indicador LED
El ESP8266 NodeMCU cuenta con dos botones. Uno marcado como RST ubicado en la esquina superior izquierda es el botón Restablecer, que se usa, por supuesto, para restablecer el chip ESP8266. El otro botón FLASH en la esquina inferior izquierda es el botón de descarga que se usa al actualizar el firmware.
Interruptores e indicadores
- RST: restablecer el chip ESP8266
- FLASH – Descarga nuevos programas
- LED azul: programable por el usuario
La placa también tiene un indicador LED que es programable por el usuario y está conectado al pin D0 de la placa.
Comunicación serial
La placa incluye el controlador de puente USB a UART CP2102 de Silicon Labs, que convierte la señal USB en serial y permite que su computadora programe y se comunique con el chip ESP8266.
Comunicación serial
- Convertidor USB a UART CP2102
- Velocidad de comunicación de 4.5 Mbps
- Soporte de control de flujo
Si tiene una versión anterior del controlador CP2102 instalada en su PC, le recomendamos que actualice ahora.
Enlace para actualizar el controlador CP2102 – https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
Asignación de pines ESP8266 NodeMCU
El ESP8266 NodeMCU tiene un total de 30 pines que lo conectan con el mundo exterior. Las conexiones son las siguientes:
En aras de la simplicidad, haremos grupos de pines con funcionalidades similares.
Pines de alimentación Hay cuatro pines de alimentación a saber. un pin VIN y tres pines de 3.3V. El pin VIN se puede usar para alimentar directamente el ESP8266 y sus periféricos, si tiene un voltaje de 5V regulado.tage fuente. Los pines de 3.3 V son la salida de un vol.tagy regulador. Estos pines se pueden usar para suministrar energía a componentes externos.
GND es un pin de tierra de la placa de desarrollo ESP8266 NodeMCU. Los pines I2C se utilizan para conectar todo tipo de sensores y periféricos I2C en su proyecto. Se admiten tanto I2C Master como I2C Slave. La funcionalidad de la interfaz I2C se puede realizar mediante programación, y la frecuencia del reloj es de 100 kHz como máximo. Cabe señalar que la frecuencia de reloj I2C debe ser más alta que la frecuencia de reloj más lenta del dispositivo esclavo.
Pines GPIO ESP8266 NodeMCU tiene 17 pines GPIO que se pueden asignar a varias funciones como I2C, I2S, UART, PWM, control remoto IR, luz LED y botón mediante programación. Cada GPIO digital habilitado puede configurarse para pull-up o pull-down interno, o establecerse en alta impedancia. Cuando se configura como una entrada, también se puede establecer en activación por borde o activación por nivel para generar interrupciones de la CPU.
Canal ADC El NodeMCU está integrado con un ADC SAR de precisión de 10 bits. Las dos funciones se pueden implementar usando ADC a saber. Probando el volumen de la fuente de alimentacióntage del pin VDD3P3 y vol. de entrada de pruebatage del pin TOUT. Sin embargo, no se pueden implementar al mismo tiempo.
Pines UART ESP8266 NodeMCU tiene 2 interfaces UART, es decir, UART0 y UART1, que proporcionan comunicación asíncrona (RS232 y RS485) y pueden comunicarse hasta a 4.5 Mbps. UART0 (pines TXD0, RXD0, RST0 y CTS0) se puede utilizar para la comunicación. Es compatible con el control de fluidos. Sin embargo, UART1 (pin TXD1) presenta solo una señal de transmisión de datos, por lo que generalmente se usa para imprimir registros.
Pines SPI ESP8266 cuenta con dos SPI (SPI y HSPI) en modo esclavo y maestro. Estos SPI también admiten las siguientes funciones de SPI de propósito general:
- 4 modos de temporización de la transferencia de formato SPI
- Hasta 80 MHz y los relojes divididos de 80 MHz
- FIFO de hasta 64 bytes
Pines SDIO ESP8266 cuenta con una interfaz de entrada/salida digital segura (SDIO) que se utiliza para conectar tarjetas SD directamente. Se admiten SDIO v4 de 25 bits y 1.1 MHz y SDIO v4 de 50 bits y 2.0 MHz.
PWM Pins La placa tiene 4 canales de modulación de ancho de pulso (PWM). La salida PWM puede implementarse mediante programación y utilizarse para impulsar motores digitales y LED. El rango de frecuencia PWM es ajustable de 1000 μs a 10000 μs, es decir, entre 100 Hz y 1 kHz.
Pines de control se utilizan para controlar ESP8266. Estos pines incluyen el pin de habilitación de chip (EN), el pin de reinicio (RST) y el pin WAKE.
- PIN EN: el chip ESP8266 se habilita cuando el pin EN se coloca en ALTO. Cuando se tira BAJO, el chip funciona a la potencia mínima.
- Pin RST: el pin RST se utiliza para restablecer el chip ESP8266.
- Pin DE ACTIVACIÓN: el pin de activación se utiliza para despertar el chip del modo de suspensión profunda.
Plataformas de desarrollo ESP8266
¡Ahora, pasemos a lo interesante! Hay una variedad de plataformas de desarrollo que se pueden equipar para programar el ESP8266. Puede optar por Espruino: SDK de JavaScript y firmware que emula de cerca a Node.js, o usar Mongoose OS: un sistema operativo para dispositivos IoT (plataforma recomendada por Espressif Systems y Google Cloud IoT) o usar un kit de desarrollo de software (SDK) proporcionado por Espressif o una de las plataformas enumeradas en WiKiPedia. Afortunadamente, la increíble comunidad ESP8266 llevó la selección de IDE un paso más allá al crear un complemento de Arduino. Si recién está comenzando a programar el ESP8266, este es el entorno con el que recomendamos comenzar y el que documentaremos en este tutorial.
Este complemento ESP8266 para Arduino se basa en el increíble trabajo de Ivan Grokhotkov y el resto de la comunidad ESP8266. Consulte el repositorio ESP8266 Arduino GitHub para obtener más información.
Instalación del núcleo ESP8266 en el sistema operativo Windows
Procedamos con la instalación del núcleo Arduino ESP8266. Lo primero es tener instalado el último Arduino IDE (Arduino 1.6.4 o superior) en su PC. Si no lo tiene, le recomendamos que actualice ahora.
Enlace para Arduino IDE – https://www.arduino.cc/en/software
Para comenzar, necesitaremos actualizar el administrador del tablero con un URL. Abre el IDE de Arduino y ve a File > Preferencias. Luego, copia abajo URL en el Gerente de la Junta Adicional URLs cuadro de texto situado en la parte inferior de la ventana: http://arduino.esp8266.com/stable/package_esp8266com_index.json
Presiona Aceptar. Luego navegue hasta el Administrador de tableros yendo a Herramientas > Tableros > Administrador de tableros. Debería haber un par de entradas nuevas además de las placas Arduino estándar. Filtre su búsqueda escribiendo esp8266. Haga clic en esa entrada y seleccione Instalar.
Las definiciones y herramientas de la placa para el ESP8266 incluyen un conjunto completamente nuevo de gcc, g ++ y otros binarios compilados razonablemente grandes, por lo que puede llevar unos minutos descargar e instalar (el archivo archivado file es ~110 MB). Una vez completada la instalación, aparecerá un pequeño texto INSTALADO junto a la entrada. Ahora puede cerrar el Board Manager
arduino example: parpadeo
Para asegurarnos de que el núcleo Arduino ESP8266 y el NodeMCU estén configurados correctamente, cargaremos el boceto más simple de todos: ¡The Blink! Usaremos el LED incorporado para esta prueba. Como se mencionó anteriormente en este tutorial, el pin D0 de la placa está conectado al LED azul integrado y es programable por el usuario. ¡Perfecto! Antes de cargar el boceto y jugar con LED, debemos asegurarnos de que la placa esté seleccionada correctamente en el IDE de Arduino. Abra el IDE de Arduino y seleccione la opción NodeMCU 0.9 (Módulo ESP-12) en el menú IDE de Arduino > Herramientas > Placa.
Ahora, conecte su ESP8266 NodeMCU a su computadora mediante un cable USB micro-B. Una vez que la placa está enchufada, se le debe asignar un puerto COM único. En máquinas Windows, será algo así como COM#, y en computadoras Mac/Linux vendrá en forma de /dev/tty.usbserial-XXXXXX. Seleccione este puerto serie en el menú IDE de Arduino > Herramientas > Puerto. También seleccione la velocidad de carga: 115200
Advertencia: Se debe prestar más atención a la selección de la placa, la elección del puerto COM y la selección de la velocidad de carga. Puede obtener el error espcomm_upload_mem al cargar nuevos bocetos, si no lo hizo.
Una vez que hayas terminado, prueba el exampel boceto a continuación.
configuración vacía()
{pinMode(D0, SALIDA);}bucle vacío()
{escritura digital (D0, ALTO);
retraso(500);
digitalWrite(D0, BAJO);
retraso(500);
Una vez que se carga el código, el LED comenzará a parpadear. Es posible que deba tocar el botón RST para que su ESP8266 comience a ejecutar el boceto.
Documentos / Recursos
![]() |
INGENIEROS ESP8266 Placa de desarrollo NodeMCU [pdf] Instrucciones Placa de desarrollo ESP8266 NodeMCU, ESP8266, placa de desarrollo NodeMCU |