Управляющие слова инициализации.




1. ICW1 – программируется при А0 = 0.

 

А7÷А5 – разряды младшего байта адреса;

D4D3 – фиксированные;

Ф – программирует (определяет) формат младшего байта адреса;

Е – бит, определяющий наличие каскадирования (Е=0 – есть каскадирование; Е=1 – нет каскадирования);

D0 = 0 – фиксированный бит.

1 А7 А6 А5 В2 В1 В0 0 0

Ф: 0 А7 А6 В2 В1 В0 0 0 0

 

В2 В1 В0 – код устройства, выработавшего запрос на прерывание.

Если Ф=1, т.е. формат = 4 – это означает, что начальные адреса подпрограмм обслуживания смежных запросов отстоят друг от друга на 4 адреса. Если Ф=0, т.е. формат = 8 – начальные адреса подпрограмм отстоят друг от друга на 8 адресов.

При загрузке ICW1 контроллер прерываний выполняет следующие действия:

1) Очищает регистр маскирования приоритетов;

2) Присваивает запросу на входе IR7 низший приоритет;

3) Подготавливается к работе регистр запросов;

При наличии каскадирования загрузка слов осуществляется последовательно: сначала в ведущий контроллер, затем в ведомый.

2. ICW2 – загружается при А0 = 1.

Содержит старший байт адреса команды CALL.

3.а) ICW3 загружается при А0 = 1 и при наличии каскадирования.

Ui (0;1) определяет характер подключения выходов ведомых контроллеров к входу ведущего:

1 – выход ведомого соединен со входом Ui ведущего.

Ui

0 - запросы от внешних устройств.

б) ICW3 для ведомого контроллера: программируется три последних бита U0 U1 U2 – они указывают на его адрес в системе.

Операционные управляющие слова.

1. ОCW1 – операционное управляющее слово первого типа. Данное слово загружается при А0 = 1 и его код предполагает признаки (биты), определяющие наличие запретов на входе (1 – блокировка; 0 – обслуживание).

- маска.

Например, М5=1 – это значит, что будет заблокирован вход IR5 контроллера.

2. ОCW2 – операционное управляющее слово второго типа (D4, D3 = 0). Данное слово загружается при А0 = 1 и имеет 5 модификаций, которые указывают вид конца обслуживания прерываний, а также вид установки дна приоритетного кольца:

а) ОCW2а – обычный конец прерываний.

0 0 1 0 0 - - -: код ОCW2а.

При загрузке ОCW2а устанавливается в «0» разряд регистра состояния, соответствующий последнему обслуженному запросу.

б) ОCW2б – специальный конец прерывания.

0 1 1 0 0 В2 В1В0 – задает номер разряда.

При загрузке ОCW2б в «0» устанавливается тот разряд регистра состояния, который указывается в коде В2 В1В0.

в) ОCW2в – операционное управляющее слово для установки приоритетов по последнему обслуженному запросу. При загрузке ОCW2в устанавливается в «0» соответствующий последнему обслуженному запросу разряд регистра состояния и этому же номеру запроса присваивается низший приоритет.

г) ОCW2г.

1 1 1 0 0 В2 В1 В0 – установка приоритетов по указанию с выполнением операций обычного конца прерываний. Дно приоритетного кольца присваивается тому входу, код которого указан в В2 В1 В0.

д) ОCW2д.

1 1 0 0 0 В2 В1 В0 – установка приоритетов по указанию без выполнения операций конца прерываний. Дно приоритетного кольца присваивается входу, код которого указан в В2 В1 В0.

3. ОCW3 – операционное управляющее слово третьего типа. Программируется при А0 = 0. D4 = 0, D3 = 1, D7 – не используется.

Данное слово имеет пять модификаций:

а) ОCW3а – устанавливает режим обслуживания по результату опроса.

При подаче RD это слово прекращает свое действие.

б) ОCW3б – чтение регистра запросов

- 0 0 0 1 0 1 1.

в) ОCW3в – чтение регистра состояния.

- 0 0 0 1 0 1 0.

г) ОCW3г – вход в маскирование.

- 1 1 0 1 0 0 0.

д) ОCW3д – выход из маскирования.

- 1 0 0 1 0 0 0.

Алгоритм программирования PIC:

Начало
Загрузка ICW1
Загрузка ICW2
Каскадирование
Загрузка ICW3
Готов к обслуживанию ………………………... загрузка ОCWi (при необходимости)

Для программиста (пользователя) контроллер прерываний схематично представляет собой два входных/выходных порта (две ячейки памяти, отличающихся адресами по линии А0):

1) При А0=0 по команде OUT загружается ICW1;

2) При А0=1 по команде OUT загружается ICW2.

При наличия каскадирования: А0=1; по команде OUT загружается ICW3.

Такая процедура осуществляется для ведущего и ведомого контроллеров последовательно. Затем контроллер переходит в режим обслуживания.

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-04-14 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: