MATLAB® программное обеспечение включает объект-таймер, который можно использовать для планирования выполнения команд MATLAB. В этом разделе описывается, как можно создать объекты-таймеры, запустить таймер и указать обработку, которую необходимо выполнить при запуске таймера. Таймер запускается, когда прошло время, заданное объектом-таймером, и объект-таймер выполняет команды, которые вы задаете.
Чтобы использовать таймер, выполните следующие шаги:
Создайте объект-таймер.
Вы используете timer
функция для создания объекта-таймера.
Укажите, какие команды MATLAB вы хотите выполнить, когда таймер запускает, и управляйте другими аспектами поведения объекта-таймера.
Вы используете свойства объекта-таймера, чтобы задать эту информацию. Чтобы узнать обо всех свойствах, поддерживаемых объектом-таймером, смотрите timer
и set
. Вы также можете задать свойства объекта-таймера, когда вы создаете их, на шаге 1.
Запустите объект-таймер.
После того, как вы создаете объект-таймер, вы должны запустить его, используя start
или startat
функция.
Удалите объект-таймер, когда вы сделаны с ним.
После того, как вы закончите использовать объект-таймер, вы должны удалить его из памяти. См. delete
для получения дополнительной информации.
Примечание
Заданное время выполнения и фактическое выполнение таймера могут варьироваться, потому что объекты-таймеры работают в однопоточном окружении выполнения MATLAB. Продолжительность этой временной задержки зависит от того, какую обработку выполняет MATLAB. Чтобы принудительно выполнить функции обратного вызова в очереди событий, включите вызов в drawnow
функция в вашем коде. The drawnow
функция очищает очередь событий.
В следующем примере устанавливается объект-таймер, который выполняет командный вектор символов MATLAB через 10 секунд. Пример создает объект-таймер, задающее значения двух объектов-таймеров свойств, TimerFcn
и StartDelay
. TimerFcn
задает функцию обратного вызова таймера. Это командный или программный файл MATLAB, который вы хотите выполнить, когда таймер запускается. В примере функция обратного вызова таймера устанавливает значение переменного рабочего пространства MATLAB stat
и выполняет MATLAB disp
команда. The StartDelay
свойство задает, сколько времени прошло до запуска таймера.
После создания объекта-таймера в примере используется start
функция для запуска объекта-таймера. (Дополнительные команды в этом примере включены, чтобы проиллюстрировать таймер, но не требуются для операции таймера.)
t = timer('TimerFcn', 'stat=false; disp(''Timer!'')',... 'StartDelay',10); start(t) stat=true; while(stat==true) disp('.') pause(1) end
Когда вы выполняете этот код, он выдает этот выход:
. . . . . . . . . Timer! delete(t) % Always delete timer objects after using them.