logo
ответы_ОМПТ_Тайлан

18. Принцип действия канала выходного сравнения таймера микроконтроллера avr.

16-разрядный компаратор непрерывно сравнивает значение TCNTn со значением регистра порога сравнения (OCRnx).Если значение TCNT равно OCRnx, то компаратор формирует сигнал совпадения .Следующий за совпадением такт ЦПУ устанавливает флаг сравнения (OCFnx).Если бит OCIEnx=1, то установка флага сравнения приведет к генерации прерывания по результату сравнения. Флаг OCFnx автоматически сбрасывается после перехода на вектор обработки прерывания. Альтернативно флаг OCFnx сбрасывается программно, если записать в него лог. 1.Сигнал совпадения используется формирователем выходного сигнала, результирующая форма которого зависит от выбранного режима работы таймера и режима формирования импульсов. Сигналы Верхний и Нижний предел исп-ся формирователем импульсов для отработки особых случаев задания экстремальных значений в некоторых режимах работы. Если задан любой из 12 режимов ШИМ, то OCRnx содержит двойную буферизацию, которая синхронизирует обновление регистра порога сравнения OCRnx по достижении верхнего или нижнего предела счета. Эта синхронизация предотвращает возможность возникновения несимметричных ШИМ импульсов нечетной длины. OCRnx считывается напрямую, а не через временный регистр старшего байта. Запись регистров OCRnx происходит через временный регистр, т.к. все 16 разрядов участвуют в сравнении непрерывно. Первым необходимо записать старший байт. Если выполняется запись младшего байта то параллельно копируется содержимое временного регистра в старшие 8 разрядов буферного регистра OCRnx или регистра порога, тем самым обновляя все 16 разрядов за один такт ЦПУ.