LabVIEWForum.de - String von Com1 einlesen und ein Stringtext erstellen

LabVIEWForum.de

Normale Version: String von Com1 einlesen und ein Stringtext erstellen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo
Habe ein kleines Prob. mit dem SubVi erstellen:

Ich lese einen String von Com1 aus und stelle ihn in einem Stringfenster dar.
Der eingelesene String wird angezeigt und sieht vollgendermaßen aus.

022,4;2;1;1;1;1;1;1;00;0000;000

Die Zifern stellen versch. Zustände dar und werden mit dem ; getrennt.
Z.B. Temp; Heizung; Relais; usw

Wenn ich nun das Vi in ein sub vi packen will und als Ausgang das Stringfenster angebe und diesen Ausgang mit einem Stringfenster verdrahte zeigt es mir den String nicht an!

Im Vi gehts nicht und im Subvi gehts

Woran kann das liegen?

Danke für eure Hilfe
Da fehlt das Sub-vi "Com 1 lesen.
hi

sorry , habs vergessen

hier nochmal das komplette paket

mfg
Hallo Dominik!

Das Problem ist folgendes: Du liest alle 5 Sekunden 37 Bytes von der seriellen Schnittstelle und das 1000 mal. Die Ausführungszeit würde also 5000 Sekunden dauern. Und solange wird auch kein Wert an das übergeordnete VI zurückgeliefert. Also du solltest am Ende alle Werte auf einmal bekommen und nicht alle 5 Sekunden den aktuellen, wie ich mal vermute, du es haben möchtest.

Gibt da (mindestens) 2 Möglichkeiten:

1. Du schreibst das SubVI nur für einen Lesezyklus und lässt das SubVI 1000 mal vom VI aus durchlaufen. Dann wird nach jedem Zyklus das Ergebnis zurückgeliefert. (Ergebnisse aus SubVIs werden erst am Ende des SubVIs zurückgeliefert)

2. Du machst das ganze über Referenzen. Dann bekommst du die Werte auch sofort aus dem SubVI.
Ich bins nochmal. 8)

Wenn du in diesem Forum unter Allgemein >> Kopieren von lokalen Variablen etc. ... (Seite 2 ganz unten, 17.12.04) guckst, da wird genau dein Problem auf eine andere Art beschrieben. Hatte damals ein ähnliches.Ein Lösung mit Referenzen ist ebenfalls dabei.

Björn
hallo

da ich erst mit LabVIEW angefangen habe ist mir ein dumer fehler passiert
ich musste nur die schleife über das ganze vi ziehen und nicht nur im sub vi durchlaufen lassen

trotzde danke für eure hilfe

cya dominik
Referenz-URLs