В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

 
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации





Главная страница > Обзоры по типам > Микроконтроллеры > ARM
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации


24.8 Контроллер прерываний AIC. Интерфейс пользователя

24.8.1 Базовый адрес

Контроллер прерываний в адресном пространстве расположен по 0xFFFF F000. для него отведено 4-кБайта адресного пространства. Это позволяет задать векторы прерываний, обеспечивая поддержку ±4-кБайтного смещения для загрузки/хранения команд доступных через программный счетчик PC.

Таблица 24-2. Контроллер прерываний AlC. Описание регистров

Смещение Регистр Обозначение Тип доступа Значение после сброса
0000 Регистр источника прерывания 0 AIC_SMR0 Чтение/Запись 0x0
0x04 Регистр источника прерывания 1 AIC_SMR1 Чтение/Запись 0x0
- - - - -
0x7C Регистр источника прерывания 31 AIC_SMR31 Чтение/Запись 0x0
0x80 Вектор прерывания 0 AIC_SVR0 Чтение/Запись 0x0
0x84 Вектор прерывания 1 AIC_SVR1 Чтение/Запись 0x0
- - - - -
0xFC Вектор прерывания 31 AIC_SVR31 Чтение/Запись 0x0
0x100 Регистр вектора прерывания AIC_IVR Только Чтение 0x0
0x104 Регистр вектора быстрого прерывания AIC_FVR Только Чтение 0x0
0x108 Регистр статуса прерывания AIC_ISR Только Чтение 0x0
0x10C Регистр обрабатываемого прерывания AIC_IPR Только Чтение 0x0(1)
0x110 Регистр маски прерывания AIC_IMR Только Чтение 0x0
0x114 Регистр статуса прерываний ядра AIC_CISR Только Чтение 0x0
0x118 Зарезервирован - - -
0x11C Зарезервирован - - -
0x120 Регистр разрешения прерываний AIC_IECR Только запись -
0x124 Регистр запрета прерываний AIC_IDCR Только запись -
0x128 Регистр сброса прерываний AIC_ICCR Только запись -
0x12C Регистр установки прерываний AIC_ISCR Только запись -
0x130 Регистр окончания прерывания AIC_EOICR Только запись -
0x134 Регистр вектора случайных прерываний AIC_SPU Чтение/Запись 0x0
0x138 Регистр управления отладки AIC_DCR Чтение/Запись 0x0
0x13C Зарезервирован - - -
0x140 Регистр разрешения быстрых прерываний AIC_FFER Только запись -
0x144 Регистр запрета быстрых прерываний AIC_FFDR Только запись -
0x148 Регистр статуса быстрых прерываний AIC_FFSR Только Чтение 0x0

Примечание: 1. Значение этого регистра после сброса зависит от приоритета источника внешнего прерывания. Остальные источники после сброса очищаются, кроме неотработанного.

24.8.2 Регистр источника прерывания

Обозначение регистра: AIC_SMR0.. AIC_SMR31

Тип доступа: Чтение/Запись

Значение после сброса: 0x0

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- SRCTYPE - - PRIOR
  • PRIOR: Приоритет прерывания

Приоритет прерывания устанавливается для всех источников прерываний, кроме источника FIQ (0-ой источник).

Приоритет задается между 0 (самый низкий ) и 7 (самый высокий).

В регистре для FIQ источника приоритет не используется.

  • SRCTYPE: Тип источника прерывания

Для внутренних источников прерывания активный уровень источника прерывания (по уровню или по фронту) не задается.

SRCTYPE Источники внутренних прерываний Источники внешних прерываний
0 0 Высокий уровень Низкий уровень
0 1 Положительный фронт Отрицательный фронт
1 0 Высокий уровень Высокий уровень
1 1 Положительный фронт Положительный фронт

24.8.3 Вектор прерывания

Обозначение регистра: AIC_SVR0..AIC_SVR31

Тип доступа: Чтение/Запись

Значение после сброса: 0x0

31 30 29 28 27 26 25 24
VECTOR
23 22 21 20 19 18 17 16
VECTOR
15 14 13 12 11 10 9 8
VECTOR
7 6 5 4 3 2 1 0
VECTOR
  • VECTOR: Вектор прерывания

В эти регистры записываются адреса соответствующих процедур обработки прерывания для каждого источника.

24.8.4 Регистр вектора прерывания

Обозначение регистра: AIC_IVR

Тип доступа: Только Чтение

Значение после сброса: 0x0

31 30 29 28 27 26 25 24
IRQV
23 22 21 20 19 18 17 16
IRQV
15 14 13 12 11 10 9 8
IRQV
7 6 5 4 3 2 1 0
IRQV
  • IRQV: Регистр вектора прерывания

Регистр вектора прерывания содержит вектор, программируемый пользователем в Регистре источника прерывания в соответствии с текущим источником прерывания.

Регистр источника прерывания индексируется, используя номер текущего прерывания при прочтении Регистра вектора прерывания. При отсутствии текущего прерывания чтение Регистра вектора прерывания дает значение, сохраненное в регистре вектора случайных прерываний AIC_SPU.

24.8.5 Регистр вектора быстрого прерывания

Обозначение регистра: AIC_FVR

Тип доступа: Только Чтение

Значение после сброса: 0x0

31 30 29 28 27 26 25 24
FIQV
23 22 21 20 19 18 17 16
FIQV
15 14 13 12 11 10 9 8
FIQV
7 6 5 4 3 2 1 0
FIQV
  • FIQV: Регистр вектора быстрого прерывания

Регистр вектора быстрого прерывания содержит вектор, программируемый пользователем в 0-ой вектор прерывания При отсутствии быстрого прерывания чтение Регистра вектора прерывания дает значение сохраненное в регистре вектора случайных прерываний AIC_SPU.

24.8.6 Регистр статуса прерывания

Обозначение регистра: AIC_ISR

Тип доступа: Только Чтение

Значение после сброса: 0x0

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - IRQID
  • IRQID: Идентификатор текущего прерывания

Регистр статуса прерывания возвращает номер источника текущего прерывания.

24.8.7 Регистр обрабатываемого прерывания

Обозначение регистра: AIC_IPR

Тип доступа: Только Чтение

Значение после сброса: 0x0

31 30 29 28 27 26 25 24
PID31 PID30 PID29 PID28 PID27 PID26 PID25 PID24
23 22 21 20 19 18 17 16
PID23 PID22 PID21 PID20 PID19 PID18 PID17 PID16
15 14 13 12 11 10 9 8
PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8
7 6 5 4 3 2 1 0
PID7 PID6 PID5 PID4 PID3 PID2 SYS FIQ
  • FIQ, SYS, PID2-PID31: Обрабатываемое прерывание
0 = Соответствующее прерывание не обрабатывается.
1 = Соответствующее прерывание обрабатывается.

24.8.8 Регистр маски прерывания

Обозначение регистра: AIC_IMR

Тип доступа: Только Чтение

Значение после сброса: 0x0

31 30 29 28 27 26 25 24
PID31 PID30 PID29 PID28 PID27 PID26 PID25 PID24
23 22 21 20 19 18 17 16
PID23 PID22 PID21 PID20 PID19 PID18 PID17 PID16
15 14 13 12 11 10 9 8
PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8
7 6 5 4 3 2 1 0
PID7 PID6 PID5 PID4 PID3 PID2 SYS FIQ
  • FIQ, SYS, PID2-PID31: Маска прерывание
0= Соответствующее прерывание запрещено.
1= Соответствующее прерывание разрешено.

24.8.9 Регистр статуса прерываний ядра

Обозначение регистра: AIC_CISR

Тип доступа: Только Чтение

Значение после сброса: 0x0

      28 27 26 25 24
      - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - - NIRQ NFIQ
  • NFIQ: Статус NFIQ
0 = nFIQ сигнал неактивен.
1 = nFIQ сигнал активен.
  • NIRQ: Статус NIRQ
0 = nIRQ сигнал неактивен.
1 = nIRQ сигнал активен.

24.8.10 Регистр разрешения прерываний

Обозначение регистра: AIC_IECR

Тип доступа: Только Запись

31 30 29 28 27 26 25 24
PID31 PID30 PID29 PID28 PID27 PID26 PID25 PID24
23 22 21 20 19 18 17 16
PID23 PID22 PID21 PID20 PID19 PID18 PID17 PID16
15 14 13 12 11 10 9 8
PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8
7 6 5 4 3 2 1 0
PID7 PID6 PID5 PID4 PID3 PID2 SYS FIQ
  • FIQ, SYS, PID2-PID31: Разрешение прерывания
0= Нет влияния.
1= Разрешить соответствующее прерывание.

24.8.11 Регистр запрета прерываний

Обозначение регистра: AIC_IDCR

Тип доступа: Только Запись

31 30 29 28 27 26 25 24
PID31 PID30 PID29 PID28 PID27 PID26 PID25 PID24
23 22 21 20 19 18 17 16
PID23 PID22 PID21 PID20 PID19 PID18 PID17 PID16
15 14 13 12 11 10 9 8
PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8
7 6 5 4 3 2 1 0
PID7 PID6 PID5 PID4 PID3 PID2 SYS FIQ
  • FIQ, SYS, PID2-PID31: Запрет прерывания
0= Нет влияния.
1= Запретить соответствующее прерывание.

24.8.12 Регистр сброса прерываний

Обозначение регистра: AIC_ICCR

Тип доступа: Только Запись

31 30 29 28 27 26 25 24
PID31 PID30 PID29 PID28 PID27 PID26 PID25 PID24
23 22 21 20 19 18 17 16
PID23 PID22 PID21 PID20 PID19 PID18 PID17 PID16
15 14 13 12 11 10 9 8
PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8
7 6 5 4 3 2 1 0
PID7 PID6 PID5 PID4 PID3 PID2 SYS FIQ
  • FIQ, SYS, PID2-PID31: Сброс прерывания
0= Нет влияния.
1= Сброс соответствующего прерывания.

24.8.13 Регистр установки прерываний

Обозначение регистра: AIC_ISCR

Тип доступа: Только Запись

31 30 29 28 27 26 25 24
PID31 PID30 PID29 PID28 PID27 PID26 PID25 PID24
23 22 21 20 19 18 17 16
PID23 PID22 PID21 PID20 PID19 PID18 PID17 PID16
15 14 13 12 11 10 9 8
PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8
7 6 5 4 3 2 1 0
PID7 PID6 PID5 PID4 PID3 PID2 SYS FIQ
  • FIQ, SYS, PID2-PID31: Установка прерывания
0= Нет влияния.
1= Установка соответствующего прерывания.

24.8.14 Регистр окончания прерывания

Обозначение регистра: AIC_EOICR

Тип доступа: Только Запись

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - - - -

Регистр окончания прерывания используется процедурой обработки прерывания для обозначения окончания обработки прерывания. Можно записать любое значение, так как требуется только произвести запись в этот регистр для сигнализации окончания обработки прерывания.

24.8.15 Регистр вектора случайного прерывания

Обозначение регистра: AIC_FVR

Тип доступа: Чтение/Запись

Значение после сброса: 0x0

31 30 29 28 27 26 25 24
SIQV
23 22 21 20 19 18 17 16
SIQV
15 14 13 12 11 10 9 8
SIQV
7 6 5 4 3 2 1 0
SIQV
  • SIQV: Регистр вектора случайного прерывания

В этот регистр можно записать адрес процедуры обработки случайного прерывания. Записанное значение возвращается в регистр AIC_IVR в случае общего случайного прерывания и в регистр AIC_FVR в случае быстрого случайного прерывания.

24.8.16 Регистр управления отладки

Обозначение регистра: AIC_DEBUG

Тип доступа: Чтение/Запись

Значение после сброса: 0x0

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - - GMSK PROT
  • PROT: Защищенный режим
0 = Защищенный режим запрещен.
1 = Защищенный режим разрешен.
  • GMSK: Общая маска
0 = Сигналы nIRQ и nFIQ управляются контроллером прерываний.
1 = Сигналы nIRQ и nFIQ подключены к неактивным состояниям.

24.8.17 Регистр разрешения эмуляции быстрого прерывания

Обозначение регистра: AIC_FFER

Тип доступа: Только Запись

31 30 29 28 27 26 25 24
PID31 PID30 PID29 PID28 PID27 PID26 PID25 PID24
23 22 21 20 19 18 17 16
PID23 PID22 PID21 PID20 PID19 PID18 PID17 PID16
15 14 13 12 11 10 9 8
PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8
7 6 5 4 3 2 1 0
PID7 PID6 PID5 PID4 PID3 PID2 SYS -
  • SYS, PID2-PID31: Разрешение эмуляции быстрого прерывания
0= Нет влияния.
1= Разрешение эмуляции быстрого прерывания для соответствующего прерывания

24.8.18 Регистр запрета эмуляции быстрого прерывания

Обозначение регистра: AIC_FFDR

Тип доступа: Только Запись

31 30 29 28 27 26 25 24
PID31 PID30 PID29 PID28 PID27 PID26 PID25 PID24
23 22 21 20 19 18 17 16
PID23 PID22 PID21 PID20 PID19 PID18 PID17 PID16
15 14 13 12 11 10 9 8
PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8
7 6 5 4 3 2 1 0
PID7 PID6 PID5 PID4 PID3 PID2 SYS -
  • SYS, PID2-PID31: Запрет эмуляции быстрого прерывания
0= Нет влияния.
1= Запрет эмуляции быстрого прерывания для соответствующего прерывания

24.8.19 Регистр статуса эмуляции быстрого прерывания

Обозначение регистра: AIC_FFSR

Тип доступа: Только Чтение

31 30 29 28 27 26 25 24
PID31 PID30 PID29 PID28 PID27 PID26 PID25 PID24
23 22 21 20 19 18 17 16
PID23 PID22 PID21 PID20 PID19 PID18 PID17 PID16
15 14 13 12 11 10 9 8
PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8
7 6 5 4 3 2 1 0
PID7 PID6 PID5 PID4 PID3 PID2 SYS -
  • SYS, PID2-PID31: Статус эмуляции быстрого прерывания
0= Режим эмуляции быстрого прерывания запрещен для соответствующего прерывания.
1= Режим эмуляции быстрого прерывания разрешен для соответствующего прерывания


<--Предыдущая страница Оглавление Следующая страница -->