Контроллер прерываний: различия между версиями

Материал из MIK32 микроконтроллер
(init)
(нет различий)

Версия от 19:59, 10 февраля 2022

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

Важный момент

Контроллер прерываний не является векторным, при возникновении прерывания из любого источника он всегда вызовет один обработчик.

Обратите внимание

Для работы контроллера прерываний требуется следующее:

  • Включить тактирование EPIC на шине APB_M (в блоке Power Manager);
  • Разрешить прерывания по необходимым линиям в блоке EPIC (контроллер прерываний);
  • Разрешить аппаратные прерывания (установить соответствующие регистры состояния в ядре).

В периферийных блоках также требуется разрешить прерывания по определенным событиям.

Пример обработки прерывания:

https://disk.yandex.ru/d/tpft5MKx1UggXA