Основы микропроцессорной техники



             

Таймеры и процессоры событий - часть 3


Такой подход используется, в частности, в МК компании Motorola.

Принцип действия канала входного захвата таймера/счетчика иллюстрирует рис. 4.6.

Структурная схема канала входного захвата таймера.

Рис. 4.6.  Структурная схема канала входного захвата таймера.

Схема детектора события "наблюдает" за уровнем напряжения на одном из входов МК. Чаще всего это одна из линий порта ввода/вывода. При изменении уровня логического сигнала с "0" на "1" и наоборот вырабатывается строб записи, и текущее состояние счетчика   таймера записывается в 16-разрядный регистр входного захвата. Описанное действие в микропроцессорной технике называют событием захвата. Предусмотрена возможность выбора типа сигнала на входе, и это воспринимается как событие:

  • положительный (передний) фронт сигнала;
  • отрицательный (задний) фронт сигнала;
  • любое изменение логического уровня сигнала.

Выбор типа события захвата устанавливается в процессе инициализации таймера и может неоднократно изменяться в ходе выполнения программы. Каждое событие захвата приводит к установке в "1" триггера входного захвата и появлению на его выходе флага (признака) входного захвата ICF. Состояние триггера входного захвата может быть считано программно, а если прерывания по событию захвата разрешены — формируется запрос на прерывание   INT IC.

Использование режима входного захвата позволяет исключить ошибки измерения входного интервала времени, связанные со временем перехода к подпрограмме обработки прерывания, так как копирование текущего состояния счетчика осуществляется аппаратными, а не программными средствами. Однако время перехода на подпрограмму обработки прерывания накладывает ограничение на длительность измеряемого интервала времени, так как предполагается, что второе событие захвата произойдет позже, чем код первого события будет считан МК.

Структура аппаратных средств канала выходного сравнения представлена на рис. 4.7.

Цифровой компаратор непрерывно сравнивает текущий код счетчика   таймера с кодом, который записан в 16-разрядном регистре выходного сравнения.


Содержание  Назад  Вперед