Shell



Açıklama

Bu Bağlayıcı, Arduino çiziminden Linux tarafı için Shell komutlarının yürütülmesine izin verir. Dosya bağlayıcısını kullanmak için izlemeniz gereken adımların altında:

  • Kabuk bağlayıcısını kurun;
  • konektörü etkinleştirin;
  • basit bir eskiz yaz;
  • taslağı yükleyin ve keyfini çıkarın.

Kurulum konektörü

Dosya Bağlayıcısı yapılandırma dosyasını aşağıdaki yolda bulabilirsiniz: /usr/lib/python2.7/ciao/connectors/shell/shell.json.conf

{
"name" : "kabuk" ,
"description" : "Ciao Core için kabuk konektörü" ,
"yazarlar" : [ "Arduino Takımı <swdev@arduino.org>;" ] ,
"depo" : "https://github.com/arduino-org/Ciao" ,
"sürüm" : "0.0.1" ,
"params" : {
"working_directory" : "/ root" ,
"read_max_size" : 1024
} ,
"log" : {
"level" : "hata ayıklama"
}
}

Başlangıçtaki parametreler dahili kullanım içindir, ne yaptığınızı tam olarak bilmiyorsanız bunları (ad, açıklama, sürüm, ciao) düzenlemeyin.

Yapılandırılabilir kısım, "params" tuşu ile tanımlanan kısımdır:

  • “Working_directory”: komutun yürütüldüğü geçerli çalışma dizinini belirtir.
  • “Read_max_size”: Bağlayıcının okuyabileceği maksimum bayt değerini belirtir.

Bağlayıcıyı etkinleştir

Her Ciao bağlayıcısında Ciao Core için bir yapılandırma dosyası bulunmalıdır; bağlayıcıyı etkinleştirmek için bu basit dosya zorunludur.

Kabuk bağlayıcısını etkinleştirmek için lütfen aşağıdaki yolda dosyayı düzenleyin: /usr/lib/python2.7/ciao/conf/shell.ciao.json.conf

{
"name" : "kabuk" ,
"etkin" : doğru ,
"type" : "yönetilen" ,
[ ... ]
}

Etkinleştirilen anahtar true (boole değeri) olarak ayarlanmalıdır. Bu, Shell Connector'ı etkinleştirmek için düzenlemeniz gereken tek parametredir. Bir kez yapılır Ciao Core hazır ve Shell Connector kullanacak şekilde yapılandırılmış olacaktır.

Misal

#include <Ciao.h>

void setup() {
  //init Ciao
  Ciao.begin();
  Serial.begin(9600);
}
void loop() {
  //Run commands in Linino OS to get date
  CiaoData data = Ciao.write("shell", "date");
  if (!data.isEmpty()) {
    //Get data back
    String usage = data.get(2);
    Serial.println(usage);
  }
  delay(10000);
}