我正在 Matlab 中创建一个 GUI,它将根据试用持续时间将数据读取和写入文本文件。用户将输入试验次数和试验持续时间,然后按下“开始”按钮。
例如,用户以 10 秒的持续时间输入 5 次试验。在开始第一次试用时,我需要连续读取/写入数据 10 秒,然后停止并保存文本文件。这个过程将在接下来的 5 次试验中继续进行。这是我尝试在下面实现的简短代码。
如何将计时器运行 10 秒并在该时间限制内同时读取/写入数据?
提前致谢。
% Get Number of Trials
number_trials = str2double(get(handles.Number_Trials,'String'));
% Get Trial Duration
trial_duration = str2double(get(handles.Trial_Duration,'String'));
% Timer Counter
global timer_cnt
timer_cnt = 0;
global eye_data
eye_data = 0;
for i = 1:number_trials
% Set Current Trial Executing
set(handles.Current_Trial_Text,'String',num2str(i));
% Set Text File Specifications
data_fname = get(handles.Data_Filename_Edit_Text,'String');
file_fname = '.dat';
data_fname_txt = strcat(data_fname,file_fname);
% Timer Object
fprintf('%s\n','Timer Started');
% Pauses 10 Seconds
t = timer('TimerFcn','stat=false','StartDelay',10);
start(t);
stat = true;
while(stat == true)
disp('.');
pause(1)
end
fprintf('%s\n','Timer Ended');
delete(t);
end