Processing Programm fiert ohne Arduino ein

Mike80

Neues Mitglied
Hallo,
Ich habe mit Processing ein Programm geschrieben, welches Daten mit Hilfe eines Strings von einem Arduino ausließt und in einer Grafik anzeigt.
Es funktioniert auch alles wie ich es möchte.
Ich habe nur das Problem, das das Programm sich aufhängt wenn kein Arduino angeschlossen ist, weil die Kommunikation fehlt.
Ich möchte gern im Fenster eine Fehlermeldung anzeigen, wenn kein Gerät angeschlossen ist. Sowas wie "kein Gerät erkannt" ohne das sich das sich das Programm aufhängt.
Man muss doch irgendwie sagen können, das nur auf Daten gewartet werden soll, wenn der Arduino erkannt wird?
Ich bin blutiger Anfänger und über jede Hilfe dankbar.
Hier der Code:
Java:
[/B]
import processing.serial.*;
Serial dataPort;
String data;

void setup()
{
   size(1640, 840);
   String portName = Serial.list()[0];
   dataPort = new Serial(this, portName, 9600);
   dataPort.bufferUntil('\n');
 }

viod draw()
{
// mein Programm
}

void serialEvent(Serial dataPort)
{
  data = dataPort.readString();
}
[B]
 
Zuletzt bearbeitet:
Man könnte den auszuführenden Code mittels try/Catch umfassen: solange Arduino nicht erreichbar ist, gibt der Bildschirm z.B. "Nicht erreichbar..." aus
 
Erst mal muss er noch prüfen können, ob dieser erreichbar ist, was ja genau auf die selbe Art passiert. Man schickt was hin und schaut, was zurückkommt.

Eine saubere Lösung wäre ein Executorservice mit TimeOut.

Ein einfaches Beispiel findet sich hier in Option 2
 

Zurück
Oben