Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Система прерываний микроконтроллера MCS51. Работа со стеком.




5 источников прерываний (2 внешних, 2 внутренних от таймеров и 1 от последовательного канала)

Запросы в порядке убывания приоритета: INT0, TF0, INT1, TF1, (RI, TI).

Внешние прерывания и могут быть вызваны либо уровнем, либо переходом сигнала из 1 в 0 на входах МК51 в зависимости от значений управляющих битов IT0 и IT1 в регистре TCON. От внешних прерываний устанавливаются флаги IE0 и IE1 в регистре TCON, которые инициируют вызов соответствующей подпрограммы обслуживания прерывания. Сброс этих флагов выполняется аппаратно только в том случае, если прерывание было вызвано по перепаду сигнала. Если же прерывание вызвано уровнем входного сигнала, то сбросом флага IE управляет соответствующая подпрограмма обслуживания прерывания путем воздействия на источник прерывания с целью снятия им запроса.

Флаги запросов прерывания от таймеров TF0 и TF1 сбрасываются автоматически при передаче управления подпрограмме обслуживания. Флаги запросов прерывания RI и ТI устанавливаются блоком управления УАПП (универсальный асинхронный приемопередатчик) аппаратно, но сбрасываться должны программой.

Прерывания могут быть вызваны или отменены программой, так как все перечисленные флаги программно-доступны и могут быть установлены/сброшены программой с тем же результатом, как если бы они были установлены/сброшены аппаратурными средствами.

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

Регистр масок прерывания IE:

Символ Позиция Имя и назначение
ЕА IE.7 Снятие блокировки прерываний
---- IE.6 Не используются
---- IE.5
ES IE.4 Бит разрешения прерывания от УАПП
ET1 IE.3 Бит разрешения прерывания от таймера 1
EX1 IE.2 Бит разрешения внешнего прерывания 1
ET0 IE.1 Бит разрешения прерывания от таймера 0
EX0 IE.0 Бит разрешения внешнего прерывания 0

 

Регистр приоритетов прерываний IP:

Символ Позиция Имя и назначение
---- IP.7 IP.6 IP.5 Не используются
PS IP.4 Бит приоритета УАПП.
PT1 IP.3 Бит приоритета таймера 1
PX1 IP.2 Бит приоритета внешнего прерывания 1
PT0 IP.1 Бит приоритета таймера 0
PX0 IP.0 Бит приоритета внешнего прерывания 0

Регистр управления таймерами TCON:

Символ Позиция Имя и назначение
  TCON.7 Пусковый бит таймера 1
TF1 TCON.6 Флаг переполнения таймера 1
  TCON.5 Пусковый бит таймера 0
TF0 TCON.4 Флаг переполнения таймера 0
IE1 TCON.3  
IT1 TCON.2  
IE0 TCON.1  
IT0 TCON.0  

Регистр управления последовательным каналом SCON

Символ Позиция Имя и назначение
  SCON.7  
  SCON.6  
  SCON.5  
  SCON.4  
  SCON.3  
  SCON.2  
TI SCON.1  
RI SCON.0  

 

При выполнении прерывания в стек помещается только содержимое счетчика команд (PC). Затем в счетчик команд загружается адрес вектора соответствующей подпрограммы обслуживания. По адресу вектора должна быть расположена команда безусловной передачи управления (JMP) к начальному адресу подпрограммы обслуживания прерывания. Подпрограмма обслуживания в случае необходимости должна начинаться командами записи в стек (PUSH) слова состояния программы (PSW), аккумулятора, расширителя, указателя данных и т.д. и заканчиваться командами восстановления из стека (POP). Подпрограммы обслуживания прерывания обязательно завершаются командой RETI, по которой в счетчик команд перезагружается из стека сохраненный адрес возврата в основную программу. Команда RET также возвращает управление прерванной основной программе, но при этом не снимает блокировку прерываний, что приводит к необходимости иметь программный механизм анализа окончания процедуры обслуживания данного прерывания.

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных