Электроприводы с системами числового программного управления. Иванов А.К - 106 стр.

UptoLike

Составители: 

Рубрика: 

105
Если ЦПУ осуществляет запись в регистр TCNTn, то результат сравнения
будет игнорироваться на следующем такте синхронизации таймера, даже если
таймер остановлен. Данная функция позволяет установить в регистре OCRnx то
же значение, что и в TCNTn без генерации запроса на прерывание, если разре-
шено тактирование таймера-счетчика.
Использование блока сравнения. Поскольку запись в TCNTn в любом
из режимов работы блокирует отработку совпадения на один такт синхрониза-
ции таймера, то имеются некоторые опасные ситуации при изменении TCNTn
во время использования любого из каналов сравнения независимо, работает
таймер-счетчик или нет. Если в TCNTn записано значение, равное OCRnx, то
возникающее совпадение игнорируется, тем самым вызывая некорректную ге-
нерацию импульсов. Следует избегать
записи в TCNTn значения равного верх-
нему пределу в ШИМ-режимах с переменным значением верхнего предела. В
этом случае совпадение по достижении верхнего предела игнорируется и счет
продолжится до 0xFFFF. Аналогично, следует избегать записи в TCNTn значе-
ния равного нижнему пределу, если счетчик работает как вычитающий (обрат-
ный счет). Прежде чем настроить вывод OCnx на
вывод в регистре направления
данных необходимо выполнить инициализацию регистра OCnx. Самым про-
стым способом решения этой задачи является использование бита принуди-
тельной установки результата сравнения (FOCnx) при работе таймера в нор-
мальном режиме. Регистр OCnx сохраняет свое состояние даже при изменении
режима работы таймера.
Блок формирования выходного сигнала. Биты задания режима форми-
рования
выходного сигнала (COMnx1:0) имеют двойное назначение. С одной
стороны, биты COMnx1:0 используются формирователем сигнала и определяют
какое логическое состояние должно быть на выходе OCnx при возникновении
следующего совпадения. С другой стороны, биты COMnx1:0 используются для
разрешения/запрета альтернативной функции вывода порта OCnx. На рисунке
4.19 представлена упрощенная логическая схема, где показаны только те реги-
стры управления
портом ввода-вывода (DDR и PORT), на которые оказывает
действие биты COMnx1:0. Если происходит системный сброс, то выход регист-
ра OCnx принимает нулевое состояние.
Функция линии универсального порта ввода-вывода заменяется на функ-
цию выхода формирователя сигнала OCnx, если хотя бы один из бит COM01,
COM00 установлен (логика ИЛИ). Однако управление направлением вывода
OCnx (вход или выход) в
этом случае остается за соответствующим битом ре-
гистра направления данных (DDR). Чтобы значение регистра OCnx присутство-
вало на выводе OCnx необходимо настроить данную линию на вывод (устано-
вить соотв. бит в DDRB). Управление вводом альтернативной функции не зави-
сит от режима работы таймера за некоторыми исключениями (см. табл. 4.25 –
4.27).