Creación de dispositivos de IoT con el ESP8266 y PubNub (8 / 12 paso)

Paso 8: Firmware: principal

PP} kw {} pps {lc {estilo de fuente: cursiva;} a.c. {color: Green; font-estilo: cursiva;} jc {color: azul, estilo de fuente: cursiva;} fn {color: rojo;} num} var {

Cuando directamente programación de microcontroladores comunes como la línea Atmel AVR, puede crear una función principal que contiene un interno de "forever lazo". No es el caso de la ESP8266. Este módulo utiliza ganchos, similares a Arduino, por lo que el compilador espera que unas funciones definidas. Después de eso, usted puede programar un temporizador de tareas repetidas.

Los anzuelos más comunes en uso son:

 // Required for SDK v1.1.0 - Can be used to disable RFvoid user_rf_pre_init(void) { } // Loop function - Can/will continuously reschedule itself to runstatic void IFA user_procTask(os_event_t *events) { os_delay_us(10); // system_os_post(user_procTaskPrio, 0, 0 ); } // User Initialization void IFA user_init() { // Initialize the device here } 

Othwerwise, eres libre de escribir sus propias funciones y llamarlas como un programa en C normal. El atributo de "Ifá" es realmente una macro que define en include/esp8266.h como:

 #define IFA ICACHE_FLASH_ATTR 

Si una función es el prefijo con IFA, está escrito para flash que se asigna a la ROM. Sin este atributo, se acabará la función en el segmento de RAM de instrucción, que es más rápido, pero se llena rápidamente. Si es posible, utilice siempre el atributo de Ifá. Este archivo de encabezado también incluye todo la mayoría de las bibliotecas SDK utilizados así como la reasignación de algunas funciones comunes de C (como printf) a la versión requerida por el SDK de Espressif (os_printf). Por último, define una macro de impresión de depuración simple que puede ser utilizada para imprimir selectivamente declaraciones cuando se define un valor determinado, que se encuentra en el archivo *include/user_config.h*. Utilice esta macro extensivamente en la biblioteca, pero tenga cuidado con él ya que fácilmente puede ser roto.

 // Define to print debug statements over UART using DEBUG_PRINT()#define DEBUG_PRINT_ 1 // Only prints lines for debugging purposes#ifdef DEBUG_PRINT_ # define DEBUG_PRINT(S) printf S #else# define DEBUG_PRINT(S) #endif 

Dentro de la función user_init() , se inicializar la conexión UART, configuración de los pines GPIO y conectar a Wi-Fi. Los valores de SSID y SSID_PW se definen en include/user_config.h. Debe establecer estos valores en el correspondiente SSID y la contraseña de su conexión Wi-Fi casera! El flujo general del código es algo como esto:

  1. Inicializar el UART
  2. Inicializar el GPIO
  3. Inicializar PubNub
  4. Conectar a red (pausa aquí hasta conexión establecida)
  5. Conectarse a Pubnub
  6. Botón (SW2) de seguimiento y control LED1 basado en mensajes recibidos.

Artículos Relacionados

Mi 1 º dispositivo de Iot con GeekNesia + Arduino Uno + Ethernet Shield y DHT21 via PubSub método

Mi 1 º dispositivo de Iot con GeekNesia + Arduino Uno + Ethernet Shield y DHT21 via PubSub método

Geeknesia es una plataforma de Internet de las cosas, como ThingSpeak pero es :) de Indonesia. GeekNesia todavía Beta espero que habrá algún otro rasgo bueno pronto. Usar Arduino uno y shield Ethernet para enviar datos de DHT21 (Humadity y temperatur
Video serie Tutorial principiantes para IoT con Edison de Intel (IntelIot)

Video serie Tutorial principiantes para IoT con Edison de Intel (IntelIot)

Aproximadamente un mes atrás tuve la oportunidad de ser parte de IoT road show organizado por Intel en Pune, India. Fue una experiencia increíble. Quería construir un coche RC controlado de IoT con algunas características. Después de haber trabajado
IOT de Arduino: Temperatura y humedad (con WiFi ESP8266)

IOT de Arduino: Temperatura y humedad (con WiFi ESP8266)

Hola a todos! Soy Michalis Vasilakis de www.ardumotive.com y en este Instructables voy a mostrar cómo hacer su propio termómetro de Internet de las cosas (IOT) mediante el uso de la placa de Arduino uno.Puede utilizar en casa, en la oficina, o en cua
Desarrollo de IoT con Mobile directamente

Desarrollo de IoT con Mobile directamente

Este Instructables muestra cómo la IoT con su móvil el código directamente.Una vez terminada la instalación, que es necesidad de USB a TTL no cable (ni un servidor extra), directo a conectar tu móvil a ESP softAP o tu móvil y la Junta ESP conecta a l
Automatización de Arduino IOT con ESP8266

Automatización de Arduino IOT con ESP8266

Este es un proyecto de automatización de IoT. no como otros que solo buscar los datos del sensor a la internet. allí utilicé técnica de control de los dispositivos de lectura para que web api usando wifi módulo esp8266. con esta técnica podemos monit
IFTTT para IoT con Edison de Intel

IFTTT para IoT con Edison de Intel

EL PROBLEMA:Demasiados dispositivos, demasiadas aplicaciones (para cada dispositivo), que bueno que un profesional ocupado!Necesitamos no sólo un "conectado a casa" - pero también una "casa inteligente".NUESTRA SOLUCIÓN MÁGICA:A través
Enchufe de IoT con Arduino y ESP8266

Enchufe de IoT con Arduino y ESP8266

En este instructable, muestro cómo agregar mayor accesibilidad, inteligencia y conectividad a un enchufe de pared normal. Esto se hace con una combinación de microcontroladores, Arduino, sensores varios, ESP8266 y una combinación de paquetes de softw
Calibrador de IoT con Arduino, Yaler & IFTTT

Calibrador de IoT con Arduino, Yaler & IFTTT

Cómo construir una Web-enabled, Arduino-base medidor de IoT con una API REST y conecte a la plataforma de mash-up IFTTT.com , vía el servicio de retransmisión de Yaler.net *.¿Lo que es emocionante acerca de esto? Con el Canal fabricante, IFTTT apoya
IoT con LinkIt un - Servo

IoT con LinkIt un - Servo

Este es el segundo tutorial de la serie de IoT con LinkIt One, en el tutorial anterior veíamos cómo controlar un LED RGB por internet utilizando un navegador web.Usted debe comprobar hacia fuera mi anterior tutorial donde te muestro cómo empezar con
Coche de RC de IoT con Edison de Intel (IntelIoT)

Coche de RC de IoT con Edison de Intel (IntelIoT)

PrefacioEn primer lugar entendamos lo que estamos tratando de lograr aquí. Tenemos todo tipo de juguetes RC para nuestros hijos y luego hay juegos de videos y móviles. Uno es seguro que cada uno sólo ama los coches, ya sea real o ya sea en la juegos
Cómo hacer inatacables arduino seguro dispositivo de IoT

Cómo hacer inatacables arduino seguro dispositivo de IoT

Thesedays allí son un montón de Internet de las cosas.Pero la mayoría de estos IoT se expone bajo el ataque de la red como como DDOS.Por consiguiente los expertos muchos de IoT nos advierten sobre el problema de seguridad de la IoT como como un sigui
Cómo hacer Backup y restaurar tu dispositivo de Apple con ICloud usando una computadora

Cómo hacer Backup y restaurar tu dispositivo de Apple con ICloud usando una computadora

Soporte: http://amazon.techstevehd.comTe administrar id de Apple a https://appleid.apple.com/Hola chicos, en este video muestro tienes que utilizar tu ordenador para copia de seguridad y restaurar sus dispositivos de apple con iCloud, WiFi es necesar
Busque el Bus Arduino I2C dispositivos I2C conectados con Visuino

Busque el Bus Arduino I2C dispositivos I2C conectados con Visuino

I2C Dispositivos y módulos están ampliamente disponibles y muy popular en los proyectos de Arduino . Cada dispositivo I2C tiene una dirección generalmente fija o configurable por jumpers. Cuando se trabaja con el dispositivo I2C , la primera tarea es
Configuración portable y mínima para las notificaciones de PROWL con independiente ESP8266

Configuración portable y mínima para las notificaciones de PROWL con independiente ESP8266

Cuando empecé con el ESP8266 wifi/uart módulo rápidamente me di cuenta de que esto es un pequeño muy potente poco y módulo muy barato para todo tipo de proyectos. Con el apoyo de la gran comunidad ahora es posible utilizar este módulo como una unidad