Учебники

Микроконтроллеры — 8051 Прерывания

Прерывания — это события, которые временно приостанавливают основную программу, передают управление внешним источникам и выполняют их задачу. Затем он передает управление основной программе, где он остановился.

8051 имеет 5 сигналов прерывания, то есть INT0, TFO, INT1, TF1, RI / TI. Каждое прерывание можно включить или отключить, установив биты регистра IE, и всю систему прерываний можно отключить, очистив бит EA того же регистра.

IE (Разрешение прерывания) Регистрация

Этот регистр отвечает за включение и отключение прерывания. Для регистра EA установлено значение 1 для разрешения прерываний и значение 0 для отключения прерываний. Последовательность битов и их значения показаны на следующем рисунке.

IE Регистрация

Е.А. IE.7 Это отключает все прерывания. Когда EA = 0, прерывание не будет подтверждено, а EA = 1 разрешает прерывание по отдельности.
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), как показано на следующем рисунке.

  • Прерывание с низким приоритетом может быть прервано только прерыванием с высоким приоритетом, но не может быть прервано другим прерыванием с низким приоритетом.

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

  • Если запросы с одинаковыми уровнями приоритета принимаются одновременно, то внутренняя последовательность опроса определяет, какой запрос должен быть обслужен.

Прерывание с низким приоритетом может быть прервано только прерыванием с высоким приоритетом, но не может быть прервано другим прерыванием с низким приоритетом.

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

Если запросы с одинаковыми уровнями приоритета принимаются одновременно, то внутренняя последовательность опроса определяет, какой запрос должен быть обслужен.

Регистр IP

IP.6 Зарезервировано для будущего использования.
IP.5 Зарезервировано для будущего использования.
PS IP.4 Он определяет уровень приоритета прерывания последовательного порта.
PT1 IP.3 Он определяет прерывание по таймеру 1 приоритета.
PX1 IP.2 Он определяет уровень приоритета внешнего прерывания.
PT0 IP.1 Он определяет уровень приоритета прерывания timer0.
PX0 IP.0 Он определяет внешнее прерывание с нулевым уровнем приоритета.

TCON Зарегистрироваться

Регистр TCON определяет тип внешнего прерывания для микроконтроллера.