Различать задачу и прерывание - PullRequest
0 голосов
/ 20 апреля 2011

В моем коде есть точка, где мне нужно проверить, пришла ли программа сюда из прерывания или задачи. Я использую SMX. Любой, кто использовал SMX, может ответить на его вопрос. Я не получил достаточно информации из документов. Итак, в основном я хочу некоторую переменную / параметр, чтобы различать ISR и задачу.

1 Ответ

1 голос
/ 20 апреля 2011

Конечно, путь к коду уникален. Я не знаю о SMX, но, конечно, он не отменяет обычный механизм, в соответствии с которым функция, вызываемая прерыванием, имеет специальную обработку, чтобы устанавливать кадр стека, сохранять регистры и, возможно, устанавливать статическую ссылку на переменные модуля. В таких случаях очевидным средством проверки ISR по сравнению с другим маршрутом является то, что ISR устанавливает флаг при входе и очищает его при выходе.

...