Psychtoolbox:为pavlovian和器乐脚本收集键盘输入

时间:2018-10-17 18:43:23

标签: keyboard psychtoolbox

我在收集用于两种心理任务的键盘输入时遇到了麻烦,这是一种pavlovian和器乐性学习脚本。我将展示器乐脚本,希望将解决器乐脚本中的问题转移到巴甫洛夫脚本中。我正在使用具有高Sierra触控栏的2018 MacBook Pro。

我想要的是如果我按Escape键以关闭窗口,并且在试用循环中,计算左,上和右箭头键的按下次数,以便在按下该键九次时显示结果图像。但是蓝色窗口仅停留在屏幕上,并且对键盘输入无响应。实际上,此刻脚本只是停留在介绍文字的介绍窗口中。

Instrumental.m

这是我尝试过的:

使用KbCheck代替KbWait

删除While循环

将键盘输入代码放在代码中的不同位置

使用不同的KbName

为KbWait使用不同的索引

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

缺少一些能够运行脚本的部分,例如PITGUI()和图像文件。但是,通过查看代码,可以解决一些问题:

字符串应使用单引号而不是双引号:

更改:

fname = sprintf('%s %s', InputDataStruct.filename, ".txt");

收件人:

fname = sprintf('%s %s', InputDataStruct.filename, '.txt');

现在,keyIsDown永远不会评估为true,这可能是因为KbWait已换成KbCheck:

更改:

[secs, keyCode] = KbWait(1);

收件人:

[keyIsDown, secs, keyCode] = KbCheck;

显示错误:

更改:

catch
    Screen('CloseAll')
    rethrow(lasterror)   
end

收件人:

catch e
    Screen('CloseAll')
    rethrow(e)   
end