Микросхема КР580ВВ55


Г. Зеленко, В. Панов, С. Попов

Данная статья знакомит с работой программируемой периферийной БИС КР580ВВ55, которая входит в комплект микропроцессорных БИС серии К580.

Внешние устройства подключают к линиям ввода или вывода ППА, образующим каналы А, В и С, по 8 линий в каждом. Канал С может быть разделен на младший и старший иод-каналы. Линии каналов связаны с соответствующими буферными регистрами ППА — портами А, В и С.

Обмен информацией между микропроцессором и портами происходит по командам ввода или вывода программы по шине данных, к которой ППА подключен через двунаправленные линии DO — D7. Эти линии находятся в высокоимпедансном состоянии при отсутствии сигнала ВМ и одного из сигналов ЧТ или ЗП При выполнении команд ввода или вывода микропроцессор устанавливает на линиях А0- А7 шины адресов номер порта. В результате его дешифрации вырабатываются сигналы ВМ, А0 и A1. определяющие, с, каким из портов будет происходить обмен (см. табл. 1).

Таблица 1

Направление обмена задают управляющие сигналы, поступающие с шины данных на входы ЗП или ЧТ ППА в зависимости от того, выполняется ли команда ввода или вывода.

ППА содержит также порт регистра управляющего слова РУС, куда для задания режимов работы каналов по команде вывода предварительно заносится управляющее слово. Формат этого слова представлен в табл. 2.

Отметим, что считать информацию из порта РУС нельзя.

Возможны три режима (0, 1 и 2) работы каналов ППА. Режим 0 предусматривает обмен данными с внешними устройствами через каналы А, В и два подканала С без управляющих сигналов о готовности к работе и подтверждения обмена. Это означает, что данные, выводимые из микро-ЭВМ по командам вывода, фиксируются в соответствующих портах ППА и хранятся там до поступления очередных команд вывода, т. е. до записи в порты новых данных.

По линиям каналов они непосредственно поступают во внешние устройства.

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

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

В режиме 1 обменом данными между внешними устройствами и каналами А и В (или одним из них) управляют сигналы, передаваемые по линиям канала С. Работу ППА в этом режиме рассмотрим на примере совместной работы микро-ЭВМ с широко распространенным в вычислительной технике внешним устройством — алфавитно-цифровым дисплеем. Как пра вило, дисплей состоит из двух функционально независимых частей: кла виатуры и блока вывода данных к; экран дисплея.

Обратимся к рис. 1, на котором показана схема подключения этих блоков к ППА. В нашем примере порты А и В запрограммированы в режим 1 соответственно на ввод данных клавиатуры и их вывод из микрс процессора на экран дисплея. Здес же приведены и временные диаграммы управляющих сигналов. После нажатия на клавишу на линиях канала t появляется код соответствующего знак; а на линии канала С—сигнал строб приема — СТПРА. По этому сигнал данные с входных линий перепись ваютси в порт А, что подтверждается сигналом подтверждение приема - ПДПРд, поступающим из ППА в дисплей, и сигнал СТПРА гасится. ППА при этом формирует сигнал запрса прерывания — ЗППРд, свидетельствующий о том, что данные в порту А подготовлены для последующегои считывания микропроцессором по команде ввода. Ее выполнение вызывает появление сигнала ЧТ, фронт которого гасит сигнал ЗППРА, а спад - сигнал ПДПРА, после чего с клавиатуры дисплея можно вывести новый байт данных на линии канала А.

При выводе на экран дисплея какоro-либо символа его код переписывается в порт В по команде вывода, вызывающей одновременно появление сигнал ЗП на входе ППА. По спаду этого сигнала формируется сигнал строб записи — СТЗПВ для дисплея. Этот же сигнал разрешает считывание данных с линий канала В и по нему же вырабатывается сигнал подтверждения записи — ПДЗПВ, спад которого c6pасывает сигнал СТЗПВ и вызывает в ППА возникновение сигнала запрс прерывания — ЗППРВ. Теперь микропроцессор может записать в буфер ППА код очередного символа для eго последующего вывода на экран.

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

Переводом линий канала А в режим ввода и вывода управляют поступающие от внешних устройств сигналы СТПРд и ПДЗПд соответственно. Приих отсутствии линии канала А остаются в высокоимпедансном состоянии. Этот режим весьма специфичен, и его рассмотрение мы пока отложим.

В табл. 3 показано назначение линии канала С при разных режимах работ каналов ППА.

Таблица 3

Свободные от управляющих сигналов липни канала С (в таблице они обозначены В/В) могут быть использованы как линии ввода или вывода данных. Для вывода данных по отдельным линиям канала С используют специальное управляющее слово, записываемое в порт РУС и служащее для индивидуальной установки в I или 0 любого разряда порта С (см. табл. 4).

Таблица 4

В зависимости от кода, записанного в разрядах D1 — D3, выбирается разряд порта С, значение которого (а следовательно, и сигнала на соответствующей линии) будет изменено при записи этого слова в порт РУС. Если необходимо изменить состояние нескольких линий порта С, то загружают последовательно несколько управляющих слов.

Управляющие сигналы, передаваемые по линиям канала С, фиксируются в соответствующих разрядах порта С (см. табл. 5) Байт, считанный микропроцессором из порта С, отражает текущее состояние ППА и может быть затем программно проанализирован. Одновременно могут быть считаны и данные, вводимые или выводимые по свободным линиям канала С.

Таблица 5

Сигнал ЗППР, вырабатываемый ППА в режимах 1 и 2 при готовности внешних устройств к обмену данными с микро-ЭВМ, можно использовать двояко. Во-первых, наличие этих сигналов можно определить путем программного опроса. Для этого при выполнении основной программы микропроцессор периодически считывает и анализирует байт из порта С. Появление I в соответствующем разряде порта С (т. е. появление какого-либо из сигналов ЗППР) вызывает переход микропроцессора к выполнению программы обмена байтом с соответствующим внешним устройством. Во-вторых, сигналы ЗППР можно подать на контроллер прерываний микро-ЭВМ. В этом случае при их появлении микропроцессор прерывает выполнение основной программы и начинает выполнять программу обслуживания внешнего устройства. По окончании ее работы вновь продолжается выполнение основной программы до появления следующих сигналов ЗППР. Организация ввода-вывода с использованием системы прерываний позволяет микропроцессору более эффективно выполнять основную программу, «не отвлекаясь» на периодическую проверку готовности внешних устройств. Однако при этом схема микро-ЭВМ несколько усложнится из-за введения контроллера прерываний.

На практике обычно используют оба способа проверки готовности внешних устройств. Например, при выводе «но инициативе» микропроцессора на экран дисплея последовательности символов целесообразно использовать программный опрос готовности.

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

Для разрешения или запрещения формирования сигналов ЗППР в ППА необходимо устанавливать определенные разряды порта С (в табл. 5 они названы РЗПР) соответственное 1 или 0. Это позволяет программным путем «разрешить» или «запретить» отдельным внешним устройствам работать с микропроцессором.

На рис. 2 представлена программа ввода данных с клавиатуры в аккумулятор микропроцессора и последующего их вывода на экран дисплея.

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

При начальном запуске из микроэвм иа соответствующий вход ППА должен быть подан сигнал СБР. По этому сигналу все порты ППА настраиваются на выполнение операций ввода в режиме 0 и обнуляются их разряды. Только после этого можно задавать нужные режимы работы. Обнуление необходимо также и при операциях смены режимов работы.

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


РАДИО № 6, 1983 г.,с. 42-46.