Микропроцессоры и микроконтроллеры

 
 
 
Л. Якокка : «Компьютер выдает только то, что в него ввели. Секрет успеха - не информация, но люди»
Русский | Українська


Микропроцессоры и микроконтроллеры :: Принципы работы микропроцессоров :: Использование таймеров для реализации периодических вычислений

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

Часто таймер используются в специализированных и бортовых вычислителях для обеспечения заданного периода реализации алгоритмов управления – (для многотактных алгоритмов или многозадачных систем – ). Значения этих периодов рассчитывают при синтезе алгоритмов управления. Задача вычислителя стоит в строгом соблюдении этих значений, поскольку от этого зависят динамические свойства системы управления.

Особенность реализации алгоритма управления состоит в том, что после однократного выполнения алгоритма процессор должен ожидать завершения текущего периода , что определяется сигналом прерывания от таймера (рис. 7.4). При этом в процедуре обработки прерывания от таймера, который реализует , должен каждый раз после инициализации таймера быть выполнен переход на начало алгоритма, а не в ту точку программы, где возникло прерывание. Возврат из процедуры обработки даже в этом случае следует выполнять не по команде JMP, а с использованием специальной команды возврата (RETI или IRET) – попробуйте объяснить, почему? Указанное требование обеспечивается тем, что внутри процедуры обработки точка возврата принудительно считывается из стека, а на её место заносится адрес начала блока вычислений.

Блок-схема (рис. 7.4.-б) не совсем точно отражает процесс обработки и реализации периода . Для описания событийно-ориентированных действий лучше использовать временные диаграммы (рис. 7.4.-а).

Логика реализации периодических вычислений

Рис. 7.4. Логика реализации периодических вычислений:
а) временная диаграмма действий устройств вычислителя;
б) блок-схема реализации периода

Для предотвращения зацикливаний в алгоритмах обработки данных, реализуемых в управляющих вычислителях, применяют так называемый сторожевойтаймер (Watch Dog Timer – WDT). Этоn таймер настраивают на интервал , а сигнал прерывания с этого таймера используют в вычислительном блоке как сигнал аппаратного сброса процессора. После каждого нормально завершенного периода должна быть выполнена новая инициализация и перезапуск сторожевого таймера.

В современных управляющих вычислительных системах обычно применяют функционально завершенные микросхемы таймеров с программной настройкой (например, К580ВИ53, К1810ВИ54 или подобные). Кроме того, таймеры входят в состав однокристальных микроконтроллеров, что позволяет выполнять на их основе цифровые системы управления объектами или процессами в реальном времени.




<< Предыдущая статья
«Реализация функций времени»