Федеральное агентство по образованию
Государственное образовательное учреждение высшего профессионального образования
ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ НЕФТЕГАЗОВЫЙ УНИВЕРСИТЕТ
Кафедра “Кибернетических систем ”
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
к лабораторной работе «Организация прерываний в микропроцессорной системе:
программируемый контроллер прерываний КР580ВН59»
по дисциплине «Микропроцессорные системы автоматизации и управления» для студентов очной и заочной форм обучения
Тюмень 2005 г.
Цель работы: Изучение организации многоуровневой системы прерываний с применением программируемого контроллера КР580ВН59.
Большая интегральная схема (БИС) программируемого контроллера прерываний КР580ВН59.
Программируемый контроллер прерываний КР580ВН59 представляет собой законченное устройство, которое позволяет реализовывать 8-уровневую векторную систему прерываний с возможностью маскирования и динамического изменения дисциплины обслуживания. Для перехода к подпрограммам обслуживания прерываний контроллер формирует и подает на ШД процессора код команды CALL. Каскадированием БИС КР580ВН59 число обслуживаемых уровней прерывания может быть увеличено до 64. Контроллер может использоваться как для организации обмена информацией в режиме прерывания, так и для организации программно-управляемого обмена. В первом случае БИС КР580ВН59 на приоритетной основе формирует запрос на прерывание для МП и адрес подпрограммы обслуживания, во втором - процессор считыванием слова состояния контроллера определяет устройство с наивысшим приоритетом, готовое к обмену.
Структура программируемого контроллера прерываний КР580ВН59
![]() |
|
Микросхема КР580ВН59 размещена в пластиковом корпусе с 28 выводами, требует напряжение питания 5В и потребляет мощность 1Вт.
Контроллер позволяет реализовывать приоритетный режим и режим циклического приоритета обслуживания прерываний. При реализации простого приоритетного режима всем восьми входам запросов на прерывание присваиваются фиксированные приоритеты, причем наивысший приоритет присваивается входу IR0, низший IR7. В режиме циклического после окончания обслуживания любого устройства приоритеты входов контроллера циклически изменяются таким образом, что устройству, обслуженному последним, присваивается низший приоритет. Кроме того, при работе в режиме циклического приоритета низший приоритет может быть присвоен программным способом любому входу запроса.
Запросы на прерывания от внешних устройств подаются на входы IR0-IR7 контроллера и запоминаются в регистре запросов. Регистр состояния, каждый разряд которого соответствует одному из входов IR0-IR7, содержит все запросы прерывания, обслуживаемые в текущий момент. Регистр маски содержит единицы в разрядах, соответствующих маскируемым в настоящий момент входам запросов. Запросы на прерывания по любому входу могут быть поданы в потенциальной или импульсной форме. Однако каждый последующий запрос на прерывание воспринимается контроллером только после выполнения подпрограммы обслуживания текущего запроса по данному входу и сброса соответствующего разряда регистра состояния, что осуществляется программным способом (специальной командой). Установка в единицу того или иного разряда регистра маски блокирует передачу запроса на прерывание. Однако, если через некоторое время после подачи запроса на прерывание маска будет снята программой, запрос будет обслужен.
Программирование контроллера осуществляется двумя типами управляющих слов: управляющими словами инициализации (ICW) и операционными управляющими словами (OCW). Ввод команд в контроллер прерываний осуществляется микропроцессором командой OUT (вывод). Однако в системе может быть организовано обращение к контроллеру и как к ячейке памяти. Управляющие слова инициализации подаются перед началом работы контроллера. Они задают стартовые адреса подпрограмм обслуживания прерываний, расстояния между соседними стартовыми адресами и указывают, если необходимо, на наличие других контроллеров в системе. Операционные управляющие слова служат для оперативного изменения режимов обслуживания прерываний и могут подаваться в любое время в процессе работы контроллера.
Процедура инициализации заключается в последовательном вводе в контроллер управляющих слов инициализации (ICW1 и ICW2). Если система содержит несколько контроллеров прерываний, для каждого из них вслед за ICW1 и ICW2 вводится третье управляющее слово ICW3, которое определяет соподчиненность контроллеров. Перед проведением инициализации прием прерываний микропроцессором должен быть запрещен с помощью команды DI (запретить прерывание).
Управление режимами работы контроллеров, изменение характера обслуживания, управление маскированием прерываний осуществляется операционными управляющими словами (OCW1, OCW2, OCW3).
Таблица 1 Сигналы управления контроллера прерываний КР580ВН59
Обозначение | Наименование | Функциональное назначение и условия возникновения |
Сигналы управления записью / считыванием | ||
RD | Запись (входной) | Запись в БИС управляющих слов |
WR | Чтение (входной) | Считывание из БИС содержимого внутренних регистров |
CS | Выбор микросхемы (входной) | Формируется при определенной комбинации сигналов на ША (1-15). Осуществляет подключение ШД (0-7) БИС к шине данных системы. При отсутствии сигнала выводы ШД (0-7) БИС находятся в состоянии с высоким выходным сопротивлением |
AO | Адрес (входной) | Адресация регистров |
Сигналы управления прерыванием | ||
IR0-IR7 | Запросы на прерывание (входные) | Запросы на прерывание от внешних устройств |
INT | Запрос на прерывание (выходной) | Запрос на прерывание, выдаваемый контроллером на МП |
INTA | Разрешение прерывания | После поступления этого сигнала от МП контроллер осуществляет ввод в МП команды CALL |
Сигналы управления каскадированием | ||
SP | Ведомый (входной) | Высокий уровень, если контроллер является ведущим, низкий уровень – если ведомым |
GAS0-GAS2 | Каскадирование | Сигналы GAS0-GAS2 являются выходными, если контроллер является ведущим (SP=1), и входными, если – подчиненным (SP=0). Значения сигналов GAS0-GAS2ведущего контроллера, подаваемые на входы GAS0-GAS2 подчиненных, указывают подчиненный контроллер, который формирует и выдает на МП адрес своей подпрограммы обслуживания |
Управляющие слова инициализации КР580ВН59
ICW1
|
![]()
![]()
![]()
![]()
![]()
![]()
![]()
|
| |
![]() | |
![]() |
ICW2
|
|
![]() |
ICW3 (для ведущего)
|
|
![]()
![]()
![]() |
ICW3 (для ведомого)
|
| ![]() | |
Операционные управляющие слова КР580ВН59
OCW1
|
|
![]() |
OCW2
|
![]()


![]()


![]()
![]()
![]()
![]()
|

|
|
| ||
| |||
| |||
|
OCW3
|
|

Рис. 3б
Для задания простого приоритетного режима не требуется никаких дополнительных команд, кроме команд инициализации. После приема микропроцессором запроса на прерывание INT и выдачи сигнала разрешения прерываний INTA триггер разрешения прерываний микропроцессора сбрасывается, запрещая тем самым прием прерываний. Поэтому для организации многоуровневой системы прерываний необходимо выполнить программную установку этого триггера командой ЕI (разрешить прерывание) МП.
Об окончании выполнения подпрограммы обслуживания каждого запроса на прерывание МП должен сообщать контроллеру с помощью OCW2. При этом осуществляется сброс либо указанного в команде разряда регистра состояния контроллера, либо разряда, соответствующего обслуженному прерыванию. Для реализации многоуровневой системы прерываний каждая из подпрограмм обслуживания должна иметь определенную структуру. Структура подпрограммы показана на рис.4.
Список литературы
1. Большие интегральные схемы запоминающих устройств: Справочник/ под ред. и . - М.: Радио и связь, 1990. - 288 с.
2. и др. Микропроцессоры. – Киев: Техника, 1986. –
278 с., ил. – Библиогр.: с. 277.
3. , Cтепанов ЭВМ и микроЭВМ. Основы организации: Справочник/Под ред. . - М.: Радио и связь, 1991. - 320 c.
4. , Мамзелев устройства и микропроцессорные системы: Учебник для техникумов связи. - М.: Радио и связь, 1987. - 400 с.
5. Калабеков и их применение в системах передачи и обработки сигналов: Учебное пособие для вузов. - М.: Радио и связь, 1988. - 368 с.
6. Коффрон Дж. Технические средства микропроцессорных систем: Практический курс. Пер. с англ. - М.: Мир, 1983. - 344 с.
7. Микропроцессоры: в 3-х кн. Кн.1 Архитектура и проектирование микроЭВМ. Организация вычислительных процессов: Учебн. для втузов/Под ред. . - М.: Высш. шк., 1986. - 495 c.
8. Микропроцессоры: Курс и упражнения/Пер с англ., под ред. . - М.: Энергоатомиздат, 1987. - 336 c.
9. , Дианов средства и системы. - М.: Радио и связь, 1989.









