EsploraRemote

Bu örnek bir İşleme taslağı ile kullanılmak üzere tasarlanmıştır. İşlem, açık kaynaklı bir programlama ortamıdır. Bilgisayardaki uygulama Esplora kartındaki sensörleri okur ve bir zil ve RGB LED'i grafik bir arayüz üzerinden kontrol eder. İşleme uygulamasındaki görüntü Esplora panosunu yansıtır, böylece panonuzun sanal bir sürümünü görürsünüz.

Bilgisayarınızda İşlem yüklü değilse, seri monitörü açıp Esplora yalak seri komutlarıyla etkileşime girerek bu örneği de test edebilirsiniz.

Bu örnekle çalışan iki İşleme taslağı vardır, sensörleri metne basan basit bir tane ve Esplora'nın grafik temsilini gösteren daha karmaşık bir taslak. İlki İşleme programcılarına başlamak için daha iyi olabilir ve ikincisi gelişmiş İşleme programcıları için daha iyi olabilir.

Esplora tahtası

Kod

Bu örnek Esplora için bir seri arayüz açar. Esplora'nın seri portu üzerinden komutlar göndererek panodan sensörleri okumasını veya sesli uyarıya veya RGB LED'e yazmasını isteyeceksiniz.

Komutlar her zaman gerçekleştirmek istediğiniz işlemi ve ardından aktüatöre yazmak istediğiniz değeri veya toplamak istediğiniz örnek sayısını belirten bir karakterle başlar.

Bu çizimi İşleme'de yazılmış uygulama ile birlikte kullanmak, komutları seri bağlantı noktası üzerinden yazmak yerine grafiksel bir arayüzle kontrol etmenizi sağlar. Seri monitöre veya seri uygulamaya komutları manuel olarak girerek kartı kontrol etmek hala mümkündür.

Tüm sensör değerleri, bilgisayar ekranında çizilen Esplora'da görüntülenir ve bilesene tıklayarak zil ve sürgülü RGB ledi kumanda edebilirsiniz.

NOT: Bir bilgisayardaki seri bağlantı noktalarına aynı anda yalnızca bir program tarafından erişilebilir. Arduino IDE'nin Seri Monitörü açıksa, İşleme Kroki Esplora'nın seri bağlantı noktasına erişemez. Benzer şekilde, İşleme çizimi hala çalışıyorsa, Seri Monitörü açamaz veya Esplora'nızı yeniden programlayamazsınız.

/*
  Esplora Remote

 This sketch allows to test all the Esplora's peripherals.
 It is also used with the ProcessingStart sketch (for Processing).

 When uploaded, you can open the Serial monitor and write one of
 the following commands (without quotes) to get an answer:

 "D": prints the current value of all sensors, separated by a comma.
 See the dumpInputs() function below to get the meaning of
 each value.

 "Rxxx"
 "Gxxx"
 "Bxxx": set the color of the RGB led. For example, write "R255"
 to turn on the red to full brightness, "G128" to turn
 the green to half brightness, or "G0" to turn off
 the green channel.

 "Txxxx": play a tone with the buzzer. The number is the
 frequency, e.g. "T440" plays the central A note.
 Write "T0" to turn off the buzzer.


 Created on 22 november 2012
 By Enrico Gueli <enrico.gueli@gmail.com>
 Modified 23 Dec 2012
 by Tom Igoe
 */


#include <Esplora.h>

void setup() {
  Serial.begin(9600);
  while (!Serial); // needed for native USB port only
}

void loop() {
  if (Serial.available()) {
    parseCommand();
  }
}

/*
 * This function reads a character from the serial line and
 * decide what to do next. The "what to do" part is given by
 * function it calls (e.g. dumpInputs(), setRed() and so on).
 */

void parseCommand() {
  char cmd = Serial.read();
  switch (cmd) {
    case 'D':
      dumpInputs();
      break;
    case 'R':
      setRed();
      break;
    case 'G':
      setGreen();
      break;
    case 'B':
      setBlue();
      break;
    case 'T':
      setTone();
      break;
  }
}

void dumpInputs() {
  Serial.print(Esplora.readButton(SWITCH_1));
  Serial.print(',');
  Serial.print(Esplora.readButton(SWITCH_2));
  Serial.print(',');
  Serial.print(Esplora.readButton(SWITCH_3));
  Serial.print(',');
  Serial.print(Esplora.readButton(SWITCH_4));
  Serial.print(',');
  Serial.print(Esplora.readSlider());
  Serial.print(',');
  Serial.print(Esplora.readLightSensor());
  Serial.print(',');
  Serial.print(Esplora.readTemperature(DEGREES_C));
  Serial.print(',');
  Serial.print(Esplora.readMicrophone());
  Serial.print(',');
  Serial.print(Esplora.readJoystickSwitch());
  Serial.print(',');
  Serial.print(Esplora.readJoystickX());
  Serial.print(',');
  Serial.print(Esplora.readJoystickY());
  Serial.print(',');
  Serial.print(Esplora.readAccelerometer(X_AXIS));
  Serial.print(',');
  Serial.print(Esplora.readAccelerometer(Y_AXIS));
  Serial.print(',');
  Serial.print(Esplora.readAccelerometer(Z_AXIS));
  Serial.println();
}

void setRed() {
  Esplora.writeRed(Serial.parseInt());
}

void setGreen() {
  Esplora.writeGreen(Serial.parseInt());
}

void setBlue() {
  Esplora.writeBlue(Serial.parseInt());
}

void setTone() {
  Esplora.tone(Serial.parseInt());
}
[Kodu Al]

See Also