Also mein Code würde bis zu einer Länge von 255 Datenbytes funktionieren. Allerdings verwende ich einfachheits halber nicht mal einen Ringbuffer sondern nur ein einfaches Array zum zwischenspeichern. An der Stelle könnte man z.B. ansetzen um noch mehr Leistung herauszuholen, jedoch hatte ich bisher keinerlei Probleme in dieser Hinsicht auch wenn ich das Verfahren für beide UARTS gleichzeitig verwendet habe, allerdings kann ich mir ein solches Verhalten bei großen Datenmengen durchaus vorstellen. Mein Beispiel zielt jedoch nicht darauf ab die größte Leistung zu erreichen sondern ein gut verständliches Einstiegsbeispiel zu geben.