MisterMou
06.04.2014, 20:52
Hallo erstmal ;)
Ich kämpfe zur Zeit mit der Berechnung der CRC5 Prüfsumme für ein USB Token Paket.
CRC5 für USB: 0x25
SYNC 1001.0110 1100.0001 0000.0111 EOP
|-------| |------||---||----|
IN ADDR ENDP CRC5
An sich ist ja nichts dabei.
Man nehme die Bits von der Zieladresse und vom Endpunkt und verrechne sie mit 0x25.
Dabei ist darauf zu achten, dass der Stream mit dem LSB beginnt.
CRC5 0x083 (000.1000.0011) ist bei mir aber 0x1 und nicht 0x1C (1.1100).
Egal aus welcher Richtung ich die Bits lese, es kommt immer ein anderes Ergebnis raus:confused:
Kann mir jemand sagen wo ich den Fehler eingebaut habe?
Die Prüfsumme ist richtig, das Paket habe ich zwischen meiner Tastatur und dem Rechner gesnifft.
Auch mit den Beispielen von USB.org bekomme ich es nicht hin.
Ich kämpfe zur Zeit mit der Berechnung der CRC5 Prüfsumme für ein USB Token Paket.
CRC5 für USB: 0x25
SYNC 1001.0110 1100.0001 0000.0111 EOP
|-------| |------||---||----|
IN ADDR ENDP CRC5
An sich ist ja nichts dabei.
Man nehme die Bits von der Zieladresse und vom Endpunkt und verrechne sie mit 0x25.
Dabei ist darauf zu achten, dass der Stream mit dem LSB beginnt.
CRC5 0x083 (000.1000.0011) ist bei mir aber 0x1 und nicht 0x1C (1.1100).
Egal aus welcher Richtung ich die Bits lese, es kommt immer ein anderes Ergebnis raus:confused:
Kann mir jemand sagen wo ich den Fehler eingebaut habe?
Die Prüfsumme ist richtig, das Paket habe ich zwischen meiner Tastatur und dem Rechner gesnifft.
Auch mit den Beispielen von USB.org bekomme ich es nicht hin.