El siguiente tutorial de ESP8266 le brinda un impulso en los fundamentos del microcontrolador ESP8266.
En primer lugar, déjeme mostrarle que el ESP8266 es, en mi opinión, el mejor microcontrolador del mercado en términos de relación calidad-precio. Después de comparar los pros y los contras del ESP8266, este tutorial terminará con un primer borrador como una introducción paso a paso.
¿Qué es el ESP8266?
El ESP8266 es un potente microcontrolador de 32 bits con Wi-Fi incorporado y pila TCP / IP completa para conexión a Internet. El chip es producido por Espressif Systems en Shanghai, China y es famoso por su bajo precio en comparación con las placas Arduino originales. Puede comprar una placa ESP9266 completa por menos de $ 5, lo que la hace popular para proyectos de bricolaje de bajo costo. Hay diferentes módulos que utilizan el ESP8266. Estos módulos tienen un número diferente de GPIO para conectar el microcontrolador a otros dispositivos como sensores o actores.
Especificaciones técnicas ESP8266
- Procesador de la serie Tensilica Diamond L106 de 32 bits y SRAM en chip
- Fuente de alimentación: 2,5 V – 3,6 V
- Consumo de corriente: 15µA – 400mA (promedio: 80mA). En modo DeepSleep solo 0,5 µA
- Rango de temperatura de funcionamiento: -40 ° C – 125 ° C
- Memoria flash externa: se admiten hasta 16 MB (normalmente se incluyen de 512 KB a 4 MB)
- Interfaces
- Control remoto UART / SDIO / SPI / I2C / I2S / IR
- 11 o 13 pines de E / S programables con una corriente máxima de 12 mA
- 1 entrada analógica 0V a 1V con una resolución de 10 bits
- todas las entradas toleran un máximo de 3,6 V
- La red
- WiFi 802.11 b / g / n 2.4 GHz con WPA / WPA2 PSK
- ipv4 e ipv6 desde Arduino Core 2.5.0
- UDP y TCP con hasta 5 conexiones simultáneas
- Ancho de banda: 150 KB / sa 300 KB / s
- Latencia: <10 ms
Módulos que utilizan el ESP8266
Hay diferentes módulos que utilizan el ESP8266. Los módulos no son realmente diferentes en programación. Si puede programar un módulo, básicamente puede programarlos todos. Las principales diferencias son el número y tipo de puertos proporcionados (GPIO), así como la memoria disponible. Por ejemplo, el pequeño módulo ESP-01 tiene 512 KB de memoria flash y el popular ESP-12E ya tiene 4 MB de memoria flash. En este artículo, encontrará una comparación de todos los módulos ESP8266, ya que estos detalles no forman parte del tutorial ESP8266.
Comparación de ESP8266 con Arduino y Raspberry Pi
Ventajas
- No se requiere un sistema operativo especial para que el programa no dependa del sistema operativo.
- El software se actualiza en el microcontrolador. Por lo tanto, el adaptador comienza a ejecutar el script cuando se enciende.
- En comparación con las placas Arduino, el ESP8266 es muy rápido y los costos son muy económicos.
Puede encontrar la comparación completa entre las placas ESP8266 y las placas Arduino en este artículo.
Desventajas
- Un sistema operativo especial sería más flexible y los casos de uso como una cámara de seguridad podrían hacerse más rápido. Consulte motioneye para Raspberry Pi.
Tu primer proyecto ESP8266
En el próximo capítulo, solo consideraremos la placa NodeMCU que es básicamente un microcontrolador ESP-12 con un regulador de voltaje y una interfaz USB-UART para flashear el código del programa a través del Arduino IDE y el cable micro USB. Además, NodeMCU se adapta a las placas de prueba, lo que hace que sea más fácil y rápido construir un prototipo sin problemas.
La siguiente tabla le brinda una descripción general de todos los componentes y partes que utilicé para este tutorial. Recibo comisiones por compras realizadas a través de los enlaces de este artículo.
- NodeMCU (Amazonas) (Banggood)
- Cables de puente de clavija (macho a macho) (Amazonas) (Banggood)
- Tabla de cortar pan (Amazonas) (Banggood)
- DIRIGIÓ (Amazonas) (Banggood)
Ahora pasemos a la parte práctica de este tutorial de ESP8266. Haremos nuestro primer proyecto. Siga los 5 pasos siguientes:
1) Primero debe comprar su tarjeta ESP8266
Para iniciar la parte práctica de este tutorial ESP8266, debes tener una tarjeta ESP8266. Puede encontrar un enlace a Amazon y Banggood en el cuadro de arriba. El NodeMCU es bastante económico y si desea hacer más proyectos en el futuro, puede comprar directamente un juego de 4 tarjetas para ahorrar dinero. Además, si no tiene ninguno de los componentes necesarios, puede comprar un Kit de inicio. Créame, necesitará casi cualquier parte de dicho kit en el futuro.
2) Segunda instalación y configuración del Arduino IDE
Queremos utilizar el IDE de Arduino como plataforma de desarrollo para escribir y descargar programas en placas compatibles. Puede descargar el IDE de Arduino desde el sitio oficial.
Sugiero usar la última versión del IDE de Arduino. Puede descargar y extraer el archivo zip. No se necesita instalación, simplemente abra el IDE de Arduino haciendo clic en arduino.exe. El IDE de Arduino admite una amplia gama de placas Arduino diferentes. Como no queremos usar una placa Arduino sino la placa NodeMCU, necesitamos introducir la placa NodeMCU en el IDE. Es bastante sencillo. Simplemente haga clic en Archivo → Preferencias. Inserte la siguiente URL para obtener más URL de Board Manager.
http://arduino.esp8266.com/stable/package_esp8266com_index.json
3) Programe el primer guión
Nuestro primer script será un LED parpadeante que es fácil de programar con solo unas pocas líneas de código. El lenguaje de programación se basa en C. También es posible que el ESP8266 use LUA como lenguaje de programación, pero prefiero el script en C. Cada script de Arduino se divide básicamente en 3 partes:
- En la primera parte se definen variables y constantes. En esta primera parte, definimos el pin GPIO que se conecta al ánodo del LED.
- La segunda parte es la función de configuración. Esta función solo funcionará una vez si el ESP8266 está conectado a una fuente de alimentación. En nuestro script tutorial ESP8266, configuraremos el pin GPIO seleccionado como salida.
- La última parte del script es la función de bucle, que funcionará como un bucle abierto para el microcontrolador. En la última parte del script, encendemos el LED con la función digitalWrite (ledPin, HIGH) y esperamos un tiempo definido. Posteriormente apagamos el LED con la misma función que cambiamos el control de HIGH a LOW y esperamos de nuevo un rato.
La siguiente parte es el guión terminado. Siéntase libre de copiar el script a su IDE de Arduino.
const int ledPin = D8; void setup() { pinMode(ledPin, OUTPUT); } void loop() { digitalWrite(ledPin,HIGH); delay(200); digitalWrite(ledPin,LOW); delay(200); }
4) Conecte todas las partes en un modelo
Conectar todas las partes es fácil porque solo tenemos un componente LED. Definimos que el LED se alimentará desde el pin GPIO D8 porque necesitamos seleccionar una salida digital para el LED. Si quieres cambiar el pin GPIO, no lo dudes pero debes utilizar una de las salidas digitales D1 a D8. Si cambia el pin GPIO, asegúrese de cambiar el script. Ahora conecta todas las partes:
- Coloque el NodeMCU en el tablero de experimentos y asegúrese de que haya una línea de espacio para conectar el LED.
- Conecte el polo positivo del LED (pata larga) con D8 del ESP8266. En el tablero, las filas verticales en el lado superior e inferior están interconectadas internamente.
- Conecte el polo negativo del LED (pata corta) al suelo (GND) del ESP8266.
Nota: Como regla general, el voltaje directo de un LED está entre 1.8 y 3.3 voltios y el voltaje de operación del ESP8266 es 3.3 V. Para esto no tenemos Necesita utilizar una resistencia en serie con el LED. Si está utilizando una placa Arduino, el voltaje de funcionamiento es de 5 V y necesitará una resistencia de 220 ohmios.
5) Descargue y ejecute el script en la placa ESP8266
Ahora es el momento de descargar el script al ESP8266. Pero primero, debemos asegurarnos de que todas las configuraciones de descarga coincidan con el ESP8266.
Verifica la configuración conectando su NodeMCU a través de Micro USB a su PC o computadora portátil.
Haga clic en Arduino IDE en Herramientas y asegúrese de que su configuración sea la siguiente. Para seleccionar la tarjeta de nodo MCU, el IDE de Ardiuno debe descargar la información de la tarjeta desde el administrador de tarjetas: Haga clic en Herramientas → Tarjeta → Administrador de tarjetas.
Ahora busque NodeMCU y encontrará la comunidad esp8266 de ESP8266. Instale la última versión del mapa. Después de la instalación, puede seleccionar la tarjeta correcta para la configuración.
Una vez que Arduino conozca las placas ESP8266, asegúrese de que la configuración de la placa sea la misma que en la siguiente tabla
Elemento | Configuración |
---|---|
Placa | NodeMCU 1.0 (Módulo ESP-12E) |
Velocidad de carga | 115200 |
Frecuencia de la CPU | 80 MHz |
Tamaño del flash | 4M (1M SPIFFS) |
Puerto de depuración | Desactivado |
Nivel de depuración | Ninguno |
Variante IwIP | Memoria inferior V2 |
Borrar Flash | Sólo Boceto |
Puerto | Su número de puerto depende de sus puertos USB. Tiene que haber un puerto COM capaz de seleccionar. |
Ahora finalmente podemos descargar el script al ESP8266. Haga clic en la flecha en la parte superior del IDE de Arduino. En la parte inferior del IDE, verá el proceso de descarga. Si el proceso de descarga se completa con éxito, un LED parpadeará.
Espero que hayas disfrutado de este tutorial de ESP8266. Ha aprendido los conocimientos fundamentales del microcontrolador ESP8266 con especificaciones técnicas. También sabes que hay diferentes tarjetas usando el ESP8266 y has creado tu primer proyecto con mis tarjetas favoritas, el NodeMCU.
Ahora depende de usted realizar cambios en el script. Practices es la mejor manera de familiarizarse con todo el tema de los microcontroladores. Por ejemplo, puede cambiar el tiempo de pausa hacia arriba y hacia abajo o utilizar otra salida digital como fuente de alimentación para el LED.
Si tiene alguna pregunta, no dude en dejar un comentario.
Conclusión
En este artículo, ha aprendido los conceptos básicos del microcontrolador ESP8266. Conoces las especificaciones técnicas y las diferencias entre las placas ESP8266, las placas Arduino y la Raspberry Pi. También espero que hayas disfrutado creando tu primer proyecto.
¿Qué opinas del ESP8266? ¿Te gusta este microcontrolador o prefieres el Arduino o el Raspberry Pi? También me gustaría saber qué proyectos vas a implementar.