Hallo,
ich habe folgendes Problem. Ich muss einen Zeichencode mit 13 Stellen einlesen. Das habe ich bislan folgendermaßen gemacht:
char Einlesen [13];
…
while (Serial.available() <= 12) {
}
Serial.readBytes(Einlesen, 13) ;
…
Nun hat sich aber gezeigt, dass manchmal Fehler bei der Übertragung zum Arduino passieren, dh manchmal werden mehr oder weniger Zeichen als 13 zum Arduino gesendet.
Wenn weniger Zeichen als 13 übertragen werden dann bleibt der Ardunio ewig in der While schleife hängen. Wenn mehr als 13 gesendet werden, dann verarbeitet der Arduino die ersten 13 Zeichen und das 14. Zeichen merkt er sich aber und setzt es vor die nächste Zeichenkette, so dass diese nicht richtig verarbeitet wird.
Ich weis nicht wirklich wie ich das realisieren kann, dass nur wenn 13 Zeichen übertragen werden der Arduino die Zeichen verarbeitet. Bei zu vielen oder zu wenigen Zeichen soll der Arduino den Zahlencode löschen und einfach darauf warten, dass ein neuer Zeichencode gesendet wird.
Wäre sehr dankbar für Hilfe.