Enthält der RS-485-Standard ein Fehlererkennungs-/Korrekturschema?
RS-232 hat ein Paritätsbit zur Fehlererkennung, aber ich weiß nichts über die Fehlererkennung / -korrektur in der RS-485-Schnittstelle.
RS-485 und RS-232 sind rein elektrische Standards. Dasselbe Datencodierungsschema wird normalerweise auf beiden verwendet. Der Unterschied besteht darin, dass RS-232 einen einzelnen Draht für das Signal mit Pegeln unter -5 V und über +5 V verwendet, während RS-485 ein Differenzialpaar mit 0-5 V-Pegeln verwendet. RS-485 soll auch Multidrop sein, während RS-232 Punkt-zu-Punkt ist.
Sie können wählen, ob Sie auf beiden physikalischen Schichten ein Paritätsbit verwenden möchten oder nicht.
In der Praxis werden Paritätsbits nicht oft verwendet, da sie ein schlechtes Schutzniveau für die Anzahl der ausgegebenen Bits bieten. Wenn Zuverlässigkeit wichtig ist, werden Datenblöcke normalerweise in Pakete mit ausgefeilteren Prüfsummen verpackt, dann mit einem ACK/Retry-Schema auf der Ebene über den Paketen.
RS-485 hat mehrere Vorteile gegenüber RS-232.
Bei der Multidrop-Funktion müssen Sender und Empfänger etwas intelligenter sein, als es für die RS-232-Kommunikation erforderlich sein kann, da die Adressierung gehandhabt werden muss. Sobald ein Mikro involviert ist, ist es nicht allzu schwierig, auch Prüfsummenberechnungen hinzuzufügen.
Die Paritätsbits sind ein sehr grober Schutz und erkennen eine einzelne oder ungerade Anzahl von Bitfehlern in einem Zeichen. Eine gerade Anzahl von Bitfehlern bleibt unentdeckt. Im Gegensatz dazu hat eine Ein-Byte-Prüfsumme 256 mögliche Werte und die Wahrscheinlichkeit eines unentdeckten Fehlers ist viel geringer. Für zusätzliche Sicherheit kann eine 2-Byte-16-Bit-Prüfsumme verwendet werden.
Enthält der RS-485-Standard ein Fehlererkennungs-/Korrekturschema?
Nein, das ist Sache des Systemdesigners.
Eine aktuelle Frage zu diesem Thema finden Sie unter Wie man die Prüfsumme von Hand berechnet .
Olin Lathrop