LabVIEWForum.de
SubVI von COM-Verbingung(lesen, schreiben) erstellen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Instrument IO & VISA (/Forum-Instrument-IO-VISA)
+---- Thema: SubVI von COM-Verbingung(lesen, schreiben) erstellen (/Thread-SubVI-von-COM-Verbingung-lesen-schreiben-erstellen)



SubVI von COM-Verbingung(lesen, schreiben) erstellen - Schoaschi - 18.12.2007 11:43

Hi

Ich habe folgende Aufgabe, bei der ich eure Hilfe brauchen könnte. Ich soll einen "Treiber" für eine selbstgebaute Hardware entwickeln, die man dann einfach in den ganzen anderen Messprogrammen implementieren kann. Wenn ich das richtig Verstanden habe, handelt es sich dabei um ein SubVI (In C würd ich das eine Funktion nennen :-) ).

Zur Hardware:
Im Grunde kommuniziere ich da über einen virtuellen Comport (FTDI-Chip).
Ich habe folgende Befehle(jeweils 4Byte lang) die ich ans Gerät schicken kann und bekomme dann eben einen String zurück:
READ --> Hier bekomme ich eine Zahl zwischen 0 und 56000 zurück (Terminiert mit "n")
CAL1 --> Calibration done!

(2-Wort-Befehl)
AVR1 0200 --> Keine Rückgabe eines Strings.

(Ist das so halbwegs verständlich, was ich meine?)

Nunja... jetzt will ich eben ein SubVi erstelllen, dass als Eingang lediglich den Com-Port, denn ich verwende, hat und noch einen 2. Eingang, wo ich einstellen kann, welchen Befehl ich schicken will.
Weiters würd ich die SubVI gern so programmieren, dass beim 1. Aufruf der Routine die Com-Schnittstelle initialisiert wird und bei jedem weiteren aufruf nicht mehr.
Und als Ausgabe der SubVI interessiert mich nur die Zahl, die ich erhalte, wenn ich den Befehl "READ" sende.

Im Anhang hab ich mal versucht das ganze zu Programmieren. Kann das so funktionieren? Und wie mach ich das ganze zu so einem SubVI? Also das ich dann nur mehr so ein kästchen ins LabVIEW ziehen kann und das Programm dann eigentlich dahinter steckt?

mfg Schoasch

PS.: Meine LV-Erfahrung beträgt momentan ca 6 Stunden ;-)

Lv71_img


SubVI von COM-Verbingung(lesen, schreiben) erstellen - Schoaschi - 18.12.2007 13:10

Wenn ich den ganzen Block makiere und dann über Edit--> Create SubVI eine SubVI erstelle, macht er das auch... nur nicht so wie ich das will.
Wie kann ich das richtig machen?


SubVI von COM-Verbingung(lesen, schreiben) erstellen - jg - 18.12.2007 13:17

http://www.LabVIEWforum.de/index.php?s=&am...ost&p=42772


SubVI von COM-Verbingung(lesen, schreiben) erstellen - Schoaschi - 21.12.2007 13:53

Also nach langem herumgetue, hab ichs endlich verstanden wie man das SubVI erstellt... naja.. eigentlich bin ich dann erst draufgekommen wie man es benutzt, denn erstellt hab ichs eh immer richtigBig Grin

Jetz hab ich aber noch eine andere Frage.. und zwar: Gibts da auch Variablen(Zumindest in C nennt man es Variable ;-)? Also einerseits möchte ich zb. die Adresse meiner VISA-Gerät nur einmal einlesen.. dann in einer Variable speichern und dann immer diese Variable beim nächsten zugriff verwenden, denn ich will nicht den ganzen Plan mit strichen der Adresse zupflastern.
Andererseits bräuchte ich eine Variable die ich hochzählen kann (so wie i=i+5; in C). Wie realisiert man das oder wonach soll ich suchen.
Ich will nemlich einen Zahl an ein Gerät schicken... danach was auslesen. Danach erhöhe ich den zuvor gesendeten Wert um 5 und schick ihn nochmal. Nur wie mache ich das in LAbview?
Die einzige möglichkeit die mir eingefallen ist, wäre ein Array in verbindung einer for-Schleife.... aber das muss doch feiner gehen oder?

mfg Schoasch


SubVI von COM-Verbingung(lesen, schreiben) erstellen - IchSelbst - 21.12.2007 14:17

' schrieb:Wie realisiert man das oder wonach soll ich suchen.
z.B. While-Schleife mit Schieberegistern (das sind "Variablen", nur ohne Frontpanelelement und invariant) und Statemachine (das ist ein spezielles Case-Konstrukt).