Средства реализации заданных
временных параметров встраиваемых систем
135
переходе на вектор прерывания. Альтернативно флаг ICFn сбрасывается
программно, если записать в него лог. 1. Считывание 16-разр. значения
регистра захвата (ICRn) выполняется чтением сначала младшего байта
(ICRnL), а затем старшего байта (ICRnH). При выполнении команды чтения
младшего байта значение старшего байта автоматически копируется во
временный регистр. Если ЦПУ выполняет команду чтения регистра ICRnH,
то фактически считывается
содержимое временного регистра. Запись в
регистр ICRn возможна только в том случае, если битами задания режима
работы таймера выбран режим, в котором значение регистра ICRn задает
верхний предел счета. В этом случае необходимо выполнить
соответствующую установку бит режима работы (WGMn3:0), а только затем
выполнить запись значения верхнего предела в регистр ICRn. Запись 16-разр.
значения в
регистр ICRn выполняется путем записи сначала старшего байта в
ICRnH, а только затем младшего байта в ICRnL.
Основным источником, инициирующим захват состояния таймер-
счетчика, является вывод захвата (ICPn). Таймер-счетчик 1 также
альтернативно может использовать выход аналогового компаратора в
качестве источника инициации захвата. Для этого необходимо установить
бит разрешения захвата аналоговым компаратором (ACIC) в регистре
состояния
и управления аналогового компаратора (ACSR). Учтите, что
изменение источника инициации захвата может привести к возникновению
захвата. Поэтому, после изменения источника должен быть сброшен флаг
захвата.
Входные каскады, связанные с выводом захвата (ICPn) и выходом
аналогового компаратора (ACO) выполнены по аналогии с каскадом,
связанного с выв. Tn. Детекторы фронта также идентичны. Однако если
разрешена работа
подавителя шумов, то последовательно перед детектором
фронта включается дополнительная логика, которая реагирует на изменение
уровня, если он находился на постоянном уровне не менее 4 тактов ЦПУ.
Обратите внимание, что вход подавителя шумов и детектора фронта всегда