INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Kontinuierliches Einlesen vom Parallel Port



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!

20.07.2006, 18:14
Beitrag #1

fuchsm01 Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Aug 2005

2011
2001
DE


Oesterreich
Kontinuierliches Einlesen vom Parallel Port
<div align="left">Hallo an alle LabVIEW User,

Ich habe folgendes Problem:
Um diverse Schaltzustände von Endschaltern in LabVIEW darstellen zu können, möchte ich den Parallel Port meines PC's in gewissen Abständen abfragen. Sagen wir mal alle 500ms. Jetzt könnte ich dies natürlich so lösen (wie in dem Example von LabVIEW), dass ich die Funktion "Wait Until Next ms Multiple" in eine Schleife reinhänge die mir die Werte ausliest. Da mir aber diese Funktion das restliche VI sperrt, ist sie für mich nicht zu gebrauchen. Ich möchte nämlich nach Benutzereingabe Werte nach draussen schreiben, und nicht warten müssen bis die 500ms abgelaufen sind.

In C auf dem Microcontroller würde ich das mit einem Timer-Interrupt lösen. Gibt es in LabVIEW eine solche oder eine ähnliche funktion die mir alle 500ms (bzw. nach einer Zeit die ich im Frontpannel einstelle) einen bestimmten Programmteil ausführt und anschließend wieder den normalen Programmfluss weiter abarbeitet??

Für eure Hilfe wäre ich sehr dankbar.

MFG
Fuchs Michael</div>

"Im Falle eines Falles, ist richtig Fallen alles"
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
20.07.2006, 19:15
Beitrag #2

Mr.T Offline
LVF-SeniorMod


Beiträge: 1.007
Registriert seit: Jun 2005

2009
2005
kA

88400
Deutschland
Kontinuierliches Einlesen vom Parallel Port
Versuche es doch mal mit einer zweiten while Schleife.

Da Dir C offenbar ein Begriff ist:

Die zweite Whileschleife ist im Prinzip ein zweiter thread, der quasiparallel läuft. Via Barriers (bei LV Rendevous genannt) oder Semaphores (bei LV auch Semaphores) kannst Du dann Datenaustausch zwischen den Schlefen (mit Shared Variables oder Functional Global Variables FGV) realisieren.

Somit ist dann eine Schleife immer betriebsklar, während die andere nur die Kommunikation aufrecht erhält.

Gruß!

Mit einem freundlichen Wort und etwas Gewalt erreicht man viel mehr als nur mit einem freundlichen Wort. [...Marcus zu Lennier, B5]
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.07.2006, 21:06
Beitrag #3

fuchsm01 Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Aug 2005

2011
2001
DE


Oesterreich
Kontinuierliches Einlesen vom Parallel Port
<div align="left">Hallo,

Also deine Idee mit den Semaphore's und den Rendevous klingt nicht schlecht. Hab mich auch gleich mal durch die Examples vom LabVIEW 8 durchgearbeitet. Dort wird aber nur der Aufruf von Sub-VI's mit den beiden Funktionen behandelt.

Kennst du vielleicht eine Seite im Netz wo man über dieses thema mehr erfahren kann? z.B. ein kleines Tutorial für Semaphore und Rendevous (vielleicht sogar auf Deutsch wenn geht). Oder kannst du mal kurz ein Beispiel zusammenstellen wo der Austausch zwischen zwei Schleifen in einem VI gezeigt wird?

MFG
Fuchs Michael</div>

"Im Falle eines Falles, ist richtig Fallen alles"
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.07.2006, 21:37
Beitrag #4

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Kontinuierliches Einlesen vom Parallel Port
http://www-wnt.gsi.de/lvug/techniken.htm

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.07.2006, 06:58
Beitrag #5

diplNisse Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 97
Registriert seit: Apr 2006

2010
2006
EN


Deutschland
Kontinuierliches Einlesen vom Parallel Port
' schrieb:<div align="left">

In C auf dem Microcontroller würde ich das mit einem Timer-Interrupt lösen. Gibt es in LabVIEW eine solche oder eine ähnliche funktion die mir alle 500ms (bzw. nach einer Zeit die ich im Frontpannel einstelle) einen bestimmten Programmteil ausführt und anschließend wieder den normalen Programmfluss weiter abarbeitet??

Für eure Hilfe wäre ich sehr dankbar.

MFG
Fuchs Michael</div>

Du kannst doch den aktuellen zeitwert (in ms) an ein sub VI geben, und sagen, dass 500 ms später ein ausgang des sub VIs TRUE werden soll.

Im sub vi vergleichst du einfach laufend den aktuellen zeitwert mit dem gewünschten, und wenn die übereinstimmen (bzw, wenn der aktuelle größer/gleich ist) setzt du den ausgang. Das bremst den Rest des Programms nicht aus.

VI ist im anhang.


Angehängte Datei(en) Thumbnail(s)
   

Sonstige .vi  wait2_sub.vi (Größe: 10,21 KB / Downloads: 199)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Kontinuierliches und variables Ein/Aus eines E-Magneten Stefan2017 7 4.615 19.07.2018 15:15
Letzter Beitrag: Stefan2017
  Parallel Port Read and Write Loop.vi rothhp 2 4.303 16.12.2015 16:08
Letzter Beitrag: rothhp
  Kontinuierliches Positionssignal zu Geschwindigkeit naja_ich_halt 2 4.000 07.05.2014 12:00
Letzter Beitrag: naja_ich_halt
  Kontinuierliches Auslesen einer Wave-Datei Barney 4 5.769 31.05.2009 11:55
Letzter Beitrag: Barney

Gehe zu: