Process

Bu Yún aygıtı örneği, AR9331 üzerinde Linux işlemlerini çalıştırmak için Bridge kitaplığının Process sınıfının nasıl kullanılacağını gösterir. Özellikle, bu örnekte, bir web sunucusundan veri aktarmak ve Linux işlemcisi hakkında bilgi almak için curl ve cat kullanacaksınız.

Gerekli Donanım

  • Yún kartı veya kalkan
  • internete ağ bağlantısı

Bu örnek için devre yok.

Kod

Process sınıfını çiziminize ekleyin. #include <Process.h>

setup() 'de Bridge'i başlatmak ve bir seri bağlantı başlatmak isteyeceksiniz. Kurulumun geri kalanını setup() çalıştırmadan önce seri bağlantının etkinleşmesini bekleyin.

void setup() {
  Bridge.begin();
  Serial.begin(9600);

  while (!Serial);
[Kodu Al]

setup() öğesinin geri kalanı, runCurl() ve runCpuInfo() iki özel işlevi çağırmak için kullanılır. loop() içinde hiçbir şey yok.

runCurl ( ) ;
runCpuInfo ( ) ;
}

void loop ( ) {
// Burada hiçbir şey yapma.
}

runCurl() , curl komutunu başlatır ve Arduino logosunu ASCII olarak indirir. Adlandırılmış bir İşlem oluşturun ve myProcess.begin("curl"); çağırarak myProcess.begin("curl"); . addParameter() yöntemiyle addParameter() URL'yi ekleyin ve tümünü run() ile run() .

void runCurl ( ) {
İşlem p ;
s. başlar ( "kıvır" ) ;
s. addParameter ( "http://arduino.cc/asciilogo.txt" ) ;
s. run ( ) ;

İşlemden kullanılabilir veriler olduğunda, seri monitöre yazdırın:

(s. mevcuttur ()> 0) ise {
char c = p. read ( ) ;
Seri . baskı ( c ) ;
}
Seri . flush ( ) ;
}

runCpuInfo() işlevi için, cat için yeni bir işlem oluşturacaksınız. Parametreyi cpu Bilgi dosyasının yolundan geçirerek cat ekleyin, ardından işlemi çalıştırın.

void runCpuInfo ( ) {
İşlem p ;
s. başlar ( "kedi" ) ;
s. addParameter ( "/ proc / cpuinfo" ) ;
s. run ( ) ;

İşlemden kullanılabilir veriler olduğunda, seri monitöre yazdırın:

(s. mevcuttur ()> 0) ise {
char c = p. read ( ) ;
Seri . baskı ( c ) ;
}
Seri . flush ( ) ;
}

Tam kod aşağıdadır:

/ *
Process sınıfını kullanarak işlemi çalıştırma.

Bu çizim linux süreçlerinin nasıl çalıştırılacağını gösterir
YunShield / Yún kullanma

oluşturuldu 5 Haz 2013
ile Cristian Maglie

Bu örnek kod kamu malıdır.

http: egitim.aspx e = Süreç

* /


#include <Process.h>

void setup ( ) {
// Köprüsü Başlat
Köprü. begin ( ) ;

// Seri Başlat
SerialUSB. başlar ( 9600 ) ;

// Seri Monitör bağlanana kadar bekleyin.
süre ( ! SerialUSB ) ;

// çeşitli örnek işlemleri çalıştırın
runCurl ( ) ;
runCpuInfo ( ) ;
}

void loop ( ) {
// Burada hiçbir şey yapma.
}

void runCurl ( ) {
// "kıvır" komutunu başlatın ve ağdan Arduino ascii art logosunu alın
// curl, farklı internet protokolleri kullanarak veri aktarımı için komut satırı programıdır
İşlem p ; // Bir işlem oluşturun ve buna "p" deyin
s. başlar ( "kıvır" ) ; // "curl" komutunu başlatan işlem
s. addParameter ( "http://www.arduino.cc/asciilogo.txt" ) ; // URL parametresini "curl" öğesine ekle
s. run ( ) ; // Süreci çalıştırın ve sonlandırılmasını bekleyin

// Seri üzerine arduino logosu yazdırın
// Bir işlem çıktısı akış yöntemleriyle okunabilir
(s. mevcuttur ()> 0) ise {
char c = p. read ( ) ;
SerialUSB. baskı ( c ) ;
}
// Son veri bitinin gönderildiğinden emin olun.
SerialUSB. flush ( ) ;
}

void runCpuInfo ( ) {
// "cat / proc / cpuinfo" komutunu başlat (Atheros CPU ile ilgili bilgileri gösterir)
// cat, bir dosyanın içeriğini gösteren bir komut satırı yardımcı programıdır
İşlem p ; // Bir işlem oluşturun ve buna "p" deyin
s. başlar ( "kedi" ) ; // "cat" komutunu başlatan işlem
s. addParameter ( "/ proc / cpuinfo" ) ; // cpuifo dosya yolunu kesilecek parametre olarak ekleyin
s. run ( ) ; // Süreci çalıştırın ve sonlandırılmasını bekleyin

// SerialUSB üzerinde komut çıktısını yazdırın.
// Bir işlem çıktısı akış yöntemleriyle okunabilir
(s. mevcuttur ()> 0) ise {
char c = p. read ( ) ;
SerialUSB. baskı ( c ) ;
}
// Son veri bitinin gönderildiğinden emin olun.
SerialUSB. flush ( ) ;
}

See Also

  • Bridge Library- Köprü Kütüphanesine referansınız
  • Bridge- Analog ve dijital pinlere erişmek için basit REST tarzı çağrılar
  • Console Ascii Table- Konsola yazdırılan eksiksiz bir ASCII tablosu
  • Console Pixel- Konsoldan bir LED'i açma ve kapatma
  • Console Read- Console.read () işlevini kullanarak köprüden gelen verileri okuma
  • Data Logger- Üç analog sensörden bir SD karta veri kaydedin.
  • File Write- Dosya Yún dosya sistemine nasıl yazılır.
  • Http Client- İnternete bağlanan ve içeriği indiren temel bir HTTP istemcisi.
  • Http Client Console- Bağlanan, içeriği indiren ve WiFi ve Konsol kullanarak içeriği gösteren HTTP istemcisi.
  • Mailbox Read Message- Köprü kitaplığını kullanarak Posta Kutusu adlı ileti sırasını okuma.
  • Remote Due Blink- DUE panolarına uzaktan taslak yükleme.
  • Shell Commands- Bir Yún kullanarak linux kabuk komutları nasıl çalıştırılır.
  • Temperature Web Panel- Yún'ın yerleşik web sunucusu üzerinden bir analog girişten veri sunma.
  • Time check- Bridge üzerinden Linux'tan zamanı alır, sonra saatleri, dakikaları ve saniyeleri ayrıştırır.
  • WiFi Status- Wifi bağlantınızın durumu hakkında bilgi yazdırır.
  • Yún First Configuration- Seri Monitör ve USB bağlantı noktasını kullanarak Yún cihazınızı kolayca yapılandırın.
  • Serial Terminal- Yún'ın 32U4 işlemcisini, Yún'daki Linux tarafı için seri terminal olarak kullanın.