Базы данныхИнтернетКомпьютерыОперационные системыПрограммированиеСетиСвязьРазное
Поиск по сайту:
Подпишись на рассылку:

Назад в раздел

Подсистема прерываний





Untitled




Подсистема прерываний

После появления запроса, прерывания от которого разрешены,
процессор по окончанию текущего программного цикла записывает в стек
адрес следующей команды прерываемой программы. На счетчик адреса
команд загружается адрес начала программы обслуживания прерываний. В
микроконтроллерах семейства 8051 для программ обслуживания зафиксированы
постоянные начальные адреса ( см. далее таблицу). Если в системе возможно
обслуживание нескольких прерываний, то программы обслуживания должны
"обходить" участки программной памяти, зафиксированные как начальные
участки программ обслуживания других прерываний (используется команда
JMP). Всякая программа обслуживания прерываний должна оканчиваться
командой RETI (возврат из прерываний). Это команда не только
восстанавливает из стека состояние счетчика команд, соответствующее
моменту начала обслуживания прерываний (как и команда возврата из
подпрограмм RET), но и разрешает прерывания равного и низших приоритетов.
Всякая прерывающая программа должна обеспечить сохранение состояния
прерываемой программы.
Допускаются вложенные прерывания - то есть программа обслуживания запроса
может быть прервана для обслуживания другого запроса, имеющего более
высокий приоритет.
Микроконтороллеры семейства 8051 имеют весьма гибкую систему управления
дисциплиной обслуживания запросов. Дисциплина определяется состоянием
двух регистров управления запросами - регистр масок преваний IE и
регистр приоритетов прерываний IP.
Старший разряд регистра масок ( логическое имя EA либо IE.7) блокирует
любые прерывния. Прочие биты осушествляют индивидуальную блокировку и
разрешения прерываний от различных источников ( 1 соответствует
разрешению 0 - запрету прерываний).
Если регистр приоритетов IP обнулен, до для запросов установлен
следующий порядок приоритетов :
IRO (высший) - TO - IR1 - T1- S_INT ( низший).
Однако,если в регистре IP несколько разрядов установлены в единицу, то
соответствующие запросы получают высший приоритет в сравнении с любыми
запросами, для которых разряды в IR находятся в нулевом состоянии.
Приоритеты запросов среди отмеченных одинаковым признаком
приоритетности ( например единицами) порядок приоритетов соответствует
вышеприведенномую
Логические имена битов управления и их локализация в соответствующих
регистрах, а также векторы прерываний для источников запосов сведены в
таблицу:
__________________________________________________________________________Источник запроса бит блокировки бит приоритета начальный адрес
прorраммы обслуживания
__________________________________________________________________________последовательный порт ES ( IE.4) PS (IP.4) 23h
Таймер1 EТ1 ( IE.3) PТ1 (IP.3) 1Вh
Вход INT1 EX1 ( IE.2) PX1 (IP.2) 13h
Таймер 0 EТ0 ( IE.1) РТ0 (IP.1) 0Bh
Вход INT0 EX0 ( IE.0) PX0 (IP.0) 03h
__________________________________________________________________________







  • Главная
  • Новости
  • Новинки
  • Скрипты
  • Форум
  • Ссылки
  • О сайте




  • Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!
     Copyright © 2001-2024
    Реклама на сайте