Gast
#465772
Hallo zusammen,
ich möchte einen UART Empfangsbuffer realisieren.
Vorstellen kann man sich das ganze System als dezentralen Datenlogger
mit zentralen Bediensystem. Der Controller im Bediensystem sammelt also
sämtliche Informationen der dezentralen Einheiten. Der UART läuft mit
115200baud (via RS485).
Nun möchte ich natürlich keine Informationen verlieren; wie folgt würde
ich den Empfangsbuffer realisieren.
[code]
...
char uart_interrupt[128]={'\0'};
char uart_main[128]={'\0'};
...
ISR uart --> hängt empfangenes Zeichen an uart_interrupt an....
...
in der Main Schleife wird der uart_interrupt auf neues Zeichen geprüft
(durch int-Variable, die aktuelle Position im Buffer enthält) und das
neue Zeichen an die Variable uart_main angehängt sowie aus dem
uart_interrupt entfernt. Danach wird uart_main auf vollständigen
Datensatz geprüft. Wie ich das mache weiß ich noch nicht, denn ich habe
keinen Begin respektive End-Character. Prinzipiell - kann ich den Buffer
so realisieren oder wäre das grob-fahrlässig-unsauber? ;-)
grüße und vielen Dank