hab die Lösung gefunden....
Die Lösung lautet: Jedes Byte einzeln einem 0-255 Objekt zuweisen und anschliessend im Hexa System der Rangordnung entsprechend multiplizieren, dann die Quersumme addieren.
Beispiel:
der 3 Byte Wert wird in 3 x 8Bit Binärblöcke geteilt und drei getrennten 0-255 Objekten zugewiesen, anschliessend stellenrichtig den Wert der ersten Stelle (ganz links) mit 65536, zweite Stelle mit 256 und letzte Stelle mit 1 multiplizieren, Quersumme bilden , fertig.
Grüße, tim
Ankündigung
Einklappen
Keine Ankündigung bisher.
3 Byte Werte empfangen und wandeln
Einklappen
X
-
3 Byte Werte
Der Stream sieht am UDP Port zB so aus:
FF FF 00 00 00 00 C8 68 00 18 6D 00
im Klartext :
2 Byte - 0xff,0xff (=255,255 zur internen Kontrolle der Übertragung)
2 Byte - Wert 1 ( = ist gerade 0)
2 Byte - Wert 2 (= 0)
3 Byte - Wert 3 ( = 26824)
3 Byte - Wert 4 (= 27928)
Ich müsste die einzelnen Bytes einlesen und dann im FS zusammensetzen können weil das niederwertigste Byte wird stets zuerst übertragen., aber wie ?
Einen Kommentar schreiben:
-
Sind die 3-Byte ein Wert, oder mehrere? Hast Du eventuell mal ein Beispiel?
Sent from my iPhone using Tapatalk
Einen Kommentar schreiben:
-
3 Byte Werte empfangen und wandeln
Hallo Jungs,
ich brauche eure Hilfe: ich möchte einen UDP Datenstream einlesen und die einzelnen Blöcke im FS zur Anzeige bringen. Der serielle Stream wird alle 2 sec auf den UDP Port gesendet und ich empfange die einzelnen Datenblöcke. Das Problem dabei ist, nach zwei 1 Byte Werten und weiteren zwei 2 Byte werten kommen zwei 3 Byte Werte daher, wobei das niederwertigste Byte zuerst gesendet wird. Wie kann ich 3 Byte Werte aus eine Datenblock einem Objekt zuweisen um es weiter zu verarbeiten ?
Danke & Grüße timStichworte: -


Einen Kommentar schreiben: