source: arduino-1-6-7/trunk/fuentes/arduino-ide-amd64/libraries/Bridge/examples/ShellCommands/ShellCommands.ino @ 46

Last change on this file since 46 was 46, checked in by jrpelegrina, 4 years ago

First release to Xenial

File size: 1.6 KB
Line 
1/*
2  Running shell commands using Process class.
3
4 This sketch demonstrate how to run linux shell commands
5 using an Arduino Yún. It runs the wifiCheck script on the Linux side
6 of the Yún, then uses grep to get just the signal strength line.
7 Then it uses parseInt() to read the wifi signal strength as an integer,
8 and finally uses that number to fade an LED using analogWrite().
9
10 The circuit:
11 * Arduino Yún with LED connected to pin 9
12
13 created 12 Jun 2013
14 by Cristian Maglie
15 modified 25 June 2013
16 by Tom Igoe
17
18 This example code is in the public domain.
19
20 http://www.arduino.cc/en/Tutorial/ShellCommands
21
22 */
23
24#include <Process.h>
25
26void setup() {
27  Bridge.begin();       // Initialize the Bridge
28  Serial.begin(9600);   // Initialize the Serial
29
30  // Wait until a Serial Monitor is connected.
31  while (!Serial);
32}
33
34void loop() {
35  Process p;
36  // This command line runs the WifiStatus script, (/usr/bin/pretty-wifi-info.lua), then
37  // sends the result to the grep command to look for a line containing the word
38  // "Signal:"  the result is passed to this sketch:
39  p.runShellCommand("/usr/bin/pretty-wifi-info.lua | grep Signal");
40
41  // do nothing until the process finishes, so you get the whole output:
42  while (p.running());
43
44  // Read command output. runShellCommand() should have passed "Signal: xx&":
45  while (p.available()) {
46    int result = p.parseInt();                  // look for an integer
47    int signal = map(result, 0, 100, 0, 255);   // map result from 0-100 range to 0-255
48    analogWrite(9, signal);                     // set the brightness of LED on pin 9
49    Serial.println(result);                     // print the number as well
50  }
51  delay(5000);  // wait 5 seconds before you do it again
52}
53
54
55
Note: See TracBrowser for help on using the repository browser.