Datenprotokoll in HEX

t3kaese

Level-1
Beiträge
27
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,hatte gestern ein vermeindliches Erfolgserlebnis als ich es dann dank eurer Hilfe fertiggebracht habe, eine mehrzeilige Anzeigetafel mit dem passenden Protokoll in Betrieb zu nehmen( theoretisch jedenfalls) Die Nutzdaten hatte ich als STRING angelegt und dachte dass sei so in Ordnung. Jetzt benötigt die Tafel seine anzuzeigenden Zahlen aber als Hex Code. Also pro anzuzeigende Stelle ein Byte als Hex Code. Wie bring ich es denn fertig, meine als INT vorliegende Zahl so hinzubiegen, dass jede ihrer Stellen als hexcode byteweise vorliegt? also bspw.12345 = Inhalt Byte1: 31H, Byte 2: 32H, Byte 3: 33H usw.. stelle mich da doch sehr dumm an.. danke schonmal..
 
Hex

Hallo,

Code:
L Integer
ITD
DTB
T Hilfsvar (32 Bit)

UW W#16#F
T Einer

L Hilfsvar
SRD 4
T Hilfsvar

UW W#16#F
 T Zehner

.
.
.

André
 
Hallo,hatte gestern ein vermeindliches Erfolgserlebnis als ich es dann dank eurer Hilfe fertiggebracht habe, eine mehrzeilige Anzeigetafel mit dem passenden Protokoll in Betrieb zu nehmen( theoretisch jedenfalls) Die Nutzdaten hatte ich als STRING angelegt und dachte dass sei so in Ordnung. Jetzt benötigt die Tafel seine anzuzeigenden Zahlen aber als Hex Code. Also pro anzuzeigende Stelle ein Byte als Hex Code. Wie bring ich es denn fertig, meine als INT vorliegende Zahl so hinzubiegen, dass jede ihrer Stellen als hexcode byteweise vorliegt? also bspw.12345 = Inhalt Byte1: 31H, Byte 2: 32H, Byte 3: 33H usw.. stelle mich da doch sehr dumm an.. danke schonmal..

Wir haben doch gestern deine Int-Zahl in einen String gewandelt. in diesem String stehen doch dann genau die Charcodes drin (und zwar Byteweise), welche du benötigst. du mußt nur die richtigen Byte aus dem String in deine Anzeige kopieren.

Denn:

31H ist im String '1', das ist normaler Ascii-Code. usw.

PS: Was scp-concept dir gezeigt hat, ist erstmal nur die Separierung der einzelnen Ziffern. Wenn du daraus dann noch Ascii-Code machen willst, mußt du zu jeder Ziffer noch 30Hex dazu addieren! Aber wie gesagt, den Ascii-Code, das hast du eigentlich gestern schon erfolgreich in den DB mit dem String geschrieben, mußt nur noch die richtigen Byte umkopieren.
 
Zuletzt bearbeitet:
Hex

ups wer lesen kann... Hab das nicht so genau gelesen und dachte du brauchst die einzelnen Stellen als Zahl.

Du hast sicher gemeint bspw.12345 = Inhalt Byte1: 01H, Byte 2: 02H, Byte 3: 03H

weil HEX ist nur ein Anzeigeformat, dahinter steht auch nur eine Zahl, ein Zeichen oder was auch immer, dein beispiel ist ASCII

André
 
Zurück
Oben