En la sesión de hoy vamos a aprender a utilizar las interrupciones en NodeMCU. A través de las interrupciones daremos prioridad a un evento externo que puede darse por ejemplo a través de un sensor, y que obligará a nuestro programa a dejar lo que esté haciendo para atender la interrupción con un subprograma específico.
Para practicar con las interrupciones veremos cómo utilizar un sensor de infrarrojos y un sensor de movimiento por inclinación, aunque podremos utilizar cualquier sensor digital que queramos.
Por otro lado veremos los bloques que se utilizan para programar una pequeña pantalla OLED muy útil para proyectos con NodeMCU ya que es de pequeño tamaño y de una gran calidad a la hora de mostrar mensajes.
Recuerda a lo largo de todo el curso que tienes disponible el formulario de soporte para alumnos para plantear tus dudas y preguntas.
Vídeo de la sesión 11 del curso de iniciación al Internet de las cosas con NodeMCU.
Esquema:
Descargas:
- Escáner bus I2C
- Librería OLED para instalar en IDE Arduino
Ejercicios:
- A parte del ejemplo del vídeo crea una interrupción con un sensor externo que haga mostrar por la pantalla (OLED o LCD o monitor serie si no tienes pantalla) un mensaje de alarma.
- Utiliza una variable inicializada a 0 de manera que en la interrupción se ponga a 1 y luego asocia esa variable a una salida (puede ser un LED) de manera que quede registrada esa interrupción mientras luego se ejecute el programa principal. Permitirá saber si en nuestra ausencia se ha generado esa interrupción.
- Modifica el programa anterior para que en el programa principal se muestren mensajes en la pantalla OLED de manera secuencial, pero si se ha producido una interrupción previamente muestre en letra pequeña un mensaje de que ha habido una interrupción en la parte superior a parte de mostrar los mensajes que ya mostraba el programa.
- Añade un pulsador que permita volver a poner a 0 esa variable para borrar el registro de que se ha producido una interrupción.
Enlace de compra:
- Pantalla OLED en E-ika. (recuerda que tienes descuento en esta tienda)
Todas las clases de este curso
- Curso de iniciación al IOT con NodeMCU por bloques #1. ¿Qué es el Internet de las cosas?
- Curso de iniciación al IOT con NodeMCU por bloques #2. Instalación y conexión al PC de NodeMCU.
- Curso de iniciación al IOT con NodeMCU por bloques #3. Primeros pasos en programación de NodeMCU.
- Curso de iniciación al IOT con NodeMCU por bloques #4. Pulsador y pantalla LCD 16×2 por I2C en NodeMCU.
- Curso de iniciación al IOT con NodeMCU por bloques #5. Conectarse a una red WiFi.
- Curso de iniciación al IOT con NodeMCU por bloques #6. Lectura de la entrada analógica.
- Curso de iniciación al IOT con NodeMCU por bloques #7. Alarma por correo electrónico.
- Curso de iniciación al IOT con NodeMCU por bloques #8. Sensor de temperatura DHT11 y manejar servos.
- Curso de iniciación al IOT con NodeMCU por bloques #9. Almacenar datos de temperatura en la nube.
- Curso de iniciación al IOT con NodeMCU por bloques #10. Funcionar como servidor web para recibir órdenes a través del navegador.
- Curso de iniciación al IOT con NodeMCU por bloques #11. Interrupciones, sensores digitales y pantalla OLED.
- Curso de iniciación al IOT con NodeMCU por bloques #12. Configuración como host y uso de relé para domótica.
- Curso de iniciación al IOT con NodeMCU por bloques #13. Aplicación con AppInventor para manejar NodeMCU
- Curso de iniciación al IOT con NodeMCU por bloques #14. Mostrar gráfica de sensor analógico en la nube.
- Curso de iniciación al IOT con NodeMCU por bloques #15. Publicar en Twitter y aplicación para control vía web.
- Curso de iniciación al IOT con NodeMCU por bloques #16. Mostrar datos y previsiones meteorológicas.