Strings in S7-200 (STR_CAT-Funktion)

reini69

Level-2
Beiträge
72
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Tach zusamm' !

Ich habe eine S7-222, bei der ich die Freeport-Kommunikation an der seriellen Schnittstelle nutze. Zur "interaktiven" Parametrierung verschiedender Programmparameter würde ich gerne einen PC mit einem Terminalprogramm (z.B. Hyperterminal) an der seriellen Schnittstelle verwenden. Dazu sollen von der SPS Strings an den PC geschickt werden, die mit einem "CRLF" enden, also Carriage Return und Line Feed. Dies entspricht den Hex-Zeichen 0D und 0A. Ich bastle mir also den String mit dem Klartext in der SPS zusammen und möchte dann mit der Funktion STR_CAT das CRLF hinten dran hängen. STR_CAT akzeptiert aber anscheinend nur "echte" Strings, wenn ich als Eingangsparameter z.B. 16#0D0A verwende, wird das nicht akzeptiert. Schreibe ich als Parameter "16#0D0A", so interpretiert die SPS das als den String, alos inklusive des "16#". Wie muss ich das richtig verwenden ?

Dankeschön, vorab !
 
Hallo Reini,

die ACSII-Zeichen für 16#0D und 16#0A sind '$R' und '$L'
Demzufolge ist 16#0D0A = '$R$L'

So müsste deine CPU die Endkennung eigentlich richtig an
den zu übertragenden String anhängen.

Gruss
Guido

PS. Gefunden habe ich das in der Micro-Win Hilfe unter den Stichwort : "Konstanten"
 
Zuviel Werbung?
-> Hier kostenlos registrieren
STR_CAT-Funktion

Vielen Dank Guido, das hat so funktioniert.
Allerdings hat mir der MicroWin-Editor das $L immer sofort in ein $N umgewandelt, $L wollte er irgendwie nicht annehmen. Aber damit hat es dann funktioniert.
Soso, aus der MicroWin-Hilfe hast Du das... Hmmmh, vielleicht hätte ich die auch mal studieren sollen.

Auf jeden Fall herzlichen Dank.
 
Zurück
Oben