PsychoPy отправка триггеров на 64-битных ОС
у меня проблема с отправкой триггеров для записи ЭЭГ с помощью PsychoPy standalone v1.81.00 на 64-битной ОС Win7. Я следовал описаниям здесь и не получите никаких (больше) ошибок. Триггеры, однако, не отображаются на записывающем компьютере (Brainvision Recorder под Win7 32bit).
что я сделал:
- скачал и установил InpOutBinaries_1500 через InpOutBinaries_1500Win32InstallDriver.exe
- скопировал другие файлы (inpout32.файл DLL. ,h и .lib, а также vssver2.scc) в рабочий каталог моего скрипта
- попробовал отправить коды триггеров с
windll.inpout32.Out32(0x378, triggerCode)
код триггера не отображается в Brainvision Recorder, но, похоже, установлен правильно при вызове print str(windll.inpout32.Inp32(0x378))
.
Спасибо за каждый совет или идею!
1 ответов
мне удалось решить проблему. Я не совсем уверен, какой шаг(ы) фактически отрезал кривую, но я рекомендую следующее:
скачать и установить утилита тестирования LPT на презентационном компьютере.
сначала эта программа устанавливает inpout32.dll
автоматически и правильно, независимо от того, используете ли вы 32 или 64-разрядную ОС.
Более того, это поможет вам контролировать и управлять контактами вашего параллельного порта. При использовании стандартных адресов (LPT1
через LPT3
) не работает, выберите LPTX
и введите адрес вручную (смотрите здесь, где получить адрес параллельного порта на ПК с Windows). Если триггеры не показать свои записи компьютера с помощью этой программы, у вас есть проблема, которая не связана с PsychoPy.
если это не удается, (re-)установите драйвер параллельного порта. Использование Windows 7 это не должно быть необходимо, но на самом деле решило одну важную проблему для меня. Если это все еще не удается, вероятно, повреждены аппаратные компоненты (разъем / карта параллельного порта, кабель(ы), коробка синхронизации).
если триггеры работают с программой "LPT Test Utility", но не используют PsychoPy, необходимо индивидуальное устранение неполадок в зависимости от вашего кода. Конечно, вам нужно вставить адрес порта, который работал с" LPT Test Utility " в вашем психопатическом коде.
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
С наилучшими пожеланиями,
Марио