Блок прерываний EXTI: различия между версиями
Строка 306: | Строка 306: | ||
При чтении - выдает заданный ранее выбор мультиплексора | При чтении - выдает заданный ранее выбор мультиплексора | ||
===== Регистр | ===== Регистр EXTI_INTERRUPT ===== | ||
Смещение: 0x00, Значение после подачи сброса: 0x0000; | Смещение: 0x00, Значение после подачи сброса: 0x0000; | ||
{| class="wikitable" | {| class="wikitable" | ||
Строка 325: | Строка 325: | ||
|17 | |17 | ||
|16 | |16 | ||
|15 | |15 | ||
|14 | |14 | ||
Строка 335: | Строка 331: | ||
|11 | |11 | ||
|10 | |10 | ||
|- | |||
| colspan="22" |Зарезервировано | |||
|} | |||
{| class="wikitable" | |||
|9 | |9 | ||
|8 | |8 | ||
Строка 346: | Строка 346: | ||
|0 | |0 | ||
|- | |- | ||
| | |I9 | ||
| | |I8 | ||
| | |I7 | ||
| | |I6 | ||
| | |I5 | ||
| | |I4 | ||
| | |I3 | ||
| | |I2 | ||
| | |I1 | ||
| | |I0 | ||
|- | |- | ||
|ro | |ro | ||
|ro | |ro | ||
Строка 380: | Строка 368: | ||
|ro | |ro | ||
|} | |} | ||
Биты 31: | Биты 31:10 Зарезервировано | ||
Биты 9:0 '''Iy''' - Биты отвечают за текущее состояние прерываний. | |||
При чтении выдают состояние | |||
При записи - меняют состояние |
Версия от 07:00, 11 апреля 2023
Введение
Обработка прерываний выводов реализована в отдельном модуле. Входные линии трех блоков ввода-вывода подключаются к 8 мультиплексорам формируя 8 линий, для которых формируются прерывания. Каждый мультиплексор управляется независимо, на основе соответствующих бит поля IRQ_LINE_MUX. Схема коммутации представлена в таблице.
Описание модуля
Мультиплексор линий прерываний
Прерывание | Линия_0
Mux[3:0] |
Линия_1
Mux[7:4] |
Линия_2
Mux[11:8] |
Линия_3
Mux[15:12] |
Линия_4
Mux[19:16] |
Линия_5
Mux[23:20] |
Линия_6
Mux[27:24] |
Линия_7
Mux[31:28] |
---|---|---|---|---|---|---|---|---|
MUX [i]=0 | GPIO_0.0 | GPIO_0.1 | GPIO_0.2 | GPIO_0.3 | GPIO_0.4 | GPIO_0.5 | GPIO_0.6 | GPIO_0.7 |
MUX [i]=1 | GPIO_0.8 | GPIO_0.9 | GPIO_0.10 | GPIO_0.11 | GPIO_0.12 | GPIO_0.13 | GPIO_0.14 | GPIO_0.15 |
MUX [i]=2 | GPIO_1.0 | GPIO_1.1 | GPIO_1.2 | GPIO_1.3 | GPIO_1.4 | GPIO_1.5 | GPIO_1.6 | GPIO_1.7 |
MUX [i]=3 | GPIO_1.8 | GPIO_1.9 | GPIO_1.10 | GPIO_1.11 | GPIO_1.12 | GPIO_1.13 | GPIO_1.14 | GPIO_1.15 |
MUX [i]=4 | GPIO_2.0 | GPIO_2.1 | GPIO_2.2 | GPIO_2.3 | GPIO_2.4 | GPIO_2.5 | GPIO_2.6 | GPIO_2.7 |
MUX [i]=5 | GPIO_0.4 | GPIO_0.5 | GPIO_0.6 | GPIO_0.7 | GPIO_0.0 | GPIO_0.1 | GPIO_0.2 | GPIO_0.3 |
MUX [i]=6 | GPIO_0.12 | GPIO_0.13 | GPIO_0.14 | GPIO_0.15 | GPIO_0.8 | GPIO_0.9 | GPIO_0.10 | GPIO_0.11 |
MUX [i]=7 | GPIO_1.4 | GPIO_1.5 | GPIO_1.6 | GPIO_1.7 | GPIO_1.0 | GPIO_1.1 | GPIO_1.2 | GPIO_1.3 |
MUX [i]=8 | GPIO_1.12 | GPIO_1.13 | GPIO_1.14 | GPIO_1.15 | GPIO_1.8 | GPIO_1.9 | GPIO_1.10 | GPIO_1.11 |
MUX [i]=9 | GPIO_2.4 | GPIO_2.5 | GPIO_2.6 | GPIO_2.7 | GPIO_2.0 | GPIO_2.1 | GPIO_2.2 | GPIO_2.3 |
MUX [i]=10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Описание регистров
Регистр EXTI_SATE
Смещение: 0x00, Значение после подачи сброса: 0x0000;
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 |
S15 | S14 | S13 | S12 | S11 | S10 | S9 | S8 | S7 | S6 | S5 | S4 | S3 | S2 | S1 | S0 |
ro | ro | ro | ro | ro | ro | ro | ro | ro | ro | ro | ro | ro | ro | ro | ro |
Биты 31:16 Зарезервировано
Биты 15:0 Sy - Биты отвечают за текущее состояние выводов линий после мультиплексоров. Только чтение.
Регистр EXTI_IRQ_LINE_MUX
Смещение: 0x04, Значение после подачи сброса: 0x00000000;
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
Mux_7 | Mux_6 | Mux_5 | Mux_4 | ||||||||||||
rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Mux_3 | Mux_2 | Mux_1 | Mux_0 | ||||||||||||
rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw |
Биты 2y:2y+3 Mux_y[0:3]: Управление мультиплексорами.
При записи меняет выбор мультиплексора на заданный
При чтении - выдает заданный ранее выбор мультиплексора
Регистр EXTI_INTERRUPT
Смещение: 0x00, Значение после подачи сброса: 0x0000;
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 |
I9 | I8 | I7 | I6 | I5 | I4 | I3 | I2 | I1 | I0 |
ro | ro | ro | ro | ro | ro | ro | ro | ro | ro |
Биты 31:10 Зарезервировано
Биты 9:0 Iy - Биты отвечают за текущее состояние прерываний.
При чтении выдают состояние
При записи - меняют состояние