Kurze Frage zu ASCII --> Verständnisproblem mit CR

Günter_Pecki

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo ,
ich habe angefangen mich mit der CP341 zu beschäftigen.

Momentan hagt es aber bei mir
Wir haben eine anlage die über ASCII mit einem Aktuator kommuniziert.

Ich habe in einem DB z.B. diesen Dekleration
STRING3 STRING[14] 'IDeviceIdent$R'

Nun mein Verständnisproblem

CR = 0D --> in diesem Bsp. ist es aber$R

Kann da jmd. bitte kurz auf die Sprünge helfen.

Ich habe auch hier schon im Forum hier ein Bsp. gesehen die diesen Befehl am Schluss verwendet -->

https://www.sps-forum.de/threads/38906
 
Zuviel Werbung?
-> Hier kostenlos registrieren
vielen Dank für die Antwort,

Was sagt den das $ eigentlich aus ? Ist es sowas wie eine Trennung von zu übertagenden Daten und ein kommender "Systembefehl"

Was wäre aber wenn ich ein $ Zeichen senden wollte
z.B.
Würde das so funktionieren
'IDeviceIdent$ $R' bzw 'IDeviceIdent$ $0D'
 
Das $-Zeichen ist ein sogenanntes Escape-Zeichen (Maskierungszeichen), welches ankündigt, daß das nächste Zeichen ein besonderes Zeichen ist und nicht als dieses Zeichen interpretiert werden soll. In vielen Programmiersprachen dient der Backslash '\' als Escape-Zeichen, bei anderen Sprachen und Siemens eben der Dollar '$'. Meist wird es benutzt, um die nicht druckbaren Steuerzeichen des ASCII-Codes < 32 darzustellen.

Was wäre aber wenn ich ein $ Zeichen senden wollte
z.B.
Würde das so funktionieren
'IDeviceIdent$ $R' bzw 'IDeviceIdent$ $0D'
Will man das Zeichen selbst haben, das eigentlich als Escape-Zeichen benutzt wird, dann muß dieses Zeichen doppelt angegeben werden.
In deinem Beispiel: 'IDeviceIdent$$ $R'.
Man könnte auch $ mit nachfolgendem hexadezimal-Code des $-Zeichens verwenden: $$ = $24 stellt das $-Zeichen selber dar.

Harald
 
Zurück
Oben