复制以下内容后保存成KbGet.m,放在实验程序文件夹下
========================================
function [secs key] = KbGet(limit, varargin)
%[secs key] = KbGet([limit])
%获取一个按键,并返回得到这个按键时的时间
%可以设置limit来限制按键反应时间,超时则返回key = 0
%精度比KbStrokeWait高
%author: zbg 2015-2
if nargin == 0
limit = inf;
end
[keyIsDown, oldsecs, oldkeyCode, deltaSecs] = KbCheck;
x = [];
while numel(x) == 0
[keyIsDown, secs, keyCode, deltaSecs] = KbCheck;
x = find(keyCode > oldkeyCode);
oldkeyCode = keyCode;
if secs - oldsecs > limit
key = 0;
return
end
end
key = x(1);
end
========================================
function [secs key] = KbGet(limit, varargin)
%[secs key] = KbGet([limit])
%获取一个按键,并返回得到这个按键时的时间
%可以设置limit来限制按键反应时间,超时则返回key = 0
%精度比KbStrokeWait高
%author: zbg 2015-2
if nargin == 0
limit = inf;
end
[keyIsDown, oldsecs, oldkeyCode, deltaSecs] = KbCheck;
x = [];
while numel(x) == 0
[keyIsDown, secs, keyCode, deltaSecs] = KbCheck;
x = find(keyCode > oldkeyCode);
oldkeyCode = keyCode;
if secs - oldsecs > limit
key = 0;
return
end
end
key = x(1);
end