Планирование выполнения команды Используя таймер

Обзор

MATLAB включает объект - таймер, который можно использовать, чтобы запланировать выполнение команд MATLAB. В этом разделе описывается можно создать объекты - таймеры, запустите выполнение таймера и задайте обработку, которую вы хотите выполняемый, когда таймер стреляет. Таймер, как говорят, стреляет, когда количество времени, заданное объектом - таймером, протекает, и объект - таймер выполняет команды, которые вы задаете.

Чтобы использовать таймер, выполните эти шаги:

  1. Создайте объект - таймер.

    Вы используете функцию timer, чтобы создать объект - таймер.

  2. Задайте, какие команды MATLAB вы хотите выполняемый, когда огни таймера и управляют другими аспектами поведения объекта - таймера.

    Вы используете свойства объекта - таймера задать эту информацию. Чтобы узнать обо всех свойствах, поддержанных объектом - таймером, смотрите timer и set. Можно также установить свойства объекта - таймера, когда вы создаете их на шаге 1.

  3. Запустите объект - таймер.

    После того, как вы создадите объект - таймер, необходимо запустить его, с помощью или start или функции startat.

  4. Удалите объект - таймер, когда вы будете сделаны с ним.

    После того, как вы будете закончены с помощью объекта - таймера, необходимо удалить его из памяти. Смотрите delete для получения дополнительной информации.

Примечание

Заданное время выполнения и фактическое выполнение таймера могут отличаться, потому что объекты - таймеры работают в MATLAB однопоточная среда выполнения. Длина этой задержки зависит от того, что другую обработку выполняет MATLAB. Чтобы обеспечить выполнение функций обратного вызова в конечном счете очередь, включайте вызов функции drawnow в вашем коде. Функция drawnow сбрасывает очередь событий.

Пример: Отображение сообщения

Следующий пример настраивает объект - таймер, который выполняет вектор символа команды MATLAB после того, как 10 секунд протекают. Пример создает объект - таймер, задавая значения двух свойств объекта - таймера, TimerFcn и StartDelay. TimerFcn задает функцию обратного вызова таймера. Это - команда MATLAB или программный файл, который вы хотите выполнить, когда таймер стреляет. В примере функция обратного вызова таймера устанавливает значение переменной MATLAB workspace stat и выполняет команду disp MATLAB. Свойство 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.

Смотрите также

Похожие темы

Была ли эта тема полезной?