99
компаратора) вызывает обновление содержимого ICR1 содержимым счетчика
(TCNT1). Когда ICR1 используется как значение TOP (см.
описание битов
WGM13:0, размещенных в регистрах TCCR1A и TCCR1B), вывод ICP1 будет
отключен, и следовательно функция захвата Input Capture будет запрещена.
TIMSK – Timer/Counter Interrupt Mask Register (рис. 7.11).
Рис. 7.11 – Регистр TIMSK
Bit 5 – TICIE1: Timer/Counter1, Input Capture Interrupt Enable. Когда
этот бит установлен в 1 и установлен флаг I в регистре статуса SREG
(прерывания разрешены глобально), разрешено
прерывание захвата
таймера/счетчика 1 (Timer/Counter1 Input Capture Interrupt). При сра-
батывании прерывания (когда произошло событие захвата и устано-
вился флаг ICF1 в регистре TIFR) будет вызвана подпрограмма обра-
ботчика
по соответствующему вектору;
Bit 2 – TOIE1: Timer/Counter1, Overflow Interrupt Enable. Когда этот
бит установлен в 1 и установлен флаг I в регистре статуса SREG (пре-
рывания разрешены глобально), разрешено прерывание переполнения
таймера/счетчика 1 (Timer/Counter1 Overflow Interrupt). При срабаты-
вании прерывания (когда произошло
переполнение и установился
флаг TOV1 в регистре TIFR) будет вызвана подпрограмма обработчи-
ка по соответствующему вектору.
TIFR – Timer/Counter Interrupt Flag Register (рис. 7.12).
Рис. 7.12 – Регистр TIFR
Регистр флагов прерывания таймеров/счетчиков TIFR устанавливает би-
ты прерывания всех трех (0, 1, 2) таймеров микроконтроллера и имеет следую-
щие биты:
Bit 0, 1 – отвечают за таймер/счетчик 0 и эквивалентны TOV1,
OCF1A, OCF1B;
100
Bit 2 – TOV1. При переполнении регистра TCNT1 таймер/счетчик 1
устанавливает флаг TOV1 (Overflow) – переполнение тайме-
ра/счетчика 1. Установка этого флага
зависит от установки битов
WGM13:10. В режимах нормального счета и при очистке таймера на
сравнении (Clear Timer on Compare, CTC) флаг TOV1 будет установ-
лен, когда таймер переполнится. TOV1 автоматически очищается, ко-
гда вызывается обработчик прерывания по вектору Input Capture
Interrupt. Альтернативно TOV1 может быть очищен записью в этот
бит логической 1;
Bit 3 – OCF1B. При совпадении значений в регистрах TCNT1 и
OCR1B формируется флаг OCF1B (Output Compare B Match);
Bit 4 – OCF1A. При совпадении значений в регистрах TCNT1 и
OCR1A формируется флаг OCF1A (Output Compare A Match);
Bit 5 – ICF1. При захвате входного значения формируется флаг ICF1
(Input Capture);
Bit 6, 7 – отвечают за таймер/счетчик 2 и эквивалентны TOV1,
OCF1A, OCF1B.
Вызов соответствующих прерываний зависит от значения соответствую-
щих битов регистра TIMSK и флага I в Status регистре процессора.
Do'stlaringiz bilan baham: