Paso 3: Firmware
Si usted no está familiarizado con la partícula (anteriormente chispa) Junta del fotón, estás en un placer. Es malvado fácil para empezar con y aún más fácil de realizar cambios en el firmware una vez que tengas todo cableado y montado por la puerta. Porque el firmware del tablero de partícula puede ser flash a través de tu red wifi, realmente no necesita ser enchufado directamente en él como hacia fuera de microcontroladores. Esto significa que usted puede probar su código más fácilmente mientras que es realmente la configuración de su dispositivo y usted puede ajustar y actualizar el programa desde su escritorio, si es necesario.
Si usted necesita familiarizarse con el fotón, sugiero que comience por aquí: https://www.particle.io/
Tienen un montón de grandes recursos, pero si todavía tienes mucho que aprender sobre microcontroladores, podría encontrar uso en la Web de Arduino, así: https://www.arduino.cc/. Tienen todo tipo de consejos, tutoriales y librerías que se pueden utilizar.
Hemos incluido algunas de las imágenes del código anterior (y que tendrá Publicada en Github poco), pero entro a través de la lógica general a continuación si desea probar la codificación por sí mismo (sin duda la mejor manera de aprender).
TUTORIAL DE CÓDIGO / /
#include "HttpClient/HttpClient.h" << es una biblioteca que se puede acceder a través de partículas que ayuda a dar formato y enviar solicitudes HTTP. Vamos a utilizar este acceso el script PHP en nuestro servidor.
void setup() << La función de configuración funciona primera y establece todas las cosas que sólo tenemos que hacer una vez. En este método vamos a (1) comenzar nuestra comunicación serial para la depuración, (2) establecer nuestro análogo leer pin y (3) establecer nuestro LED indicador pines.
void loop() << la función de bucle contiene todas las operaciones recurrentes del código. Esto es donde vemos si los botones están actualmente siendo empujados. He añadido un retraso de 50ms entre cada ciclo a través de esta función en cuanto a carga no innecesariamente el chip. Luego tomar 10 lecturas del pin analógico y promedio de estos valores. Esto nos da el valor de leer.
<< De aquí, determinar si este valor coincide con nuestro valor inicial causada por la resistencia original o un valor predeterminado que viene de completar el circuito con uno de los botones a través de una resistencia diferente.
<< Si se determina que el valor corresponde a un botón se llama a la función sendEmail().
void sendEmail(String recipient) << aquí nos en contacto con el PHP script funcionando y pase el nombre del empleado que botón ha sido empujado. Además, antes de enviar el correo electrónico, me prende el indicador LED para saber el usuario que el mensaje fue recibido correctamente, entonces hace una pausa para que usted no puede enviar varios mensajes a la vez. Después del retardo, el LED se apaga otra vez.