Step 7 HEX to String

GFuchs84

Level-1
Beiträge
27
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Tag,

ich habe 8 Bytes mit Hex Informationen und möchte darauf einen String machen.

Byte1 : B#16#02
Byte2 : B#16#87
Byte3 : B#16#FA
Byte4 : B#16#9D
Byte5 : B#16#09
Byte6 : B#16#00
Byte7 : B#16#10
Byte8 : B#16#32

Der String soll dann so aussehen: 0287FA9D09001032

Es handelt sich hierbei um eine Seriennummer.

Hoffe ihr könnt mir helfen.
 
Ich glaube er bekommt bei ITB/BTI ein Problem mit den Hexziffern A,B,C,D,E,F.

Ich würde eine Tabelle nutzen, also Case in SCL oder Sprungleiste in AWL.

Das Byte trennen in jeweils 4 Bit, dann hat man die einzelnen Zahlen Hex von 0-F.

In der Case/Sprungleiste kann man nun über die Zahlen 0---F in je eine Anweisung springen, die dann einer Variablen den entsprechenden Char '0' ... 'F' zuweist.
Diesen dann zu einem "Sammelstring" hinzufügen oder in ihm hineinkopieren.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ach Gott 4L, die Lösung stammt aus 2006, das ist echt lang her! :) War schon aus meinem Gedächtnis gestrichen. Aber genau da ist das so drin.

PS: Schön mal wieder was von dir zu lesen.
 
Ach Gott 4L, die Lösung stammt aus 2006, das ist echt lang her! :) War schon aus meinem Gedächtnis gestrichen. Aber genau da ist das so drin.

PS: Schön mal wieder was von dir zu lesen.

ich geh davon aus, dass die Lösung trotz der vergangenen Zeit funktioniert - was du ja gerade bestätigt hast.
der Hinweis zu dieser Lösung stammt aus dem zu erst von mir verlinkten Thread ... mir scheint, hier ist alles wie immer :confused:
 
der Hinweis zu dieser Lösung stammt aus dem zu erst von mir verlinkten Thread ... mir scheint, hier ist alles wie immer :confused:

Das erklärst du mir bitte.


PS: Ich hab etwas länger gebraucht um einen Lösungsweg aufzuschreiben, als du benötigst hast um den Link zu finden. :ROFLMAO:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
habe es gerade versucht. Leider wird der OUT String nicht erstellt.
attachment.php
 

Anhänge

  • 1.png
    1.png
    24,4 KB · Aufrufe: 150
Mach mal eine Variablentabelle auf und gib dort byteweise die Adressen des Strings ein, also DB202.dbb8 bis DB202.dbb25.
 
Ja wie geil ist das denn.

attachment.php


Das sind jetzt quasi einzelen Chars und ich bastle jetzt wieder einen String oder???
 

Anhänge

  • 1.png
    1.png
    34 KB · Aufrufe: 160
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja wie geil ist das denn.

attachment.php


Das sind jetzt quasi einzelen Chars und ich bastle jetzt wieder einen String oder???

Nein, das ist ein S7 String.
In den ersten 2 Byte steht maximale Länge und tatsächliche Länge des Strings, dann folgt der String.
Das kann man so an einem Siemens-Panel als String anzeigen. Will man das an einen PC schicken, muß man natürlich die ersten beiden Byte weglassen.
Im DBB9 sollte noch die wirkliche Länge eingetragen werden (16), möglicherweise noch ein Fehler im FC??? Du solltest den String initialisieren, dann ist auch eine Länge drin. Der Baustein ist arg alt, würde ich heute wohl etwas anders machen :)

PS: Strings kann man sich im DB nicht online ansehen, daher der kleine Umweg über die Variablentabelle.
 
Zuletzt bearbeitet:
Zurück
Oben