Diferencia entre revisiones de «NodeMCU»
De ArduWiki
(→Pines) |
(→Puerto serie) |
||
Línea 86: | Línea 86: | ||
== Puerto serie == | == Puerto serie == | ||
* El puerto serie esta en pin 1 (Rx) y pin 3 (Tx), están protegidos con resistencias de 470 ohms. | * El puerto serie esta en pin 1 (Rx) y pin 3 (Tx), están protegidos con resistencias de 470 ohms. | ||
+ | ;Rx0: GPIO 3 | ||
+ | ;Tx0: GPIO 1 | ||
+ | ;Rx1: GPIO 2 | ||
+ | ;Tx1: GPIO 8 | ||
+ | |||
+ | == I2c bus == | ||
+ | * Soporta i2c maestro y esclavo. | ||
+ | * Frecuencia maxima 100 kHz | ||
+ | ;SCL: GPIO 14 | ||
+ | ;SDA: GPIO 2 | ||
== Sintaxis == | == Sintaxis == |
Revisión del 16:56 18 sep 2019
Contenido
Descripción
NodeMCU integra el ESP8266 con un modulo WiFi (ESP-12E). Este módulo tiene, además del microprocesador (Tensilica), una antena PCB, un LED conectado al GPIO2 y una memoria flash de 16 Mbit (= 4 MB). Es un proyecto de código abierto, el firmware y el diseño hardware esta disponible en GitHub.
Cuando fue presentada, no existía la integración de ESP8266 con el entorno de IDE de Arduino. No usaba un lenguaje compilado sino uno interpretado llamado LUA. Como todas las placas que usan ESP8266, se les puede cargar cualquier firmware. Puede usarse desde el propio de NodeMCU con lenguaje LUA, a MicroPython. También se puede usar como una placa de Arduino, donde nosotros hacemos el firmware desde cero.
Caracteristicas
Parámetro | Valor |
---|---|
uC | Tensilica ESP8266 |
Bus | 32 bits |
Velocidad | 80-160 MHz |
Memoria flash | 4MB (512KB normal) |
Memoria SRAM | 2KB |
Memoria EEPROM | 1KB |
Alimentación | 5V (USB) |
Entrada | 3V3 |
Pines digitales | 13 (6 PWM de 8 bits) |
Pines analógicos | 1 (A0) de ADC de 10 bits |
Corriente por pines | 12 mA |
WiFi | 2.4 GHz, 802.11, max 5 simultaneas |
Pines
Pin | GPIO | Nombre |
---|---|---|
D0 | 16 | Digital 0 (LED) |
D1 | 5 | Digital 1 |
D2 | 4 | Digital 2 |
D3 | 0 | Digital 3 |
D4 | 2 | Digital 4 (LED ESP-12E) |
D5 | 14 | Digital 5 |
D6 | 12 | Digital 6 |
D7 | 13 | Digital 7 |
D8 | 15 | Digital 8 |
D9 | 3 | Digital 9 |
D10 | 1 | Digital 10 |
VIN | +5V (USB) | |
3V | +3.3V | |
G | GND |
Pines digitales
- Tenemos 11 pines de entrada/salida digital. Pero no te recomiendo usar los pines 6~11 porque están conectados a la memoria flash.
Pines analogicos
- El ESP8266 tiene un solo puerto análogo (A0) con ADC de 10 bits.
LEDs
- LED1: D4 y pertenece al ESP-12E.
- LED2: D0 es de la propia placa, parpadea durante la carga de un programa
Botones
- Tiene dos botones: RST (reset) y FLASH, que permite activar el modo de carga de firmware.
- Si usamos el IDE Arduino no son necesarios.
- RST
- Reset, reinicia la placa pero no borra código.
- FLASH
- Dejar estado de ejecución y pasar a estado de recibir código.
Puerto serie
- El puerto serie esta en pin 1 (Rx) y pin 3 (Tx), están protegidos con resistencias de 470 ohms.
- Rx0
- GPIO 3
- Tx0
- GPIO 1
- Rx1
- GPIO 2
- Tx1
- GPIO 8
I2c bus
- Soporta i2c maestro y esclavo.
- Frecuencia maxima 100 kHz
- SCL
- GPIO 14
- SDA
- GPIO 2
Sintaxis
WiFi.mode(WIFI_STA); //Modo cliente WiFi WiFi.begin(ssid, clave);
Ventajas
- Bajo precio, mucho menor que Arduino
- WiFi incorporado
Desventajas
- No muy intuitivo las referencias entre numero de pin y puerto GPIO.
- Alimantacion de 3.3 V