NodeMCU ESP8266: Detalles y Pinout
Hoy hablaremos sobre la fijación ESP8266, o en otras palabras, NodeMCU. Personalmente, me gusta mucho este componente, ya que viene con entrada USB. Pero es importante explicar que el NodeMCU está formado por un ESP12E, que todavía tiene un ESP8266EX dentro. Por lo tanto, aprenderemos la identificación correcta de los pines haciendo lo siguiente: mirando la hoja de datos de NodeMCU, sabiendo cuáles de estos pines funcionan con digitalWrite, digitalRead, analogWrite y analogRead, y entendiendo el arranque más a fondo.
A medida que programo más con Arduino IDE, prácticamente veo el NodeMCU como un Arduino. Sin embargo, debo enfatizar que estos dispositivos tienen diferencias, especialmente en lo que respecta a la fijación. Si viste el video ESP32 titulado "Detalles internos y Pinout", has aprendido que hay pines que no se pueden usar, o que están reservados para ciertas cosas. Así que quiero hacer algo útil aquí relacionado con esto, pero esta vez con ESP8266.
Paso 1: NodeMCU Devkit 1.0


El término NodeMCU generalmente se refiere al firmware, mientras que la placa se llama Devkit.
NodeMCU Devkit 1.0 consiste en un ESP-12E en una placa, lo que facilita su uso.
También tiene un regulador de voltaje, una interfaz USB.
Paso 2: ESP-12E

El ESP-12E es un tablero creado por AI-THINKER, que consiste en un ESP8266EX dentro de la cubierta de metal.
Paso 3: ESP8266EX

Hecho por Espressif, este microchip tiene WiFi integrado y bajo consumo de energía.
Procesador RISC Tensilica L 106 32bit con un reloj máximo de 160 MHz
Paso 4: Pinout NodeMCU 1.0 ESP-12E

Paso 5: Pinout ESP-12E

Quiero enfatizar que NodeMCU y ESP-12E no son lo mismo. En el caso del ESP-12E, la grabación utiliza el serial, el UART. En NodeMCU, esto lo realiza el USB.
Paso 6: y después de todo esto, ¿cuál es el número para poner al programar?

Use el número que está delante del GPIO o las constantes A0, D0, D1, D2, D3, D4, D5, D6, D7 y D8.
Paso 7: arranque

Ponemos el osciloscopio en la punta de cada pin. Esto nos permite encontrar, por ejemplo, que cuando encendemos el NodeMCU, sus pines no son todos iguales. Algunos están arriba y otros abajo, por defecto. Vea los comentarios sobre el comportamiento de cada publicación después del arranque en la imagen a continuación.
Paso 8: constantes que ya están predefinidas

Paso 9: Ejemplo de parpadeo

En este ejemplo, conectamos un LED en el puerto D5, que es GPIO14. Entonces las opciones son las siguientes:
// O led está no GPIO14
#define LED 6 // use una constante D5 que já está definida // # define LED D5 void setup () {pinMode (LED, FUNCTION_3); } void loop () {digitalWrite (LED, ALTO); retraso (1000); digitalWrite (LED, BAJO); retraso (1000); }
Paso 10: ENTRADA / SALIDA
Al realizar pruebas de ENTRADA y SALIDA en los pines, obtuvimos los siguientes resultados:
- digitalWrite NO funcionó con los GPIO 6, 7, 8, 11 y ADC (A0)
- digitalRead NO funcionó con los GPIO 1, 3, 6, 7, 8, 11 y el ADC (A0)
- analogWrite NO funcionaba con los GPIO 6, 7, 8, 11 y ADC (A0) (los GPIO 4, 12, 14, 15 tienen hardware PWM, y los otros son por software)
- analogRead funcionó solo con el ADC (A0)
- 6, 7, 8, 11 NO funcionan para los cuatro comandos anteriores
Paso 11: PDF
Descargue el PDF.