LabVIEWForum.de - Strings zusammenfügen

LabVIEWForum.de

Normale Version: Strings zusammenfügen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hi,

ich bin ziemlich unerfahren in Labview, daher mag euch die Frage vielleicht auch etwas trivial erscheinen...
es geht hier um einen Teil meines Programms, in dem ich die Checksumme eines Protokolls berechne, und diese dann an einen Hex-Datenstring anhängen will, welcher dann über die RS232 versendet wird....
es klappt soweit alles....die checksumme wird richtig berechnet, ich erhalte einen wert U8, welchen ich mit der Funktion Wert formatieren in einen String umwandle...nun will ich diesen Wert z.b. 51 HEX an die letzte Stelle meines Datenstrings anhängen....
dabei interpretiert er aber die 51 als einzelne Zeichen und ich erhalte in dem gesamten String nicht XXXXXX51 wie gewollt,
sondern XXXXXX3531...

woran liegt das?? Kann mir da jemand kurz helfen?
(15.05.2012 10:40 )Katsching schrieb: [ -> ]Hi,

ich bin ziemlich unerfahren in Labview, daher mag euch die Frage vielleicht auch etwas trivial erscheinen...
es geht hier um einen Teil meines Programms, in dem ich die Checksumme eines Protokolls berechne, und diese dann an einen Hex-Datenstring anhängen will, welcher dann über die RS232 versendet wird....
es klappt soweit alles....die checksumme wird richtig berechnet, ich erhalte einen wert U8, welchen ich mit der Funktion Wert formatieren in einen String umwandle...nun will ich diesen Wert z.b. 51 HEX an die letzte Stelle meines Datenstrings anhängen....
dabei interpretiert er aber die 51 als einzelne Zeichen und ich erhalte in dem gesamten String nicht XXXXXX51 wie gewollt,
sondern XXXXXX3531...

woran liegt das?? Kann mir da jemand kurz helfen?

Rechtskick auf die Stringkonstante/Control und "Hex Display" wählen, anschliessend den Hexwert (bspw. 51) eintragen und das ganze wird als Hex-Wert übertragen.

Um Text und Hex zusammen zu bringen ganz Normal mit "Concatenate Strings" zusammenführen.

Gruss Marc

P.s. Das andere Display-Format sollte unbedingt dokumentiert werden, geht sonst leicht vergessenWink
Ähm, so habe ich es doch....sollte alles HEX sein......funktioniert aber nicht....ich kann mir nicht erklären, warum er beim zusammenfügen der Strings, er die Zeichen einzeln interpretiert....
Ein einfacher TypeCast ist hier die Lösung:

[attachment=39817]

Beste Grüße,
NWO
Die Frage wurde beantwortet, die andere Frage ist nur, ob Deine Vorgabe eine gute Idee war.
Wenn der gesamte Text aus lesbaren ASCII-Zeichen besteht, warum dann plötzlich ein womöglich kryptisches oder nicht darstellbaren Zeichen anhängen? Womöglich ist es ein Steuerzeichen, welches eine Funktion bei der seriellen Übertragung hat!
Besser wäre doch, das Byte mit dem Zahlenwert "51" in einen gut lesbaren Zweibyte-ASCII-String "33" (33= Hexwert von 51) zu konvertieren. Dieses eine Byte mehr wird doch Deine Datenübertragung nicht gleich zusammenbrechen lassen!
Referenz-URLs