matlab timer help pls
11 ビュー (過去 30 日間)
古いコメントを表示
Hello,
I am new to Matlab and am seeking help regarding stopping a timer function. I apologise in advance if I use the wrong terminology.
I have both a start and stop button. I have been able to create the timer and both buttons.
Cheers
0 件のコメント
回答 (1 件)
Geoff Hayes
2017 年 3 月 26 日
sufyan - since you are using GUIDE for your GUI, then save the timer handle to the handles structure so that it will be available in the stop button callback. For example,
% --- Executes on button press in start.
function start_Callback(hObject, eventdata, handles)
% hObject handle to start (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% timer function and global variable
handles.ctr = 1;
handles.hTimer = timer('TimerFcn',{@timerCallback,handles},...
'Period',.25,'ExecutionMode','fixedRate');
start(handles.hTimer);
guidata(hObject, handles);
% --- Executes on button press in stop.
function stop_Callback(hObject, eventdata, handles)
% hObject handle to stop (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
if isfield(handles,'hTimer')
stop(handles.hTimer);
end
Note how the hTimer is includes as a field in the handles structure and then we save that updated structure by calling
guidata(hObject,handles);
(I did the same for your ctr. Try to avoid using globals where possible...)
In the stop button callback, we then check to see if the handles structure has a field named hTimer and, if so, stop the timer.
4 件のコメント
Geoff Hayes
2017 年 3 月 27 日
Hi sufyan - please clarify what you mean by I now need the data to be deleted not just paused when STOP is clicked. What data is to be deleted? What is paused?
参考
カテゴリ
Help Center および File Exchange で Startup and Shutdown についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!