Auslesen des seriellen Empfangsbuffers

Chris72622:
angenommen ich lasse mir die ASCII-Zeichen A, B und C in dieser Reihenfolge an den seriellen Eingangsbuffer eines Arduinos schicken und lese dessen Eingangsbuffer mit Serial.read() in regelmäßigen Abständen aus, kann es dann theoretisch sein, dass mein Prozessor anstatt ABC auf einmal ACB liest?

Ja klar kann das passieren: Und zwar, wenn der serielle Eingangspuffer (max. Kapazität: 63 Zeichen) überläuft, weil er nicht schnell genug ausgelesen wird.

Ich bin mir nicht genau sicher, was dann passiert, wenn ein neues Zeichen eintrifft obwohl der Puffer komplett voll ist, aber entweder überschreibt das neue Zeichen das letzte Zeichen im Puffer, oder das neue Zeichen geht verloren.

Aber egal wie: Wenn Du auf einen vollen Puffer immer weiter "ABC" sendest, wirst Du nicht immer "ABC" aus dem Puffer rauslesen können, nachdem es einmal einen Puffer-Overrun bei vollem Eingangspuffer gab.