I need to make a continuous timer

4 visualizzazioni (ultimi 30 giorni)
Javier
Javier il 9 Nov 2015
Risposto: Guillaume il 9 Nov 2015
I need to make a continuous timer to be used with a Data Acquisition program. I am saving the acquired data every minute, and my timer will occur every hour, so I cannot use pause instead of a timer because I will not be able to save my data. I have been able to create timers that activate on a periodic basis, but they have a finite number of periods. I am looking to make a timer that runs indefinitely. I am using the core Matlab program to acquire my data, this program is in an .m file.
  1 Commento
Guillaume
Guillaume il 9 Nov 2015
" but they have a finite number of periods"
As far as I know, this is not true.

Accedi per commentare.

Risposta accettata

Guillaume
Guillaume il 9 Nov 2015
As far as I know, matlab timers are not restricted to a finite number of periods.
If a standard matlab timer is not suitable and you're on Windows, you can always use a .Net Timer:
period = 5000; %in milliseconds
nettimer = System.Timers.Timer(period);
nettimer.AutoReset = true; %true by default anyway
timerlistener = addlistener(nettimer, 'Elapsed', @(~, ~) disp('Hello'));
nettimer.Enabled = true; %start timer
I would still recommend using a matlab timer.

Più risposte (1)

TastyPastry
TastyPastry il 9 Nov 2015
If you want to measure performance in real time (i.e. seconds), you can use the functions tic() and toc() which start and read the timer, respectively. Call tic() again to reset the timer. Alternatively, there are functions timeit() and cputime() depending on what you're trying to time.
  1 Commento
Javier
Javier il 9 Nov 2015
Tic and toc are great to get elapsed time. I have tried them with pause to get elapsed time between pauses, but in this occasion I am looking to run a function every hour indefinitely without using pause. My problem is not with reading time every hour, but with executing a timer every hour on a loop without using pause. I can create the timer, but the timer ends at some point, I would like to know how to create a timer that never ends.

Accedi per commentare.

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by