Назад
Исходное состояние ППА устанавливается системным
сигналом RESET, который переводит все информационные выходы
адаптера в третье состояние.
Для выбора режима в регистр управляющего слова необходимо
записать управляющее слово режима (рисунок 4.9.).
D7
D6
D5
D4
D3
D2
D1
D0
1 - Ввод
0 - Вывод
PC0 - PC3
1 - Ввод
0 - Вывод
PB0 - PB7
1 - Режим 1
0 - Режим 0
Выбор режима
1 - Ввод
0 - Вывод
PC4 - PC7
1 - Ввод
0 - Вывод
PA0 - PA7
00 - Режим 0
01 - Режим 1
10 - Режим 2
11 - Режим 2
Выбор режима
1 - Задание режимов
Рисунок 4.9 Управляющее слово задания режима
Любой из перечисленных режимов может быть выбран в ходе
выполнения системной программы и установлен загрузкой
управляющего слова по команде OUT. Такая возможность
позволяет простыми программными средствами осуществить
реконфигурацию периферии МП системы. Следует обратить
внимание на то, что порт С в режимах 1 и 2 используется не как
порт данных, а в качестве регистра для управления процедурами
ввода-вывода. Это возможно вследствие того, что порт С, в отличие
от портов А и В, имеет не групповые цепи управления режимом, а
поразрядное управление установкой и сбросом триггеров,
образующих порт. Любой из восьми разрядов порта С может быть
установлен в 0 или 1 по команде OUT, которая передает
71
управляющее слово установки разрядов BIT SET/RESET (рисунок
4.10).
D7
D6
D5
D4
D3
D2
D1
D0
1 - Сбросить разряд
0 - Установить разряд
0 - Режим установки/сброса
разрядов порта PC
Номер изменяемого
разряда порта PC
Значение разрядов не важно
Рисунок 4.10 − Управляющее слово изменения разрядов порта PC
Любой из разрядов порта С может быть выбран
разработчиком МПС в качестве триггера запроса прерывания INT
или триггера фиксации разрешения прерывания INTE.
Программный доступ к ним дает возможность программисту
разрабатывать различные процедуры обработки прерываний,
наиболее эффективно приспособив их к структуре МПС.
Рассмотрим работу ППА в режиме 0 (рисунок 4.11).
RD
PA, PB, PC
Cs
A0, A1
DB
Рисунок 4.11 − Ввод в режиме 0
72
В режиме 0 направление передачи определяется отдельно для
каждого из каналов. В этом режиме информация, поступающая на
входы каналов, записывается в буферные регистры этих каналов
без стробирования, при поступлении сигнала чтения, данные
передаются на шину данных. При выводе в режиме 0 (рисунок 4.12)
информация, поступающая с шины данных, запоминается в
буферном регистре соответствующего канала и сразу же передается
на его выходы.
WR
DB
Cs
A0, A1
PA, PB
Рисунок 4.12 − Вывод в режиме 0
Обычно режим 0 используется для ввода-вывода медленно
изменяющихся или постоянных значений данных. В режиме 0
параметры работы РА и РВ задаются независимо друг от друга.
Порт С в этом режиме может быть разделен на две части РС7-
РС4 и РС3-РС0, работающие как отдельные порты соответственно
на ввод или вывод. Рассмотрим работу ППА в режиме 1. Будем
рассматривать режим ввода (рисунок 4.13). В этом режиме ППА
может быть использован для реализации системного
(асинхронного) обмена с применением квитирования.
Квитирование связано с обменом информационными и
управляющими сигналами-«квитанциями». При этом порты А и В
образуют два канала, а порт С используется для накопления и
обработки сигналов управления обменом. При вводе в режиме 1
устройство, требующее обмена, формирует на соответствующем
разряде порта С (РС4 для порта А или РС2 для порта В) инверсный
73
управляющий сигнал STB (строб байта) и загружает в нужный порт
8-ми разрядный код, который запоминается в этом порту. В ответ
ППА формирует сигнал IBF (входной буфер полон), извещающий
УВВ о невозможности приема следующего байта. С появлением
сигнала IBF внешнее устройство снимает сигнал STB.
STB
IBF
INT
RD
PA, PB
INTE
A
PC
4
PC
3
PC
5
PC
6
PC
7
PC
2
PC
1
PC
0
INTE
B
INT
B
INT
A
STB
B
STB
A
IBF
B
IBF
A
DB PA
PB
КР580ВВ55
RD
Рисунок 4.13 − Ввод в режиме 1
Если управляющим словом BIT SET/RESET установлен в 1
соответствующий триггер INTE (INTE
А
или INTE
В
), то данному
УВВ разрешена работа в режиме прерывания. Тогда по заднему
фронту стробирующего сигнала STB ППА генерирует и передает в
МП сигнал запроса прерывания INT. При удовлетворении запроса,
в ППА поступает сигнал RD, по переднему фронту которого
снимается сигнал INT, а по заднему фронту устанавливается в 0
разряд IBF, что свидетельствует о прочтении процессором данного
байта и возможности загрузки в порт ППА очередного байта со
стороны УВВ. Вывод в режиме 1 (рисунок 4.14) тоже связан с
процессом квитирования. При выводе в режиме 1 цикл работы
начинается с записи байта в данный порт (А или В). С завершением
сигнала записи WR формируется сигнал OBF (выходной буфер
полон), который извещает УВВ о том, что МП выдал байт на
выход. Когда устройство ввода-вывода готово прочитать байт, оно
генерирует единственный внешний управляющий сигнал АСК. По
74
этому сигналу открываются выходные буферы соответствующих
портов А или В, данные передаются в УВВ. Появление сигнала
АСК снимает сигнал OBF.
По заднему фронту сигнала АСК сигнал INT устанавливается
в 1, что может быть использовано системой прерывания МП в
качестве извещения о готовности УВВ к приему новой
информации. Теперь цикл вывода можно повторить. Режим 1 ППА
удобно использовать в развитых МП системах, обслуживающих,
например, большое количество датчиков и устройств ВВ.
WR
OBF
INT
ACK
PA, PB
INTE
A
PC
4
PC
3
PC
5
PC
6
PC
7
PC
2
PC
1
PC
0
INTE
B
INT
B
INT
A
OBF
B
OBF
A
ACK
B
ACK
A
DB PA
PB
КР580ВВ55
WR
Рисунок 4.14 − Вывод в режиме 1
Используя режим 1, можно реализовать программно-
управляемый обмен между МП и УВВ.
Для организации этой процедуры порт РС служит регистром
состояний внешнего устройства, порты РА и РВ для передачи
данных. Опрос и модификация разрядов порта С осуществляется
программно. Порт С считывается процессором, а затем
анализируется состояние его отдельных бит. На основании анализа
применяется решение о выводе или вводе информации.
В режиме 2 работает только порт А, однако в этом случае он
может использоваться в качестве двунаправленной магистрали.
Пять разрядов порта РС применяются для формирования сигналов
управления двунаправленной магистралью. Организация обмена и
программирование ППА в этом режиме аналогична режиму 1.
75
Использование ППА в режиме 2 удобно при организации
обмена информацией между двумя микро-ЭВМ или центральным
вычислителем и контроллером сложного устройства ВВ.
На основе ППА можно разрабатывать схемы управления
различными устройствами, например, клавиатурой или
индикатором. Простейшая система ввода и отображения
информации (рисунок 4.15) содержит клавиатуру на 16 клавиш и 5
семисегментных индикаторов.
Для работы системы порт А и порт В программируются на
вывод в режиме 0, младшая часть порта С0–С3 работает на ввод, а
старшая С4–С7 на вывод. Управляющее слово ППА для всех
портов – 81h.
В рассматриваемой системе индикатор реализован по
динамической схеме. Информационный код с порта А зажигает
соответствующие сегменты индикатора, а управляющий код с
порта В активизирует нужный индикатор, выдавая уровень нуля.
Для работы клавиатуры через разряды С4–С7 выполняется
сканирование клавиатуры, т.е. выдается код бегущего нуля. При
нажатой клавише на одном из контактов С0–С3 появляется код
нуля, который обнаруживается при чтении младшей части порта С
(опрос клавиатуры). Для увеличения количества клавиш до 64
можно использовать один порт для сканирования, а другой для
опроса. Привлечение третьего порта для опроса увеличит
возможное число клавиш до 128.
76
КР580ВВ55
PA
PB
PC
10К
+5В
580
ВА86
580
ВА86
10К
10К
10К
Рисунок 4.15 − Простая система ввода и отображения
на основе ППА
4.2.3 Программирование адаптера
Знакомство с ППА показало, что управление режимом
работы адаптера осуществляется путем его программирования, т.е.
засылкой в схему управления режимом слова CW, определяющего
режим работы. Адрес AddrRUS определяет адрес регистра
управляющего слова, а адреса AddrPortA AddrPortВ и AddrPortС
задает адреса соответственно, порта АВ и порта С.
Процесс программирования включает следующие команды:
МVI A,CW ; загрузка управляющего слова CW в
регистр А МП
STA AddrRUS ; пересылка управляющего слова в ППА
MVI A,B1 ; загрузка в А байта В1 на вывод
STA AddrPortA ; загрузка В1 в порт А ППА
LDA AddrPortB ; чтение в аккумулятор байта из порта В
ППА.
77
Устанавливая СW, согласно рисунку 4.9, можно получить
необходимый режим работы ППА. Следует помнить, что с
засылкой нового CW состояние портов сбрасывается в 0.
Контроль содержимого порта С и задание его отдельных бит можно
производить, используя следующие операции маскирования:
IN AddrPortC ; содержимое порта РС вводится в
аккумулятор А
ANI MS ; содержимое А изменяется маской MS
OUT ddrPortC ; содержимое А передается в порт С.
Маска MS позволяет изменять состояние отдельных бит,
сбрасывая биты нулевыми разрядами маски. Например, для сброса
битов 0, 3 и 7 маска будет выглядеть 01110110. Для установки
битов нужно использовать операцию ORI MS, вместо ANI MS.
Биты порта С можно изменять, используя специальное
управляющее слово, согласно рисунку 4.10. При этом необходимо в
регистр РУС загружать управляющее слово со старшим битом,
равным нулю. Например, установка второго бита порта С
определяется управляющим словом 00000101В. Младший бит
управляющего слова определяет функцию установки, а три
следующих бита задают номер разряда порта С.
MVI A, 00000101B ; загрузка управляющего слова установки
бита 2 порта С
STA AbbrRUS ; пересылка управляющего слова в ППА.
Такой способ отличается от предыдущего только
индивидуальностью характера управления разрядами порта С.
4.3 Универсальный синхронно-асинхронный
приемопередатчик КР580ВВ51
4.3.1 Основные характеристики БИС
78
Развитие микропроцессорных систем потребовало разработки
каналов передачи и приема информации, унификации устройств и
методов обмена.
В комплекте МП серии К580 разработана
специализированная БИС универсального синхронно-асинхронного
приемопередатчика (УСАПП), предназначенная для применения в
МП системах в качестве универсального элемента ввода-вывода
информации в последовательном формате (бит за битом) для
обмена данными по каналу связи. Последовательный интерфейс
используется для удаленных периферийных устройств, в
распределенных системах сбора и обработки данных.
БИС последовательного интерфейса КР580ВВ51(ИК51)
представляет собой универсальный синхронно-асинхронный
приемопередатчик и предназначена для организации обмена между
МП и ВУ в последовательном формате. УСАПП может принимать
данные с 8-разрядной шины данных МП и передавать их в
последовательном формате периферийным устройствам, а также
получать последовательные данные от периферии и
преобразовывать их в параллельную форму для передачи в МП.
Наиболее просто связь осуществляется при использовании на
передающем и принимающем пунктах одинаковых БИС
КР580ВВ51.
Обмен данными производится в асинхронном режиме со
скоростью передачи до 9,6 Кбит/с или в синхронном со
скоростью до 56 Кбит/с. Длина передаваемых символов составляет
от 5 до 8 бит. При передаче в МП символов длиной менее 8 бит
неиспользуемые биты заполняются нулями. Формат символа
включает также служебные биты и необязательный бит контроля
четности. Основные электрические параметры КР580ВВ51 при
температуре окружающей среды (+2510)° C приведены ниже.
Выходное напряжение логического нуля
U
0
, не более, В
0,4
Выходное напряжение логич. единицы U
1
,
не менее, В
2,4
Ток потребления I, мА 10 − 80
Ток утечки на входах, мкА −10− +10.
БИС выполнена в 28-ми выводном пластмассовом корпусе типа
DIP.
79
На рисунке 4.16. приведено условное графическое
изображение БИС УСАПП.
КР580ВВ51
DCR
DTR
CTS
RTC
SYND
RxC
RxRDY
RxD
TxC
TxRDY
TxD
TxE
Ucc
GND
D7
D6
D5
D4
D3
D2
D1
D0
CS
RESET
CLK
C/D
WR
RD
8
7
6
5
2
1
28
27
11
21
20
12
10
13
22
24
17
23
16
25
14
3
9
15
19
18
26
4
Рисунок 4.16 − Условное графическое изображение
УСАПП КР580ВВ51
4.3.2 Структурная схема УСАПП
В состав БИС УСАПП (рисунок 4.17) входит буфер
передатчика TBF, который в режиме синхронной передачи
выдвигает символы SYNC и байты данных через контакт данных
передатчика TxD. В режиме асинхронной передачи этот буфер
вводит бит паритета, стартовый и стоповый биты в каждый
передаваемый байт данных. Схема управления передатчиком TCU
генерирует и принимает сигналы квитирования при передаче
данных.
Буфер приемника RBF обнаруживает и удаляет символы
SYNC или биты синхронизации зависимости от режима
передачи) из входного потока бит и преобразует каждый байт
данных из последовательной формы в параллельную. Схема
управления приемником RCU, управляет приемом
последовательных данных со входа RxD и передачей их в МП в
параллельном формате в обоих режимах работы. Буфер данных BD,
80