реклама на сайте
подробности

 
 
> blackfin 533 и прерывания
Lmx2315
сообщение Apr 3 2016, 18:06
Сообщение #1


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



..Добрый вечер уважаемые - детский вопрос.
Если у меня BF533 и НЕвложенные прерывания , то пока работает обработчик какого-либо прерывания, другие в этот момент сработавшие - пропадают? Или срабатывают позже?
Спасибо.


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
dxp
сообщение Apr 4 2016, 05:20
Сообщение #2


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (Lmx2315 @ Apr 4 2016, 00:06) *
..Добрый вечер уважаемые - детский вопрос.
Если у меня BF533 и НЕвложенные прерывания , то пока работает обработчик какого-либо прерывания, другие в этот момент сработавшие - пропадают? Или срабатывают позже?
Спасибо.

Что значит "НЕвложенные"?

Когда возникает прерывание, если оно разрешено, то в СЕС взводится соответствующий бит в регистре IPEND. Если в регистре IMASK соответствующий бит маскирует этот источник, то запрос (pending) на прерывание так и будет "висеть" в регистре IPEND. Пока маска не будет снята. Надо иметь в виду, что СЕС у фина приоритетный вытесняющий, т.е. если возникает event (прерывание, отмапленное на этот уровень) с более высоким приоритетом, нежели обрабатываемое, то это обрабатываемое будет прервано точно так же, как будто это обычная программа (не обработчик).

Если имеется в виду то, что прерывания отмаплены на один и тот же уровень в CEC, то тогда нового прерывания не возникнет, но его флаг будет установлен. По выходу из обработчика будет переход на обработчик ожидающего прерывания. Флаги прерываний (в отличие от флагов IPEND) должны сбрасываться пользовательской программой.

Вообще, не очень понятна суть вопроса. В документации эти моменты освещены достаточно подробно и однозначно.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Apr 4 2016, 13:19
Сообщение #3


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



..я для себя открыл кроме:
EX_INTERRUPT_HANDLER () ещё и
EX_REENTRANT_HANDLER() - обработчик, и стал бояться что если у меня все обработчики как в первом случае , то есть шанс потерять прерывания, иначе я не понимаю зачем нужен второй тип обработчика.

цитата с просторов:
Цитата
EX_INTERRUPT_HANDLER. В качестве параметра макроса указан текстовый идентификатор, который и будет именем созданной подпрограммы обработчика. Можно также использовать макрос EX_REENTRANT_HANDLER, который в отличие от первого позволяет вложенность прерываний (макрос EX_REENTRANT_HANDLER сразу разрешает внутри себя прерывания, что позволяет выполниться прерываниям с более высоким приоритетом). Подробнее про обработчики прерывания и про вложенность прерываний....


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th August 2025 - 20:49
Рейтинг@Mail.ru


Страница сгенерированна за 0.01374 секунд с 7
ELECTRONIX ©2004-2016