Hallo, was würdet ihr allgemein empfehlen? Den UART mit Parität programmieren oder lieber am Ende eines Datensatzes eine CRC Prüfung? Gruß Ralf
CRC ganz eindeutig. der parity check zeigt ja nur 50% der übertragungsfehler an. michael
Kann ich denn davon ausgehen, dass meine CRC-Routine nahezu 100% erkennt? Alle Fehler werden sich wohl nicht erkennen lassen, oder? Es gibt doch auch noch andere Prüf-Arten, bei denen man den Fehler zum Teil sogar selber beheben kann. Aber die sind verdammt aufwendig, oder? Gruß Ralf
"was würdet ihr allgemein empfehlen?" was allgemein gültiges kann es nicht geben, es kommt immer auf die Anwendung an. Ich arbeite immer ohne alles. Eine Außnahme ist nur mein Bootloader, da der auch auf einem AVR mit internem RC-Oszillator arbeiten soll. Und dann könnte es passieren, daß die Baudratenerkennung keinen Teilerwert mit genügend kleinem Fehler findet. Über ein extra Kommando kann dann die CRC16 über allen empfangenen Daten ermittelt werden. Peter
Hi Peter, wie michaelr oben erwähnte, mit Parität können nur 50% der Fehler erkannt werden. Das Projekt ist ein ISP-Programmer. Da ich zum größten Teil eh mehrere Bytes in einem Datensatz empfange, halte ich die Lösung mit dem CRC für geeigneter. Ich habe es aber so gemacht wie du, ich kann selektieren, ob mit oder ohne CRC gearbeitet wird. Parität habe ich ganz gekickt. Gruß Ralf
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.