LabVIEWForum.de
VISA: auf Ereignis warten. - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: Hardware (/Forum-Hardware)
+--- Thema: VISA: auf Ereignis warten. (/Thread-VISA-auf-Ereignis-warten)



VISA: auf Ereignis warten. - dualsbiker - 05.10.2009 13:02

Hallo, hab da mal ne Frage zu einer Programmierung.
Ich hab ein VI erstellt mit dem ich über RS232 mit einem Netzteil kommunizieren kann.
Als erstes konfiguriere ich den Port, dann sende ich den Befehl, danach gibts nen kleines Timeout um auf die Antwort zu warten und dann wird das Gelesene ausgegeben.

Ich möchte das aber nicht mit einem Timeout machen, das ist irgendwie doof.
Ich hab den Befehl "VISA: auf Ereignis warten" gefunden. bekomme das aber nicht hin, statt des Timeouts diesen Befehl unter zu bringen.

Kennt sich jemand mit diesem Befehl aus ? Kann man den überhaupt dafür benutzen ?
Hat nicht jemand mal ein Beispiel mit dem ich was anfangen kann, das Beispiel unter LV hilt mir auch nicht wirklich weiter.


VISA: auf Ereignis warten. - TSC - 05.10.2009 13:29

Hast du dir die Hilfe durchgelesen?

Zitat:Hinweis Vor "VISA: Auf Ereignis warten" muss immer die Funktion VISA: Ereignis aktivieren für eine gegebene Session aufgerufen werden.

LG
Torsten


VISA: auf Ereignis warten. - dualsbiker - 05.10.2009 13:35

Ja aber so wirklich hilft mir das auch nicht weiter.
Bei dieser Funktion kann man auswählen, auf was gewartet werden soll. Da hab ich schon alles ausgewählt wo "Seriell" vorsteht, hab auch "alle aktiviert" ausprobiert.
Er hat immer einen Fehler ausgegeben.


VISA: auf Ereignis warten. - TSC - 05.10.2009 13:39

Magst dus uns zeigen oder sollen wir weiter im Dunkeln tappen?

LG
Torsten


VISA: auf Ereignis warten. - dualsbiker - 05.10.2009 13:50

Ja im Prinzip hab ich mir das so gedacht. (siehe Anhang)

LV 8.6.1


VISA: auf Ereignis warten. - Lucki - 05.10.2009 14:21

Das VI Read wartet ja schon selbst, bis eines von drei möglichen "Ereignissen" eintritt, das VI "Auf serielles Ereignis warten" ist nur für Sonderanwendungen gedacht, normalerweise braucht man das nicht.
Diese drei möglichen Ereignisse sind:
a) TermChar wird empfangen. Empfehle wärmstens, das zu verwenden, wenn die Gegenstelle ein solches Abschlußzeichen sendet. Damit erreichts Du am bersten die Synchronisatione der Daten. Voreinstellung im VI Konfig ist: Akiviert, Termchar = 0xA. Wenn es aber nicht verwendet wird, sollte es auch deaktiviert seiin.
b) die voreingestellte Anzahl Bytes befindet sich im Buffer. Sinnvoll z.B. wenn von einem Slave nach Aufforderung etwas empfangen wird, und man weiß, daß z.B. genau 2 byte kommen müssen.
c) Timeout. Das ist aber eher kein regulärer Fall, sondern ein Fehler, der abzufangen ist, z.B mit Ausgabe der Meldung: "Gegenstelle sendet nicht"