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 

Host -Interrupt einer ISA-Karte auswerten



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!

15.05.2009, 09:07 (Dieser Beitrag wurde zuletzt bearbeitet: 15.05.2009 09:09 von rolfk.)
Beitrag #3

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Host -Interrupt einer ISA-Karte auswerten
' schrieb:Hallo,

ich programmiere zur Zeit eine linearen Verschiebetisch von PI (M-415.CG). Das Gerät wird leider durch eine recht betagte ISA-Karte (Physik Instrumente C-842) angesteuert, die natürlich nicht im "Measurement & Automation Explorer" auftaucht. Die Ansteuerung des Verschiebetisches lässt sich trotzdem recht komfortabel in mein bestehendes LV-Programm einbinden, da der Hersteller eine DLL nebst passender VIs zur Verfügung stellt. Auf diesen Weg lassen sich auch Host-Interrupts programmieren, die eine bestimmte Verfahrposition signalisieren.

GIBT ES EINE MÖGLICHKEIT DIESE HOST-INTERRUPTS DER ISA-KARTE MIT LabVIEW AUSZUWERTEN?

Zur Zeit bin ich gezwungen über die DLL ein Statusregister zu pollen, welches mir einen entsprechenden Interrupt anzeigt. Wegen der entsprechenden Kommunikationsdauer lässt sich die gewünschte Auflösung der Verfahrposition bei einem fahrendem Verschiebetisch nicht erreichen.

Ich bin auch über recht grundlegende Infos zum Thema IRQ-Auswertung mit LV sehr dankbar.

Unter Protected Mode Betreibssystemen kann die Applikation selber mit Interrupts gar nichts tun da jeder Versuch von der Applikationsebene aus um Interruptroutinen zu verändern als protection fault error unnachsichtig geahndet wird.

Das muss der Kernel Treiber zu der Karte machen (also die Treiber die mit der Karte kommen). Ob dieser eine Möglichkeit bietet um vom Kernel aus im Falle eines Interrupts ein Event auszulösen dass dann von der User Space DLL an die Applikation weitergereicht werden kann hängt ganz einfach von diesem Treiber ab. Oftmals ist dies Möglichkeit gar nicht gegeben und selbst wenn der Kernel Treiber das unterstützt, unterstützt die User Space DLL das oft noch nicht.

Wenn die User Space DLL und der Kernel Treiber entsprechende Unterstützung bieten ist aber die ganze Chose noch nicht eine Pappenstiel um in LabVIEW zu bekommen. Du wirst dann nämlich dieses OS Event dass vom Treiber ausgelöst werden kann auch noch in ein LabVIEW Event umsetzen müssen. Dazu könntest Du entweder Occurrences oder User Events verwenden.

Beides geht eigentlich nur mit spezifischem externen Code in der Form einer DLL die man in C schreiben muss. Also es geht prinzipiel aber ob es mit Deiner Karte möglich ist steht bestenfalls in den Sternen. Und sollte es das sein wirst Du trotzdem noch einiges an C Kenntnissen aufwenden müssen um es wirklich funktionierend zu bekommen. (Oder jemanden dafür bezahlen der das macht oder (hüstel, hüstel) den Kartenhersteller dazu bringen Dir dieses LabVIEW spezifische Interface zur Verfügung zu stellen).

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
Host -Interrupt einer ISA-Karte auswerten - rolfk - 15.05.2009 09:07

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Aardvark I2C/SPI Host Adapter NicoS 1 2.648 02.08.2021 07:25
Letzter Beitrag: MScz
  Datensatz schreiben von cFP2000 an Host PC HeikoG 3 4.778 15.11.2005 13:19
Letzter Beitrag: didierj

Gehe zu: