14. 16-битный таймер-счетчик
14.1. Отличительные особенности
- 16-битный таймер-счетчик
- Двойная буферизация регистра задания периода таймера
- До 4 комбинируемых каналов захвата-сравнения (A, B, C и D)
- Двойная буферизация всех каналов захвата-сравнения
- Генерация прямоугольных импульсов:
- Широтно-импульсная модуляция с однонаправленным счетом
- Широтно-импульсная модуляция с двунаправленным счетом
- Генерация частотных импульсов
- Возможности входного захвата:
- Шумоподавление на входе захвата
- Захват частоты
- Захват длительности импульсов
- 32-битный захват
- Генерация прерываний/событий по переполнению и ошибкам таймера
- Каждый канал захвата-сравнения может генерировать одно прерывание/событие по совпадению или захвату
- Поддержка DMA
- Блок расширения разрешающей способности Hi-Res
- Увеличивает разрешающую способность генерации импульсов на 2 бита (в 4 раза)
- Блок расширения возможностей генерации импульсов AWeX
- 4 блока генерации паузы неперекрытия (DT) с отдельными настройками для верхнего и нижнего уровней
- Управляемая по событиям защита от повреждения
- Одноканальная работа с несколькими выходами
- Образцовый генератор
14.2. Обзор
МК XMEGA содержат несколько высококачественных и очень гибких 16-битных таймеров-счетчиков (TC). К их основным предназначениям относятся: строгая привязка ко времени выполнения программы, генерация частоты и прямоугольных импульсов, управление событиями и измерение временных характеристик цифровых сигналов. Для реализации более сложных и специализированных генераторов импульсов предусмотрена возможность совместной работы таймеров-счетчиков с блоками расширения разрешающей способности (Hi-Res) и расширения возможностей генерации импульсов (AWeX).
Функциональная схема 16-битного таймер-счетчика с отображением его расширений и других связанных с ним УВВ (выделены заливкой серым цветом) показана на рисунке 14.1.
Рисунок 14.1. 16-битный таймер-счетчик и связанные с ним УВВ
Таймер-счетчик состоит из базового счетчика и нескольких каналов сравнения или захвата (CC-каналов). Базовый счетчик может использоваться для счета импульсов синхронизации или событий. Предусмотрена возможность задания направления и периода счета. CC-каналы могут использоваться совместно с базовым счетчиком для реализации функций управления по условию совпадения счетчика с заданным значением, для генерации импульсов (частота или ШИМ) или для измерения параметров импульсного сигнала.
Функции захвата и сравнения нельзя выполнять одновременно, т.е. таймер-счетчик не может одновременно выполнять и генерацию, и захват импульсов. Когда CC-канал используется для выполнения операций сравнения, его называют каналом сравнения. Если же CC-канал используется для захвата, то его называют каналом захвата.
Таймер-счетчик может быть в двух исполнениях: таймер-счетчик 0, который содержит четыре CC-канала, и таймер-счетчик 1 с двумя CC-каналами. Таким образом, упоминаемые далее регистры и биты регистров CC-каналов 3 и 4 имеются только у таймера-счетчика 0.
Все таймеры-счетчики подключены к общему предделителю синхронизации УВВ, а также к системе событий и к соответствующим им портам ввода-вывода общего назначения.
Некоторые из таймеров-счетчиков имеют расширения. Блок расширения могут использоваться только этими таймерами. Блок расширения возможностей генерации импульсов (блок AWeX) может использоваться для генерации паузы неперекрытия, образцовой генерации и защиты от повреждения. Блок AWeX доступен только у таймера-счетчика 0.
Выходы генерации импульсов таймера-счетчика перед тем как попасть в ПВВ, при необходимости, могут быть пропущены через блок расширения разрешающей способности (Hi-Res). Данный блок, синхронизирующийся частотой, которая в четыре раза выше частоты синхронизации УВВ, позволяет в четыре раза увеличить разрешающую способность таймера. Блок Hi-Res имеется у всех таймеров-счетчиков.
14.2.1. Определения
Ниже приведены определения, которые интенсивно используются в описании таймера-счетчика:
Таблица 14.1. Определения таймера/счетчика
Наименование |
Описание |
BOTTOM |
Счетчик достиг нижней границы счета, когда он становится равным нулю. |
MAX |
Счетчик достиг максимального значения, когда все его биты равны единице |
TOP |
Счетчик достиг верхней границы счета, когда он становится равным наибольшему значению счетной последовательности. Значение TOP может быть равно периоду (PER) или значению регистра сравнения канала А (CCA). Это зависит от настройки режима генерации импульсов. |
UPDATE |
Таймер-счетчик сигнализирует об обновлении, когда он достигает значения BOTTOM или TOP, в зависимости от выбранного режима генерации импульсов. |
В тех случаях, когда таймер-счетчик синхронизируется внутренними источниками его называют таймером, а когда внешними (событиями) - счетчиком.
|