domingo, 30 de abril de 2017

ESP8266 Introducción

Hoy les traigo una placa que seguramente ya la escucharon nombrar o incluso ya la conocen, se trata de la ESP8266. Esta placa viene en una infinidad de formatos, tamaños y prestaciones. Vamos a ver la versión ESP-12E que cuenta con:

Procesador de 32 bits y 80MHz de reloj (hay versiones de menor frecuencia y versiones que alcanzan los 160MHz)
4 MB de memoria flash (en el entorno de arduino se puede dividir la memoria para programa y para datos)
WiFi integrado
modos  STA/AP/STA+AP
una entrada analógica de 10 bits
16 pines GPIO

Estos micros trabajan con tensiones de 3v a 3,6v y son muy sensibles (se queman si se excede la tensión) aunque vienen placas que soportan alimentación desde el USB. En definitiva, tenemos un equipo que supera por mucho a un arduino (en cuanto a procesamiento y velocidad de reloj), cuenta con conectividad WiFi, tiene pines de entrada y salida que podemos programar como queramos además de uno que puede hacer lecturas analógicas de 10 bits (ojo, en este pin solo se admiten tensiones máximas de 1V, por lo que si ponemos una tensión superior a esa corremos el riesgo de que se queme el pin o incluso el microcontrolador) y si bien nativamente solo se puede usar con comandos AT, el verdadero poder de este micro se encuentra en que podemos cambiarle el firmware por el nuestro desde el IDE de arduino, lo que lo hace muy flexible. Como desventajas (frente a un arduino común y corriente) no contamos con una gran cantidad de pines analógicos (solo uno) y es medio engorroso programarlo (para programarlo hay que presionar el botón de reset, apretar el botón de flash, soltar el de reset y una vez que comienza a grabar la memoria flash, podemos soltar el botón de flash, y todo esto si la placa cuenta con estos botones).

A continuación voy a dejar el instructivo (paso a paso) para programar el ESP8266 con el ide de arduino.

  1. Descargar e instalar Python 2.7.x (www.python.org/downloads/) (donde dice "customize python 2.7.x" buscar la opción donde dice "add python .exe to path" y seleccionar la opción "will be installed on local hard drive" y darle al botón "next" hasta que se instale).
  2. Ir al IDE de arduino (preferentemente tener la última versión) e ir a archivos, preferencias y donde dice "gestor de URL's adicionales de tarjetas" poner el siguiente link: arduino.esp8266.com/package_esp8266com_index.json (reiniciar el IDE de arduino al finalizar este punto).
  3. Ir a herramientas, placa, gestor de placas, buscar esp8266 e instalar el que diga "esp8266  by esp8266 comunity". Una vez que se descargó e instaló reiniciamos nuevamente el IDE.
Con esos tres pasos ya deberíamos tener todo listo para poder cargar nuestro programa.
Para utilizarlo seleccionamos la placa esp8266 genérica de las placas nuevas y nos van a aparecer un montón de opciones y deberíamos elegir las correctas para nuestra versión de la placa esp8266.


const int pin_led = 5;

void setup() {
  pinMode(pin_led, OUTPUT);   
}

void loop() {
  digitalWrite(pin_led, !digitalRead(pin_led));
  delay(1000);
}

Si cargamos este sencillo código en nuestra placa esp8266 podremos ver como el led integrado en la misma cambia de estado cada un segundo. El número del pin del led puede variar entre los fabricantes de las placas, de las que yo usé el número cambia de 5 a 2.

No hay comentarios.:

Publicar un comentario