Paso 3: Eventos toque presentar
Hasta ahora, bien. Ahora es tiempo para interactuar con el linux que se esconde bajo el proceso de Arduino Edison.
La forma más sencilla de hacerlo es mediante una llamada a un comando del sistema o un script con la función de system() de Arduino Edison.
Así, el bosquejo modificado a continuación, cada vez que se activa el sensor de contacto, añade una línea con la fecha y hora, junto con el mensaje "toque!" y a la /tmp/arduino.log archivo host de la Junta de Edison
Establecer una conexión a la placa, y verás la línea añadida cada vez que presione el botón: solo dar siguiente en tu terminal:
raíz decola /tmp/arduino.log
Modificado del bosquejo (sólo la línea con la llamada al sistema añadida):
#include #include "rgb_lcd.h" rgb_lcd lcd; const int colorR = 0; const int colorG = 0; const int colorB = 255; const int pinButton = 7; // pin of button define here boolean touchStarted = false; void setup() { pinMode(pinButton, INPUT); // set button INPUT // set up the LCD's number of columns and rows: lcd.begin(16, 2); lcd.setRGB(0,0,0); // Print a message to the LCD. lcd.print("Status:"); delay(1000); } void loop() { lcd.setCursor(0, 1); if(digitalRead(pinButton)) // when button is pressed { if (!touchStarted) // act only on start of touch event { touchStarted = true; lcd.print ("touch!"); lcd.setRGB(colorR, colorG, colorB); system("echo $(date '+%Y %b %d %H:%M:%S') Touch! $(hostname) >> /tmp/arduino.log"); } } else { touchStarted = false; lcd.setRGB(0,0,0); lcd.print (" "); } delay(10); }