Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
kann ich über die serielle schnittstelle in LabVIEW nur Strings bzw. AsciiZeichen senden? Ich habe noch keine Möglichkeite gefunden, ein Byte -Zahl zwischen 0 und 255- eben so wie sie ist zu senden und dann eben gleich binär auszuwerten.
Mir scheint, man kann nur einen String bzw. ein ASCII-Zeichen (als Byte) senden?
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Byte über die serielle Schnittstelle senden
Dein String, bzw. ASCII-Zeichen wird auch binär geschickt.
Was genau dahinter steckt, siehst Du, wenn Du bei Deinem String-Eingabeelement einen Rechtsklick machst und HEX-Display auswählst.
Da kannst Du dann Hexwerte eingeben. In Deinem Fall 0 - FF (255).
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
' schrieb:Mir scheint, man kann nur einen String bzw. ein ASCII-Zeichen (als Byte) senden?
Nunja, du kannst mit "Flatten to String" quasi jedes beliebiege Datum in einen String wandeln und dann eben dieses String über VISA senden. (Strings zu senden ist eben praktisch, auch wegen der Überwachung, siehe Post von Markus.) Also: Siehe Funktion "Flatten to String".
Hast du mal probiert eine Zahl direkt an das VISA-VI anzuschließen? Das sollte eigentlich gehen. Geht das nicht?
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
...ja, jetz hab ich es. Was ich meinte war 'Zahl nach Hexadezimal-String'. So kann ich eine vorzeichenlose Zahl als Eingabe nehmen und in einen hexadezimalen String wandeln und dann ganz normal als Byte über die Leitung schicken, so wie es Markus schon angedeutet hatte.
...das war zu schnell gefreut, dieses 'Zahl nach HexadezimalString' konvertiert mir wieder jede Ziffer einzeln, so dass aus 11 dezimal zwei StringBytes werden. Mri scheint Byte-Array-nach-String wäre besser, es verlangt allerdings ein Bytearray, auch wenn aus meiner Sicht eine Zahla auch schon ein einelementiges Array darstellt, funktioniert es nicht...
Ich seh' gerade, ich kann noch ein 'Array erstellen' zwischenschieben und dann geht's. Ein wenig unschön (weil ich ja nur ein Element habe), vielleicht weiß jemand noch etwas?
Thomas
20.03.2007, 11:39 (Dieser Beitrag wurde zuletzt bearbeitet: 20.03.2007 11:51 von eg.)
' schrieb:...das war zu schnell gefreut, dieses 'Zahl nach HexadezimalString' konvertiert mir wieder jede Ziffer einzeln, so dass aus 11 dezimal zwei StringBytes werden. Mri scheint Byte-Array-nach-String wäre besser, es verlangt allerdings ein Bytearray, auch wenn aus meiner Sicht eine Zahla auch schon ein einelementiges Array darstellt, funktioniert es nicht...
Ich seh' gerade, ich kann noch ein 'Array erstellen' zwischenschieben und dann geht's. Ein wenig unschön (weil ich ja nur ein Element habe), vielleicht weiß jemand noch etwas?
Thomas
Nicht schon wieder, die gleiche Disskussion, wie immer:
Darstellung ASCII und Binär.
P.S. Zahl nach HEX-String macht aus 11 dezimal eine 3131 hexadezimal, weil das ZEICHEN 1 in der ASCII Tabelle 31 HEX bedeutet. Wie ich es verstanden habe, willst du deine Zahl direkt so abschicken wie es ist ohne nach ASCII-Zeichen umzuwandeln. Dann kannst du mit Flatten To String oder Type Cast die Zahl in ein Byte-Stream umwandeln und abschicken. Bytestreams werden in LV (und auch anderen Sprachen) als String, also Zeichenkette "dargestellt". Es soll dich nicht irritieren, es ist ein Byte-Array, nur rosa dargestellt.
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Byte über die serielle Schnittstelle senden
Das schreit doch nach einem Tutorial, so wie Du es auch schon mal vorgeschlagen hast.
Gruß Markus
' schrieb:Nicht schon wieder, die gleiche Disskussion, wie immer:
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------