Регистры сравнения выхода таймеров/счетчиков

Регистры сравнения выхода таймеров/счетчиков

Регистр сравнения выхода таймера/счетчика0 - OCR0 - (Timer/Counter0 Output Compare Register)

Биты

$31 ($51)
MSB LSB

OSR0
Чтение/Запись
R/W R/W R/W R/W R/W R/W R/W R/W

Начальное состояние

Регистр сравнения выхода таймера/счетчика2 - OCR2 - (Timer/Counter2 Output Compare Register)

Биты

$23 ($43)
MSB LSB

OSR2
Чтение/Запись
R/W R/W R/W R/W R/W R/W R/W R/W

Начальное состояние

Регистры сравнения выходов являются 8-разрядными регистрами с возможностью чтения/записи. Выполнение процедуры сравнения определяется регистрами TCCR0 и TCCR2. Совпадение при сравнении произойдет только тогда, когда таймер/счетчик досчитает до Регистры сравнения выхода таймеров/счетчиков значения содержимого OCR. Программная запись одного и того же значения в таймер/счетчик и в регистр сравнения выхода не приведет к формированию совпадения при сравнении.

Совпадение при сравнении приведет к установке флага прерывания по совпадению в течение тактового цикла CPU следующего за совпадением. Необходимо принимать меры предосторожности при работе таймера/счетчика0 в асинхронном режиме, т.е. устанавливать в состояние 1 бит AC0 в регистре ASSR. При записи в регистр OCR0 значение, пересылается в регистр по TCK0 такту, следующему за операцией записи.

Таймеры/счетчики 0 и 2 в ШИМ режиме - Timer/Counter 0 and 2 in PWM mode

При установленном ШИМ режиме таймер/счетчик и регистр Регистры сравнения выхода таймеров/счетчиков сравнения выхода (OCR0 или OCR2) формируют 8-разрядный, без ложных выбросов и с правильной фазой ШИМ сигнал с выходом через PB4(OC0/PWM0) или PB7(OC2/PWM2) выводы. Таймер/счетчик работает как реверсивный счетчик, считающий от $00 до $FF, после чего он считает в обратную сторону до нуля и только после этого начинает новый цикл. Когда состояние счетчика совпадает с содержимым регистра сравнения выхода выводы PB4(OC0/PWM0) или PB7(OC2/PWM2) устанавливаются или очищаются, в соответствии с установленными, в регистрах управления таймерами/счетчиками TCCR0 и TCCR2, битами COM01/COM00 или COM21/COM20. См. таблицу 13.

Таблица 13. Выбор режима сравнения в ШИМ режиме

COMn Регистры сравнения выхода таймеров/счетчиков1 COMn0 Эффект, оказываемый на вывод Compare/PWM
Не подсоединен
Не подсоединен
Очистка при совпадении, счет по нарастанию. Установка при совпадении, счет по убыванию (неинвертирующий ШИМ)
Очистка при совпадении, счет по убыванию. Установка при совпадении, счет по нарастанию (инвертирующий ШИМ)

Примечания: n = 0 или 2.

В ШИМ режиме при записи содержимое регистра сравнения выхода пересылается на временное хранение. Содержимое фиксируется при достижении таймером/счетчиком состояния $FF. Такой прием предохраняет от появления ШИМ импульсов увеличенной ширины (ложных выбросов) в случае несинхронной записи OCR0 или OCR2. Пример см. на рис.34.

Рис. 34. Эффект несинхронной фиксации OCR

В промежуток времени между операциями записи и фиксации считывание из Регистры сравнения выхода таймеров/счетчиков OCR0 или OCR2 приведет к считыванию из места временного хранения. Это означает, что чаще всего при чтении значения уставки считывание будет производиться из OCR0/2. При состоянии регистра OCR $00 или $FF выход ШИМ будет удерживаться на низком или высоком уровне, в зависимости от установок COM21/COM20 или COM11/COM10. См. таблицу 14.



Таблица 14. Состояния ШИМ выходов при OCRn = $00 или $FF

COMn1 COMn0 OCRn Выход PWMn
$00 L - низкий уровнье
$FF H - высокий уровень
$00 H - высокий уровень
$FF L - низкий уровень

Примечания: n = 0 или 2.

В ШИМ режиме флаг переполнения таймера (TOV0 или TOV2) устанавливается при смене направления счета при $00. Прерывания по переполнению таймеров 0 и 2 работают так Регистры сравнения выхода таймеров/счетчиков же, как и в нормальном режиме таймеров/счетчиков, т.е. они срабатывают когда TOV0 или TOV2 установлены, и разрешены прерывания по переполнению таймера и глобальному прерыванию. Это относится также к флагам сравнения выхода таймеров и прерываниям.

Частота ШИМ будет соответствовать тактовой частоте таймера деленной на 510.


documentaqhohnt.html
documentaqhooyb.html
documentaqhowij.html
documentaqhpdsr.html
documentaqhplcz.html
Документ Регистры сравнения выхода таймеров/счетчиков