Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мпт 2013.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
2.12 Mб
Скачать

46. Режимы работы таймера. Нормальный режим.

Режим работы таймера, в т.ч. поведение таймера-счетчика и связанного с ним выхода формирователя сигнала, задается комбинацией бит, задающих режим работы таймера (WGMn1, WGMn0) и режим формирования выходного сигнала (COMn1, COMn0).

При этом биты задания режима формирования выходного сигнала не влияют на алгоритм счета, т.к. алгоритм счета зависит только от состояния бит задания режима работа таймера.

Самым простым режимом работы является нормальный режим.

В данном режиме счетчик работает как суммирующий (инкрементирующий), при этом сброс счетчика не выполняется.

Переполнение счетчика происходит при переходе через максимальное 8-разр. значение (верхний предел = 0xFF) к нижнему пределу счета (0x00).

В нормальном режиме работы флаг переполнения таймера-счетчика TOVn будет установлен на том же такте синхронизации, когда TCNTn примет нулевое значение.

Фактически, флаг переполнения TOVn является 9-ым битом таймера-счетчика за тем исключением, что он только устанавливается и не сбрасывается. Однако программно это свойство может быть использовано для повышения разрешающей способности таймера, если использовать прерывание по переполнению таймера, при возникновении которого флаг TOV0 сбрасывается автоматически.

Для нормального режима работы не существует каких-либо особых ситуаций связанных с записью нового состояния счетчика, когда требовалось бы учесть меры предосторожности.

Блок сравнения может использоваться для генерации прерываний.

47. Режимы работы таймера. Режим стс.

В режиме СТС регистр OCRn используется для задания разрешающей способности счетчика.

Если задан режим CTC и значение счетчика (TCNTn) совпадает со значением регистра OCRn, то счетчик обнуляется (TCNTn=0). Таким образом, OCRn задает вершину счета счетчика, а, следовательно, и его разрешающую способность. В данном режиме обеспечивается более широкий диапазон регулировки частоты генерируемых прямоугольных импульсов. Он также упрощает работу счетчика внешних событий.

С помощью флага OCF0 прерывание может генерироваться всякий раз, когда счетчик достигает своего верхнего предела счета. Если работа прерывания разрешена, то процедура обработки прерывания может использоваться для обновления значения вершины счета.

Однако, задание значения вершины счета близкого к значению нижнего предела счета, когда счетчик работает без предделения или с малым значением предделения, необходимо выполнять с особой осторожностью, т.к. в режиме СТС нет двойной буферизации. Если значение, записанное в OCR0, меньше текущего значения TCNT0, то сброс счетчика по условию совпадения наступит, когда он достигнет максимального значения (0xFF), затем перейдет в исходное состояние 0x00 и достигнет нового значения OCRn.

Также как и для нормального режима работы, флаг TOVn устанавливается на том же такте таймера, когда его значение изменяется с 0xFF на 0x00.

В ременная диаграмма для режима СТС показана на рисунке. Значение счетчика (TCNTn) инкрементируется до тех пор, пока оно не станет равным значению в OCRn, после чего счетчик (TCNTn) обнулится.

Для генерации сигнала в режиме CTC выход компаратора OCn может использоваться для изменения логического уровня при каждом совпадении. Максимальная частота генерируемого сигнала равна fOCn = fclk_I/O/2, если OCRn = 0x00. Для других значений OCRn частоту генерируемого сигнала можно определить по формуле:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]