Interaction Design WikiSpatial Interaction

Serielle Kommunikation

Serial Communication (en)

Da das Arduino über eine serielle Schnittstelle verfügt können wir diese auch nutzen um uns momentane Werte des Arduino abzurufen oder später auch direkt mit dem Computer zu kommunizieren. Um die Serielle Schnittstelle zu nutzen benötigen wir im setup() lediglich die Funktion Serial.begin() aufzurufen. Danach können wir uns mit der Funktion Serial.print() bzw. Serial.println() beliebige Werte ausgeben lassen. Die Arduino IDE hat dazu auch einen eigenen Monitor. Ein Beispiel für die serielle Kommunikation sieht so aus:

Example "Hello World" Expand source
void setup() 
{
  Serial.begin(9600);
}
void loop() 
{
  Serial.println("Hallo Welt");
}

Serial Monitor

Im Serial Monitor zum Anzeigen von Informationen muss die entsprechende Baudrate ausgewählt werden und dann werden die Daten angezeigt. Der Monitor sieht folgendermassen aus.

 

Call Response

Dieses Beispiel sendet alles, was es empfängt, seriell zurück, bis es ein Zeilenumbruchsymbol findet.

Example "Call response" Expand source
String inData;

void setup()  
{
  // Open serial communications and wait for port to open:
  Serial.begin(9600);
}

void loop() {
  while (Serial.available() > 0)
  {
    char recieved = Serial.read();
    inData += recieved;  // Process message when new line character is recieved
    if (recieved == '\n')
    {
            Serial.print("I got : ");
            Serial.println(inData);
            inData = ""; // Clear recieved buffer
            delay(1000);
    }
  } 
}

Weitere Informationen

Serial - auf Arduino.cc