Микропроцессоры и микроконтроллеры

 
 
 
«Maybe 'just one little global variable' isn't too unmanageable, but that style leads to code that is useless except to its original programmer»
Bjarne Stroustrup
Русский | Українська


Микропроцессоры и микроконтроллеры :: Принципы работы микропроцессоров :: Особенности построения процедур обработки прерываний

Особенности построения процедур обработки прерываний

Процедуры обработки прерывания имеют некоторую специфику по сравнению с обычными процедурами. Поскольку обработка прерывания выполняется в случайные моменты времени по отношению к основной программе, в начале процедуры обработки прерывания следует сохранить в стеке содержимое тех регистров процессора, которые используются в данной процедуре. Эти действия можно выполнить при помощи нескольких команд PUSH <регистр>. В конце процедуры должно быть восстановлено содержимое регистров путем использования команд POP <регистр>.

Как правило, аппаратные схемы процессора блокируют вложенную обработку одного и того же прерывания. Для снятия блокировки обработанного прерывания рекомендуется завершать процедуры обработки специальной командой возврата (RETIили IRET в разных моделях МП). Вопросы, связанные с проектированием системы обработки прерываний и некоторыми особенностями обработки прерываний в специализированных вычислителях, будут подробнее рассмотрены далее.