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

Панорама

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

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

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

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

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

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

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

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

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

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

Примечание

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

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

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

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

Похожие темы