Прерывания

Иногда микропроцессорная система должна реагировать на редкие и непредсказуемые события. Вернемся к аналогии с предприятием. Предположим, что могут произойти какие-то экстремальные события. Например, каждый может быть оторван от работы пожарной тревогой. После того, как пожар потушен и его последствия ликвидированы, люди возвращаются к прежней работе.

Аналогичные события могут произойти и в микропроцессорной системе. Например, рассмотрим вольтметр со встроенным МП, который иметр на передней панели кнопку калибровки. Когда нажимается эта кнопка, работа МП прерывается и МП переходит к подпрограмме калибровки. После выполнения калибровки управление возвращается к основной программе, которая была прервана. Эти действия называются прерываниями. Кристалл МП имеет вход, который при­нимает прерывания. Сигнал высокого уровня на этом входе вызывает переход процессора к специальной под­программе прерывания. Эта подпрограмма выполняет задачу, требуемую прерывающим устройством. Команда, стоящая в конце подпрограммы прерывания, возвращает МП к прерванной программе.

Иногда нужно, чтобы МП не реагировал на прерывание. Поэтому пре­рывание может быть запрещено программой. Существуют две команды: ЕI - разрешить прерывание, DI -запретить прерывание.

МП КР580ИК80 реагирует на прерывание следующим образом. Не увеличивая содержимого счетчика адреса, он принимает информацию с шины данных, и в зависимости от кода, установленного на шине данных, начинает выполнять программу с определенного адреса в соответствии с табл.4.

Таблица 4 Таблица прерываний

Номер прерывания Код на шине данных Адрес, с кото рого начинает ся программа обработки прерывания
RST0 С7  
RST 1 СF  
RST 2 D7  
RST З DF  
RST 4 Е7  
RST 5 ЕF  
RST 6 F7  
RST 7 FF  

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

В "Микролаб" прерывание используется для организации шагового режима. Подробнее это будет описано в последующих разделах.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: