M
miki
Jungspund
Ich versuche per Netzwerk die Kommunikation mit einem Gerät herzustellen. Dafür nutze ich QTcpSocket, was soweit auch klappt.
Die Übertragungspackete beinhalten eine Checksumme. Laut Beschreibung soll das crc16 sein. Jedoch schaffe ich es nicht auf das gleiche Ergebnis zu kommen, wie in den Beispielen gegeben sind.
Wenn ich folgendes übertrage:
Bekomme ich als Antwort:
Wobei die Checksumme bei der Übertragung ce:64 9. und 10. Byte sind.
Beim Antwort die gleiche Bytestellen, b6:b2 sind.
L.t. Anleitung wird die Checksumme berechnet, indem man die erste vier Bytes weg lässt, d.h. 00:00:00:0e wird nicht beachtet. Die Stelle von der Checksumme mit 00:00 überschreibt. Also von folgende Bytes soll die Checksumme berechnet werden:
und Ergebnis ce:64 erscheinen.
Oder von
Checksumme b6:b2.
Ich hatte das mit qChecksum unter QT versucht. Dabei wird CRC-16-CCITT verwendet. Das Ergebnis ist jedoch anderes.
Auch das hier hatte ich versucht
http://www.mikrocontroller.net/topic/12177
jedoch ergibt das dortige auch was anderes, als erwünscht.
Daher die Frage, kann mir jemand sagen, wie ich zu obige Checksummen komme?
Die Übertragungspackete beinhalten eine Checksumme. Laut Beschreibung soll das crc16 sein. Jedoch schaffe ich es nicht auf das gleiche Ergebnis zu kommen, wie in den Beispielen gegeben sind.
Wenn ich folgendes übertrage:
Code:
00:00:00:0e:7d:98:b2:00:ce:64:00:00:00:00:01:01:01:01
Code:
00:00:00:0e:00:31:16:80:b6:b2:7d:98:b2:01:02:01:01:01
Beim Antwort die gleiche Bytestellen, b6:b2 sind.
L.t. Anleitung wird die Checksumme berechnet, indem man die erste vier Bytes weg lässt, d.h. 00:00:00:0e wird nicht beachtet. Die Stelle von der Checksumme mit 00:00 überschreibt. Also von folgende Bytes soll die Checksumme berechnet werden:
Code:
7d:98:b2:00:00:00:00:00:00:00:01:01:01:01
Oder von
Code:
00:31:16:80:00:00:7d:98:b2:01:02:01:01:01
Ich hatte das mit qChecksum unter QT versucht. Dabei wird CRC-16-CCITT verwendet. Das Ergebnis ist jedoch anderes.
Auch das hier hatte ich versucht
http://www.mikrocontroller.net/topic/12177
jedoch ergibt das dortige auch was anderes, als erwünscht.
Daher die Frage, kann mir jemand sagen, wie ich zu obige Checksummen komme?