How to pass a value to TIMER function
16 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hi, I would like to have the data I obtained from my NI daq board to show on my GUI window in real time while I can still run other things from the GUI. I tried the TIMER function, but not sure how to pass the value to the timer function. Any help and suggestion would be greatly appreciated.
Thanks,
Feng
0 Commenti
Risposte (1)
dpb
il 21 Lug 2013
Create a timer setting type and period initially...
rate=10; % a repetition rate
ht=timer('ExecutionMode','fixedrate', ...
'period', rate, ...
'TimerFcn',@yourcallbackfunction);
Set the rate later...
rate=rate/2;
set(ht,'period',rate);
doc timer % for more details
Not sure how you're trying to do this; you might want a singleshot and restart it from the callback when you've got a new set of data; not sure...
2 Commenti
dpb
il 21 Lug 2013
Yeah, you have to follow the rules established for callback functions--see the docs for the timer object for details.
The basic idea is that if you specify the callback commands directly as the value of the callback function property w/ the callback an anonymous function the commands are evaluated in the MATLAB workspace.
OTOH, if instead of specifying MATLAB commands directly as the value of a callback property, when you create a callback function, the first two arguments must be a handle to the timer object and an event structure. Other application-specific arguments must be in a cell array and this function operates in its own space.
It's too involved a subject to try to repeat the help doc's here; read them in their entirety going through the examples of how to create/use callback functions.
Vedere anche
Categorie
Scopri di più su Simultaneous and Synchronized Operations in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!