INTFLAGS - регистр флагов прерываний 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

INTFLAGS - регистр флагов прерываний



Бит                  
+0x03
- - - - - - INT1IF INT0IF
INTFLAGS
Чтение/запись Чт. Чт. Чт. Чт. Чт. Чт. Чт/Зап Чт/Зап
Нач значение                

201. Биты 7:2 - Res: резервные биты

Данные биты являются резервными и всегда считываются с нулевыми значениями. Для совместимости с будущими МК, выполняя запись в этот регистр, всегда записывайте нули в резервные биты.

202. Биты 1:0 - INTnIF: флаг прерывания n

Флаг INTnIF устанавливается в том случае, если на любой из линий порта, которая выбрана в качестве источника прерывания n, выполняется настроенное условие генерации запроса на прерывание. Запись единицы в данный бит приводит к сбросу соответствующего флага прерывания. Разрешение и исполнение прерываний см. в описании уровней прерываний.

Каким из физических портов связан данный регистр зависит от настройки регистра VPCTRLA (регистр А управлению связью с виртуальными портами) или VPCTRLB (регистр В управления связью с виртуальными портами). После связывания физического порта с виртуальным, доступ к этому регистру будет идентичным доступу к регистру INTFLAGS физического порта.

Обзор регистров портов

Адрес Наименование Бит 7 Бит 6 Бит 5 Бит 4 Бит 3 Бит 2 Бит 1 Бит 0
+0x00 DIR DIR[7:0]
+0x01 DIRSET DIRSET[7:0]
+0x02 DIRCLR DIRCLR[7:0]
+0x03 DIRTGL DIRTGL[7:0]
+0x04 OUT OUT[7:0]
+0x05 OUTSET OUTSET[7:0]
+0x06 OUTCLR OUTCLR[7:0]
+0x07 OUTTGL OUTTGL[7:0]
+0x08 IN IN[7:0]
+0x09 INTCTRL - - - - INT1LVL[1:0] INT0LVL[1:0]
+0x0A INT0MASK INT0MSK[7:0]
+0x0B INT1MASK INT1MSK[7:0]
+0x0C INTFLAGS - - - - - - INT1IF INT0IF
+0x0D (резерв) - - - - - - - -
+0x0E (резерв) - - - - - - - -
+0x0F (резерв) - - - - - - - -
+0x10 PIN0CTRL SRLEN INVEN OPC[2:0] ISC[2:0]
+0x11 PIN1CTRL SRLEN INVEN OPC[2:0] ISC[2:0]
+0x12 PIN2CTRL SRLEN INVEN OPC[2:0] ISC[2:0]
+0x13 PIN3CTRL SRLEN INVEN OPC[2:0] ISC[2:0]
+0x14 PIN4CTRL SRLEN INVEN OPC[2:0] ISC[2:0]
+0x15 PIN5CTRL SRLEN INVEN OPC[2:0] ISC[2:0]
+0x16 PIN6CTRL SRLEN INVEN OPC[2:0] ISC[2:0]
+0x17 PIN7CTRL SRLEN INVEN OPC[2:0] ISC[2:0]
+0x18 (резерв) - - - - - - - -
+0x19 (резерв) - - - - - - - -
+0x1A (резерв) - - - - - - - -
+0x1B (резерв) - - - - - - - -
+0x1C (резерв) - - - - - - - -
+0x1D (резерв) - - - - - - - -
+0x1E (резерв) - - - - - - - -
+0x1F (резерв) - - - - - - - -

Обзор регистров мультипортовой конфигурации

Адрес Наименование Бит 7 Бит 6 Бит 5 Бит 4 Бит 3 Бит 2 Бит 1 Бит 0
+0x00 MPCMASK MPCMASK[7:0]
+0x01 (резерв) - - - - - - - -
+0x02 VPCTRLA VP1MAP[3:0] VP2MAP[3:0]
+0x03 VPCTRLB VP3MAP[3:0] VP4MAP[3:0]
+0x04 CLKEVOUT     EVOUT[1:0]     CLKOUT[1:0]

Обзор регистров виртуальных портов

Адрес Наименование Бит 7 Бит 6 Бит 5 Бит 4 Бит 3 Бит 2 Бит 1 Бит 0
+0x00 DIR DIR[7:0]
+0x01 OUT OUT[7:0]
+0x02 IN IN[7:0]
+0x03 INTFLAGS - - - - - - INT1IF INT0IF

Обзор векторов прерываний портов ввода-вывода

Таблица 13.9. Векторы прерываний портов и значения смещений их адресов

Смещение Источник Описание прерывания
0x00 INT0_vect Смещение вектора прерываний 0 ПВВ
0x02 INT1_vect Смещение вектора прерываний 1 ПВВ

Битный таймер-счетчик

Отличительные особенности

203. 16-битный таймер-счетчик

204. Двойная буферизация регистра задания периода таймера

205. До 4 комбинируемых каналов захвата-сравнения (A, B, C и D)

206. Двойная буферизация всех каналов захвата-сравнения

207. Генерация прямоугольных импульсов:

208. Широтно-импульсная модуляция с однонаправленным счетом

209. Широтно-импульсная модуляция с двунаправленным счетом

210. Генерация частотных импульсов

211. Возможности входного захвата:

212. Шумоподавление на входе захвата

213. Захват частоты

214. Захват длительности импульсов

215. 32-битный захват

216. Генерация прерываний/событий по переполнению и ошибкам таймера

217. Каждый канал захвата-сравнения может генерировать одно прерывание/событие по совпадению или захвату

218. Поддержка DMA

219. Блок расширения разрешающей способности Hi-Res

220. Увеличивает разрешающую способность генерации импульсов на 2 бита (в 4 раза)

221. Блок расширения возможностей генерации импульсов AWeX

222. 4 блока генерации паузы неперекрытия (DT) с отдельными настройками для верхнего и нижнего уровней

223. Управляемая по событиям защита от повреждения

224. Одноканальная работа с несколькими выходами

225. Образцовый генератор

Обзор

МК 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.1. Определения таймера/счетчика

Наименование Описание
BOTTOM Счетчик достиг нижней границы счета, когда он становится равным нулю.
MAX Счетчик достиг максимального значения, когда все его биты равны единице
TOP Счетчик достиг верхней границы счета, когда он становится равным наибольшему значению счетной последовательности. Значение TOP может быть равно периоду (PER) или значению регистра сравнения канала А (CCA). Это зависит от настройки режима генерации импульсов.
UPDATE Таймер-счетчик сигнализирует об обновлении, когда он достигает значения BOTTOM или TOP, в зависимости от выбранного режима генерации импульсов.

В тех случаях, когда таймер-счетчик синхронизируется внутренними источниками, его называют таймером, а когда внешними (событиями) - счетчиком.

Функциональная схема

Подробная функциональная схема таймера-счетчика без расширений показана на рисунке 14.2.


Рисунок 14.2. Функциональная схема таймера-счетчика

Регистр счетчика (CNT), регистр периода и его буфер (PER и PERBUF), а также регистры сравнения и захвата с их буферами (CCx и CCxBUF) - 16-битные регистры.

В процессе нормальной работы, значение счетчика непрерывно сравнивается с нулем и со значением периода (PER). Это необходимо для выявления достижения счетчиком верхней (TOP) или нижней (BOTTOM) границ счета.

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

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



Поделиться:


Последнее изменение этой страницы: 2016-12-30; просмотров: 287; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.107.96 (0.044 с.)