2014-11-05 13 views
6

Ich habe ein Problem mit dem Senden von Triggern für eeg Aufzeichnung mit PsychoPy Standalone v1.81.00 auf einem Win7 64bit OS. Ich folgte den Beschreibungen here und bekomme keine (mehr) Fehler. Die Trigger werden jedoch nicht auf dem Aufnahmegerät (Brainvision Recorder unter Win7 32bit) angezeigt.PsychoPy Senden von Triggern auf 64bit OS

Was ich tat:

  1. heruntergeladen und installiert die InpOutBinaries_1500 über InpOutBinaries_1500 \ Win32 \ InstallDriver.exe
  2. kopiert die anderen Dateien (inpout32.dll, .h und LIB sowie vssver2.scc) in das Arbeitsverzeichnis von meinem Skript
  3. mit Trigger-Codes Versuchte Senden windll.inpout32.Out32(0x378, triggerCode)

der Code Trigger wird nicht angezeigt in Brainvision Recorder bu t scheint beim Aufruf von print str(windll.inpout32.Inp32(0x378)) korrekt eingestellt zu sein.

Danke für jeden Ratschlag oder Idee!

Antwort

9

Ich habe es geschafft, das Problem zu lösen. Ich bin nicht ganz sicher, welche Stufe (n) tatsächlich die Kurve geschnitten, aber ich empfehlen Ihnen:

herunterladen und installieren LPT Test Utility auf Ihrem Präsentationscomputer.

Zuerst installiert dieses Programm die inpout32.dll automatisch und korrekt, unabhängig davon, ob Sie ein 32- oder 64-Bit-Betriebssystem verwenden. Darüber hinaus hilft es Ihnen, die Pins Ihres parallelen Ports zu überwachen und zu manipulieren. Wenn die Verwendung der Standardadressen (LPT1 bis LPT3) nicht funktioniert, wählen Sie LPTX und geben Sie Ihre Adresse manuell ein (see here where to get your parallel port address on a Windows PC). Wenn die Auslöser auf Ihrem Aufnahmegerät mit diesem Programm nicht angezeigt werden, liegt ein Problem vor, das nicht mit PsychoPy zusammenhängt.

Wenn dies fehlschlägt, (Parallel-) Treiber neu installieren. Mit Windows 7 sollte das nicht notwendig sein, aber eigentlich ein großes Problem für mich gelöst. Schlägt dies immer noch fehl, sind wahrscheinlich die Hardwarekomponenten (Parallelport-Stecker/Karte, Kabel, Sync-Box) beschädigt.

Wenn die Trigger mit dem Programm "LPT Test Utility" arbeiten, aber nicht PsychoPy verwenden, ist eine individuelle Fehlerbehebung abhängig von Ihrem Code erforderlich. Natürlich müssen Sie die Portadresse, die mit "LPT Test Utility" funktioniert, in Ihren PsychoPy-Code einfügen.

from psychopy import core 
from ctypes import windll 

windll.inpout32.Out32(portaddress, triggerCode) #sends the trigger with triggerCode being an integer between 0 and 255 
core.wait(0.05) #wait 50ms 
windll.inpout32.Out32(portaddress, 0) #deletes the trigger i.e. resets the pins 

Best wishes,

Mario

+1

Während der "LPT-Test Utility" wirklich für mich funktionierte nicht, es hat mich auf dem richtigen Weg. [Parallel-Port-Tester] (https://www.downtowndougbrown.com/2013/06/parallel-port-tester/) ist ein ähnliches Programm, das mich auf die korrekte LPT-Adresse hingewiesen hat. –

Verwandte Themen