Matlab 脚本与键盘一起工作,但与响应按钮不一致

Matlab 脚本与键盘一起工作,但与响应按钮不一致,matlab,psychtoolbox,Matlab,Psychtoolbox,在我的脚本中,当我显示不同的刺激(image1,image2)时,我想记录响应(键盘r或响应按钮单击)。循环(试用)始终显示image1,然后显示image2,并存储记录的单击时间,因为我们需要响应时间。可以在image1或image2期间单击,但每次试验只能单击一次 使用键盘按键在两个图像期间都可以录制。但是,它只记录在image1期间按下的按钮,而不记录image2。因此,问题不是没有记录响应,而是按钮实际起作用 我尝试过:使用不同的响应按钮,使用鼠标作为响应按钮。当我单击响应按钮时,它会在

在我的脚本中,当我显示不同的刺激(
image1
image2
)时,我想记录响应(键盘r或响应按钮单击)。循环(试用)始终显示
image1
,然后显示
image2
,并存储记录的单击时间,因为我们需要响应时间。可以在
image1
image2
期间单击,但每次试验只能单击一次

使用键盘按键在两个图像期间都可以录制。但是,它只记录在
image1
期间按下的按钮,而不记录
image2
。因此,问题不是没有记录响应,而是按钮实际起作用

我尝试过:使用不同的响应按钮,使用鼠标作为响应按钮。当我单击响应按钮时,它会在命令行中写入
r
,也在
image1
期间,它会被收集

在显示
image2
时,如何使响应按钮工作


startofteric=GetSecs;
%刺激呈现
屏幕(“DrawTexture”、myScreen、image1)
[VBLTimestamp刺激设置时间1]=屏幕(“翻转”,我的屏幕);
%响应记录
[keyIsDown,responseTime1,keyCode]=KbCheck;%保存是否按下某个键、秒数和按下的键。
而按键代码(按钮)==0
[keyIsDown,responseTime1,keyCode]=KbCheck;
如果responseTime1-刺激设置时间1>=刺激持续时间
屏幕(“DrawTexture”、myScreen、image2);
[VBLTimestamp StimulusSendTime1]=屏幕(“翻转”,我的屏幕);
如果响应时间1-刺激设置时间1>=刺激持续时间+ISI
打破
结束
结束
结束
如果响应时间1-刺激设置时间1<刺激持续时间
等待秒(刺激持续时间-(响应时间1-刺激设置时间1));
[VBLTimestamp StimulusSendTime1]=屏幕(“翻转”,我的屏幕);
结束
%检查正确性
如果键代码(按钮)=1
RT(试验)=(响应时间1-刺激设置时间1)*1000;%转换为毫秒
反应(试验)=1;
如果试验(2,试验)=1
正确性(试验)=1;%打
其他的
正确性(试验)=2;%虚惊一场
结束
其他的
反应(试验)=0;
如果试验(2,试验)=1
正确性(试验)=3;%错过
其他的
正确性(试验)=4;%正确拒绝
结束
结束
c=正确性(试验)
t2=GetSecs;
%显示剩余时间的空白屏幕
如果t2-刺激发送时间1
什么是“image2”,即您通过屏幕绘制的交叉纹理(“DrawTexture”,myScreen,cross);?我确实将变量名更改为image1和image2,以使其与问题相匹配。我希望这能澄清这一点。谢谢。看起来您只轮询了一个按钮,即按钮的值。您如何通过记录的响应时间确定您只在image1期间记录了一次按压,而不是image2?我记录了按钮被按下的时间,因此我可以判断只有image1(500毫秒)期间记录了按压。我还通过仅在image1或image2期间按,然后检查日志文件来测试这一点。虽然您没有提供复制此示例所需的所有值(stimDuration、ISI等),但现有代码似乎如您所述正常工作,在第一次或第二次刺激期间,在适当的响应时间内捕捉键盘按钮按下。是键盘按钮有问题还是鼠标点击有问题?什么是“image2”,即通过屏幕绘制的交叉纹理(“DrawTexture”,myScreen,cross);?我确实将变量名更改为image1和image2,以使其与问题相匹配。我希望这能澄清这一点。谢谢。看起来您只轮询了一个按钮,即按钮的值。您如何通过记录的响应时间确定您只在image1期间记录了一次按压,而不是image2?我记录了按钮被按下的时间,因此我可以判断只有image1(500毫秒)期间记录了按压。我还通过仅在image1或image2期间按,然后检查日志文件来测试这一点。虽然您没有提供复制此示例所需的所有值(stimDuration、ISI等),但现有代码似乎如您所述正常工作,在第一次或第二次刺激期间,在适当的响应时间内捕捉键盘按钮按下。是键盘按钮有问题,还是鼠标点击?