Arduino:Примеры/WiFiStatus
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Проверка статуса WiFi на Yun[1]
Этот скетч запускает скрипт под названием «pretty-wifi-info.lua», установленный на Yun в папке «/usr/bin». Он выводит информацию о статусе WiFi-соединения. Вывод информации осуществляется при помощи последовательной передачи данных, поэтому Yun и компьютер нужно подключить друг к другу при помощи USB-кабеля, а перед запуском выбрать нужный порт в меню Port.
Необходимое оборудование
- Плата Arduino Yun;
- Беспроводная сеть;
Цепь
Для этого примера цепи строить не нужно.
Код
Во-первых, подключаем класс Process.
#include <Process.h>
В секции setup() инициализируем Serial (последовательную передачу данных) и библиотеку Bridge. Далее делаем так, чтобы дальнейшая часть скетча не запускалась до тех пор, пока не будет установлено последовательное соединение.
void setup() {
Serial.begin(9600);
while(!Serial);
Serial.println("Starting bridge...\n"); // "Активируем Bridge...\n"
pinMode(13,OUTPUT);
digitalWrite(13, LOW);
Bridge.begin();
digitalWrite(13, HIGH); // когда Bridge активируется, загорится светодиод, подключенный к 13-ому контакту
delay(2000);
}
В секции loop() инициализируем новый процесс, который будет запускать скрипт проверки WiFi. Сделаем это при помощи функции runShellCommand(), указав в ней путь к скрипту.
void loop() {
Process wifiCheck;
wifiCheck.runShellCommand("/usr/bin/pretty-wifi-info.lua");
Выводим на Serial Monitor все символы, возвращенные скриптом, а затем ждем несколько секунд перед тем, как начать снова.
while (wifiCheck.available() > 0) {
char c = wifiCheck.read();
Serial.print(c);
}
Serial.println();
delay(5000);
}
Весь код полностью – ниже:
/*
Проверка статуса WiFi
Этот скетч запускает скрипт «pretty-wifi-info.lua»,
установленный на Yun в папке «/usr/bin»,
а затем выводит информацию о статусе WiFi-соединения.
Для вывода информации используется Serial Monitor,
поэтому Yun Должна быть подключена к компьютеру при помощи USB-кабеля.
Кроме того, вам нужно выбрать нужный порт в меню Port.
Создан 18 июня 2013 Федерико Фиссоре (Federico Fissore)
Этот код не защищен авторским правом.
*/
#include <Process.h>
void setup() {
Serial.begin(9600); // инициализируем последовательную передачу данных
while(!Serial); // ничего не делаем, пока не откроется Serial Monitor
Serial.println("Starting bridge...\n"); // "Активируем Bridge...\n"
pinMode(13,OUTPUT);
digitalWrite(13, LOW);
Bridge.begin(); // устанавливаем контакт с процессором Linux
digitalWrite(13, HIGH); // когда Bridge активируется, включаем светодиод на 13-ом контакте
delay(2000); // ждем 2 секунды
}
void loop() {
Process wifiCheck; // инициализируем новый процесс
wifiCheck.runShellCommand("/usr/bin/pretty-wifi-info.lua"); // команда, которую мы запускаем
// Если наш процесс возвращает какие-либо символы,
// выводим их на Serial Monitor:
while (wifiCheck.available() > 0) {
char c = wifiCheck.read();
Serial.print(c);
}
Serial.println();
delay(5000);
}