Двоичное представление и установка данных параллельного порта в PsychoPy

Недавно я начал изучать, как использовать PsychoPy, модуль psychopy.parallel и двоичное представление. Я надеюсь, что кто-то может дать мне знать, правильно ли я понимаю вещи.

На веб-сайте PsychoPy говорится, что эти две функции устанавливают на контакты 2 и 3 высокий уровень:

parallel.setData(3)

parallel.setData(int("00000011",2))

Я предполагаю, что эти две функции специально устанавливают контакты 2 и 3 на высокий уровень, потому что самая правая 1 в parallel.setData(int("00000011",2)) относится к контакту 2, а 1 слева к контакту 3. Если я прав, это следующие правильный?

Чтобы установить контакты 2, 3, 4, 5 и 8 на высокий уровень, я должен использовать любой из них:

parallel.setData(79)

parallel.setData(int("01001111",2))

Кроме того, как люди обычно решают, какую комбинацию контактов установить на высокий/низкий уровень при программировании эксперимента (я пытаюсь отправить два или более триггера во время эксперимента с ЭЭГ в PsychoPy)? Или это полностью зависит от меня, если я знаю, какая комбинация контактов, установленных на высокий/низкий уровень, связана с каким конкретным экспериментальным событием?

Я очень ценю любую помощь, которую может предоставить любой. Большое спасибо!


person hsl    schedule 14.07.2015    source источник


Ответы (1)


Ваша интерпретация кажется правильной.

Выбор выводов для установки на самом деле определяется вашей системой ЭЭГ и ее сигнальным протоколом или тем, что вы будете делать на этапе программного обеспечения для анализа, чтобы извлечь значение из этих триггеров. PsychoPy не знает и не заботится о значении булавок: это полностью зависит от вас, чтобы правильно определить соответствие внешним требованиям.

Обратите внимание, что вам также может понадобиться контролировать продолжительность импульсов: опять же, это будет определяться аппаратным обеспечением ЭЭГ.

person Michael MacAskill    schedule 14.07.2015
comment
Большое спасибо! Я проверю свою систему ЭЭГ и ее сигнальный протокол. - person hsl; 15.07.2015
comment
Да, немного нелогично, что они не 1-8, но в документации сайта упоминается (выводы данных - это выводы 2-9 включительно), так что вы совершенно правы. Большинство программ для анализа позволяет вам создать шаблон с метками, чтобы вы могли сохранить значение каждого канала непосредственно с данными — знание вашего анализа является ключом к выбору того, что будут означать ваши выводы. Последнее замечание о длительности — убедитесь, что они достаточно высоки, чтобы напряжение повышалось полностью — установка контактов на высокий, а затем на низкий уровень в течение одного или двух кадров 16 мс иногда может привести к пропуску сигналов. - person Erik Kastman; 17.07.2015
comment
Мы думаем о корзинах как о двоичных числах. Мы используем их, чтобы отметить определенные события. Fix On (один набор контактов вверх); подождите немного и установите все штифты; Fix Off (разные пины)... и так далее. Система eeg, если она может считывать данные с параллельного порта, будет иметь целочисленное представление того, что и когда происходило, и это упрощает последующую нарезку данных. И я повторяю, следя за тем, чтобы вы не поворачивали контакты вверх и вниз слишком быстро, иначе вы пропустите сигналы, но если вы сделаете то, что я только что описал, вы должны убедиться, что у вас есть некоторый буфер между различными комбинациями контактов, иначе вы получите столкновения. - person brittAnderson; 17.07.2015
comment
Сегодня мне удалось заставить PsychoPy отправлять триггеры! У меня вопрос об отправке последовательных триггеров. Скажем, мой стимул отображается в 0 мс, и отправляется триггер стимула (trigger1). Затем через 150 мс выполняется ответ клавиатуры, и для этого ответа отправляется триггер (trigger2). После отправки триггера1 нужно ли устанавливать все контакты на низкий уровень (port.setData(0) в PsychoPy), прежде чем я отправлю следующий триггер (триггер2) для ответа клавиатуры? На самом деле я пытался отправить триггер2 сразу после триггера1, не устанавливая на всех выводах низкий уровень после триггера1, и все выглядело нормально, но могу ли я ошибаться? @brittUWaterloo - person hsl; 21.07.2015