Программируемый параллельный интерфейс
В персональных компьютерах в качестве интерфейсных схем с побайтным вводом/выводом информации широко применяется микросхема типа КР580ВВ55, которая является универсальной программно-управляемой БИС. С помощью этой схемы возможна организация обмена в параллельном формате практически с любым периферийным оборудованием. БИС размещена в пластмассовом корпусе с 40 выводами. Потребляет мощность 350 мВт напряжением +5В. БИС может быть использована для организации синхронного и асинхронного обмена, а также обмена в режиме прерывания программы. Функциональная схема БИС показана на рисунке 4.5. В состав БИС входят три 8-разрядных канала (буферных регистра) А, В, С и схема управления с регистром управляющего слова. Соединение ВВ55 с шиной данных МП осуществляется через двунаправленную шину ШД0-ШД7. Запись информации от периферийных источников осуществляется по команде Чт сигналом низкого уровня. По этой команде шины одного из каналов соединяются с шинами ШД. Номер канала зависит от кода на выводах А0, А1. По команде запись ― наличие сигнала низкого уровня на выводе ЗП – происходит запись байта данных в БИС от МП. Вывод ВМ используется для управления микросхемой, то есть нулевой потенциал на ВМ разрешает работу БИС. При отсутствии сигнала выводы ШД[0-7] находятся в состоянии высокого импеданса. Для установки всех регистров БИС в нулевое состояние единичный импульс подается на вывод СБР – “Сброс”. Перед началом работы программным способом путем подачи на БИС специальных команд инициализации устанавливаются режимы работы каждого из каналов. В таблице 3.1 показана зависимость вида и направления передачи информации от управляющих сигналов.
Обращение МП к каналам ввода/вывода осуществляется командами IN (ввод) и OUT (вывод). Возможно построение МП-систем, в которых обращение к каналам производится как к ячейкам памяти. В этом случае два младших разряда адреса А0, А1 подаются на интерфейсную БИС непосредственно и адресуют регистры каналов А, В, С или регистр управляющего слова. Остальные разряды А2 – А15 поступают на внешний дешифратор, который формирует сигнал ВМ и включает нужную БИС ВВ55 микропроцессорной системы. То есть адрес внешнего устройства состоит из номера БИС и номера канала в интерфейсной БИС. В процессе работы при необходимости изменения структуры ввода-вывода в управляющий регистр рассматриваемой БИС программным способом заносится соответствующее управляющее слово. Содержание этого слова задает один из трех возможных режимов работы каналов ввода-вывода: основного (режим 0), стробируемого однонаправленного (режим 1), стробируемого двунаправленного (режим 2). Пример задания режимов с помощью управляющего слова показан на рисунке 4.6. Таблица 4.1- Таблица управляющих сигналов БИС КР580ВВ55
Режимы работы каналов А и В могут быть заданы независимо друг от друга. Канал С делится на две части С [0-3] и С [4-7], режимы работы которых определяются собственно режимами работы каналов А и В, если последние работают в режиме 1 или 2. Если же каналы А и В работают в режиме 0, то каждая половина канала С может работать как отдельный канал в режиме 0. Режим 0 позволяет организовать синхронный обмен информацией между МП и внешними устройствами.
Режим 1 обеспечивает возможность организации однонаправленной асинхронной передачи информации между МП и внешними устройствами, при этом каналы А и В используются как регистры данных, а канал С – для приема и формирования сигналов, сопровождающих асинхронный обмен (в качестве устройства, осуществляющего анализ готовности внешних устройств и МП к обмену и стробирование данных в регистры каналов А и В). Для этого в состав канала С входят два триггера разрешения готовности, допускающие установку и сброс программным способом, а также ряд логических схем для асинхронной записи информации в регистры А и В. Особенностью канала С является то, что каждый из разрядов этого канала может быть независимо от остальных установлен в 1 или в 0. Это позволяет использовать канал С для хранения управляющего слова (состояния внешнего устройства) при организации программно-управляемого обмена. Фрагмент процедуры программирования БИС КР580ВВ55 на языке ассемблера и в машинных кодах имеет вид:
Рассмотрим реализацию процедуры асинхронного обмена между МП и внешним устройством с помощью БИС 580ВВ55, работающей в режиме 1 (стробируемый однонаправленный). Пусть производится ввод информации через канал А. В момент готовности внешнего устройства к вводу информации в МП оно формирует сигнал СТР1 (стробирование) низкого уровня. Временная диаграмма этой процедуры изображена на рисунке 4.7. По переднему фронту этого сигнала осуществляется запись слова данных в канал А. При этом БИС ВВ55 формирует ответный единичный сигнал ППР1 (подтверждение приема). В течение всего времени наличия единицы на выводе ППР1 внешнему устройству запрещается формировать сигнал СТР1 и записывать в канал новое слово данных. По заднему фронту сигнала СТР1 при наличии единицы ППР1 (и единичном состоянии внутреннего триггера ТГТ1) с интерфейса посылается сигнал запроса на прерывание МП – сигнал ГТВ1 (готовность). Получив этот сигнал МП, переходит на соответствующую подпрограмму обслуживания прерываний, в процессе которой осуществляется чтение слова данных из канала А. Для считывания информации с ВВ55 на неё с МП подается импульс ЧТ нулевого уровня. По переднему фронту этого сигнала слово из регистра А передается на шины данных МП. Задним фронтом сигнала ЧТ сбрасывается сигнал ППР1, что свидетельствует об окончании ввода данных в МП и внешнему устройству разрешается формировать новый сигнал СТР1.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|