gerd schrieb:
> Hallo
>
> kann mir einer vlt an einem beispiel erläutern wie eine checksumme
> funktioniert?
> wenn ich zum beispiel über die seriele schnittstelle die daten:
>
> Startbit, datenbits, stopbit: ASCII "G" = 47d.
>
> | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 |
>
> Unter wikipedia steht man muss die summe der bits bzw bytes bilden.
> in diesem fall hätte ich 10 bits.
Nein. Die Summe
0 + 1 + 1 + 1 + 0 + 0 + 0 + 1 + 0 + 1
wäre 5
Aber Start und Stop Bits werden in die Checksumme nicht eingerechnet.
Wenn die nämlich nicht stimmen würden, würde die Übertragung schon mal
prinzipiell nicht funktionieren.
> heisst das ich muss am empfänger, beispielsweise controller die
> empfangenen daten wieder berechenen wieviele bits eingelesen wurden?
> wie würde man sowas machen?
Genauso wie beim Sender.
Dann wird verglichen. Stimmen die Checksummen nicht überein, dann ist
auf jeden Fall ein Übermittlungsfehler passiert.
Es ist aber unüblich Checksummen über einzelne Bits zu machen.
Normalerweise hört man auf Byteeben auf.
Die Checksumme zu 'G', mit dem ASCII Code von 47d wäre 47d
Die Checksumm zu 'AB', ASCII Codes 65d und 66d, wäre 65d + 66d = 131d