由于我是编码新手,因此我正在PsychoPy中通过构建器模式在PsychoPy中编写的脚本中添加EEG触发器。实验是一系列句子和视觉单词结尾的音频记录–记录和单词是通过电子表格调用的。我们对参与者在查看单词结尾时的回答感兴趣。
下面是我当前没有EEG触发器的脚本,下面是来自其他人的脚本,该脚本具有与他们用于插入EEG触发器的系统相同的系统。我希望记录从“句子”刺激的结尾开始,包括在“目标”和“响应”期间的时间,以及在他们做出响应后结束的时间。
非常感谢您的帮助!
------Prepare to start Routine “trial1”-------
t = 0
trial1Clock.reset() # clock
frameN = -1
continueRoutine = True
**# update component parameters for each repeat**
target.setColor([1.000,1.000,1.000], colorSpace='rgb')
target.setText(word)
response = event.BuilderKeyResponse()
Sentences.setSound(sounds, secs=6)
**# keep track of which components have finished**
trial1Components = [target, response, Sentences, text_2]
for thisComponent in trial1Components:
if hasattr(thisComponent, 'status'):
thisComponent.status = NOT_STARTED
# Send event marker to NetStation
if mode=='eeg' and stage=='expt':
code = 'item'
ns.sync()
ns.send_event(code, label='item', timestamp=egi.ms_localtime(), table = { 'item' : curr_item })
答案 0 :(得分:1)
您说您“使用Builder编写了代码”。您在Builder之后更改了代码吗?如果不是这样,那么始终最好从Builder本身进行工作,以允许您在保留触发器的同时更改实验的其他方面。假设您可以在Builder中工作:
如果通过并行端口发送触发器,则在I / O->并行端口下有一个组件。
否则,您可以插入代码组件以在所需时间运行代码:
import xxxx as ns
,或者您创建了ns
对象。if stim.status == FINISHED:
那样听刺激状态,或者(b)在“开始例行检查,然后trigger_sent = False
(如果您的刺激持续2秒钟)