Исследование порта ввода-вывода на бис кр580вв55 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Исследование порта ввода-вывода на бис кр580вв55



 

1. Цель и задачи работы

Ознакомиться со структурой микросхемы параллельного программируемого адаптера интерфейса КР580ВВ55 и с организацией её функционирования. Исследование возможности использования микросхемы в качестве порта для подключения клавиатуры (на примере учебно-отладочного устройства «Электроника 580»).

 

2. Теоретические положения

Под портом ввода-вывода понимают интерфейсную буферную схему для программного управления вводом и выводом со стороны процессора или контроллера ввода-вывода (аппаратный канал).

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

Условное графическое обозначение микросхемы приведено на рис. 1. Обмен информацией между магистралью данных системы и микросхемой КР580ВВ55 осуществляется через 8-разрядный двунаправленный тристабильный канал данных (D0..D7). Микросхема функционирует в трех режимах, она содержит два 8-разрядных и два 4-разрядных порта ввода/вывода, объединенных в две группы по 12 разрядов. В режиме 0 каждую группу из 12 линий можно запрограммировать на нестробируемый ввод или вывод, в режиме 1 каждую группу можно запрограммировать на стробируемые ввод или вывод, при этом 8 разрядов используются для передачи данных, а оставшиеся 4 – для управления обменом. В режиме 2 используется только одна группа, которая реализует стробируемый двунаправленный 8-разрядный канал обмена, управляемый сигналами пяти выводов.

На рис.1 РА [0- 7], PB [0 - 7], PC [0 - 7] - выходы трех буферных регистров для подключения внешних устройств: младшие разряды порта С логически сгруппированы с портом В, а старшие - с портом А; АО, А1 - входы адреса для выбора одного из трех буферных регистров и регистра управляющего слова. Для сброса всех регистров в нулевое состояние служит вход R; CS - выбор микросхемы. Направлением передачи управляют входы RD (чтение данных из одного из регистров на шину данных) и WR (запись данных с шины DO...D7 в один из четырех регистров микросхемы.

Рассмотрим более подробно функционирование микросхемы в трех основных режимах [I], [2].

Режим 0 обеспечивает программно-управляемый нестробируемый обмен информацией. Микросхема может рассматриваться как три 8-и разрядных порта независимо настраиваемых на ввод или вывод разрядных (каналы А, В и С). Вывод информации осуществляется по команде OUT микропроцессора с фиксацией выводимой информации в регистрах каналов, а ввод - по команде IN без запоминания информации. При этом на адресных входах АО, А1 должен быть установлен адрес порта:

- 00h - адрес канала А;

- 01h - адрес канала В;

- 02h - адрес канала С.

 

Режим 1 обеспечивает стробируемый однонаправленный обмен информацией с внешним устройством. Передача данных производится по каналам А и В, а линии канала С используются для приема и выдачи сигналов управления обменом. В режиме ввода сигналы стробов, принимаемые со входов РС4 и РС2 записывают данные в регистры портов А и В соответственно и устанавливают единичным значением флаги состояния заполненности входных регистров и флаги состояния прерывания. Разряды РС4, РС2 используются для хранения флагов разрешения прерываний портов А и В соответственно, т.е. единицы, установленные в этих триггерах соответствуют разрешению прерываний. Выводы состояния заполненности РС5 (порт А) и РС1 (порт В) можно использовать для управления ВУ, а выходы прерываний РС3 (порт А) и РС0 (порт В) – для передачи сигнала запроса на ПДП. Разряды РС7, РС6 программируются на ввод или вывод разрядом управляющего слова (0 – ввод, 1 – вывод).

При выводе в режиме 1 РС4, РС5 программируются на ввод или вывод, РС7 и РС1 хранят состояние выходных буферных регистров А и В (0 – буфер заполнен), их выводы используют для управления ВУ. РС3, РС0 как и ранее, показывают состояние прерывания, а РС6 и РС2 представляют собой триггеры разрешения прерываний.

Режим 2 обеспечивает двунаправленную передачу по каналу А к внешнему устройству и обратно. Для передачи и приема сигналов управления обменом используются пять линий канала С: РС7=0 – выходной буфер полон, РС6 – подтверждение вывода, РС4 -строб ввода, РС5 – входной буфер полон, РС3 – запрос прерывания. Оставшиеся линии каналов B и С могут настраиваться на режимы 0 или 1.

Режим работы каждого из каналов А, В и С определяется содержимым регистра управляющего слова (РУС), который записывается при установленном на адресных входах АО, А1 состоянии 11 (адрес 03h). Записав управляющее слово в РУС, можно перевести микросхему в один из трех рассмотренных режимов работы. Формат управляющего слова задания режимов приведен на рис. 2. В дополнение к основным режимам работы микросхема обеспечивает возможность программно-независимой установки в "1" и сброса в "0" любого из разрядов регистра канала С. Формат управляющего слова установки-сброса разрядов регистра канала С показан на рис. 3.

 

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

 

 

 

В учебно-отладочном устройстве "Электроника-580" микросхема КР580ВВ55 используется для подключения клавиатуры к микропроцессору. Схема подключения клавиатуры приведена, на рис. 4. Клавиатура представляет собой матрицу 3x8 клавиш, объединенных в три группы. Каждая группа подключена к соответствующему входу канала С интерфейса:

- к выходу РС4 подключены клавиши; "0", "1", "2", "3", "4", "5", "6", "7";

- к выходу РС5 подключены клавиши: "8", "9", "А", "В", "С", "D", "Е", "F";

- к выходу РС6 подключены клавиши: "MEM", "REG" "ADR", "STEP", "RUN", "NEXT", "BRK", "CLR".

Канал А принимает информацию с клавиатуры. Канал С по линиям РС4 - РС6 выдает сигнал «0» опроса клавиатуры. Остальные линии этого канала выполняют следующие функции:

- РС1: сигнал на разрешение прерывания;

- РС2: сигнал на светодиод "Флаг Z ";

- РСЗ: сигнал на светодиод "Флаг С ";

- РС7: сигнал на разрешение ПДП для индикации (РС7 = 0 - ПДП запрещён, РС7 = 1 - ПДП разрешен).

В УОУ с помощью контроллера прямого доступа к памяти на индикаторе отображается содержимое ячеек ОЗУ с адресами от 83F8h до 83FFh (ячейка с адресом 83F8h соответствует левому знаку дисплея).

Ввод информации с клавиатуры осуществляется следующим образом. В исходном состоянии на линии РС4 - PC6 подаются сигналы логической единицы. В результате при нажатии любой клавиши код 11111111, поступающий на вход канала А, не изменяется. Затем поочередно на линиях РС4 - PC6 появляется сигнал логический ноль, что производится с применением записи специального управляющего слова (рис.3). При нажатии клавиши этот ноль поступает на соответствующую линию канала А. Для получения кода нажатой клавиши нужно использовать код, считанный с канала А. Процесс опроса клавиатуры выполняется периодически, пока не будет нажата одна из клавиш. Программа на языке ассемблера, выполняющая сканирование клавиатуры, формирование кода нажатой клавиши и вывод введенного символа на индикацию, приведена в приложении.

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

 

3. Оборудование

 

Учебно-отладочное устройство "Электроника-580".

 

4. Задание на работу

 

4.1. Изучить функционирование программы, приведенной в приложении. На основании приведенной составить свою программу, выполняющую ввод только одного символа с клавиатуры с выводом его на индикацию. При вводе с клавиатуры любого другого символа на индикаторе задействовать четыре нижних сегмента. Варианты заданий приведены в таблице.

4.2. Составить схему алгоритма для вашей программы. Сопроводить ее комментариями, поясняющими сигналы в электрической схеме (рис. 4), вырабатываемые командами. Написать программу на языке ассемблера [3] и закодировать её в машинных кодах с указанием ячеек памяти и проверить правильность её работы на учебно-отладочном устройстве.

 

Таблица Варианты заданий

Вариант задания                            
Вводимый с клавиатуры символ                   A B C E F

 

5. Порядок выполнения работы

 

5.1. До занятия ознакомиться с теоретическими положениями и ответить на контрольные вопросы.

5.2. Составить программу в соответствии с вариантом задания на языке ассемблера МП K580.

5.3. Составить схему алгоритма программы, сопроводив её соответствующими комментариями.

5.4. Закодировать программу в машинных кодах МП К580.

5.5. Ввести программу в память учебно-отладочного устройства. Переключатель "Прогон-Отладка" поставить в положение "Прогон". Запустить программу в счет. Проверить правильность работы программы путем нажатия клавиши и контроля введенного символа на индикаторе дисплея.

 

6. Оформление отчета

 

Отчет оформляется в тетради или на листах формата А4 и должен содержать:

* названиекурса, названиеи цель работы, задание на исследование;

* схему подключения клавиатуры к порам микросхемы К580 ВВ55.

* схему алгоритма ввода с клавиатуры заданного символа с соответствующими комментариями, поясняющими сигналы, вырабатываемые командами;

* листинг программы на языке ассемблера МП К580, обеспечивающей ввод с клавиатуры заданного символа (с программой в машинных кодах с указанием ячеек памяти и необходимыми комментариями).

 

7. Контрольные вопросы

 

7.1. Как работает микросхема КР580ВВ55 в режиме 0 и как задается этот режим?

7.2. Как работает микросхема КР580ВВ55 в режиме 1 и как задается этот режим?

7.3. Как работает микросхема КР580ВВ55 в режиме 2 и как задается этот режим?

7.4. Опишите формат управляющего слова при работе в режиме установки и сброса разрядов регистра канала С.

7.5. Как работает схема ввода информации с клавиатуры?

7.6. Как организовано сканирование клавиатуры?

7.7. Как организуется асинхронный ввод-вывод информации в К580?

7.8. Как осуществляется преобразование информации, введенной с клавиатуры в двоичный код символа?

 

Библиографический список

 

1. Микропроцессоры. Кн.1. Архитектура и проектирование микроЭВМ, Организация вычислительных процессов: Учебник для вузов/ Под ред. Л.Н. Преснухина. Л.: Высшая школа, 1986. - 495 с.

2. Хвощ С. Т., Варлинский Н. Н., Попов Е. А. Микропроцессоры и микроЭВМ в системах автоматического управления: Справочник. - Л.: Машиностроение, 1976. - 640 с.

3. Готовский В.Ю. и др. Программирование на языке Ассемблера для микропроцессора КР580ВМ80: Учебное пособие, М.: МЭИ – 1988.

 

Приложение

; Основная программа ввода символов с клавиатуры и вывода их на индикацию

ORG 8200h;МАШИННЫЙ КОД

XRA A;AF

OUT 03;D3 03

;Обращение к подпрограмме сканирования клавиатуры

KLAV: CALL SCAN;CD 31 82

CPI 10h;FE 10

JM KL1;FA 10 82

MVI A, 5Ch;3E 5C

JMP KL2;C3 1A 82

;Формирование адреса индицируемого кода, соответствующего введенному числу

KL1: LXI D, CONST;11 21 82

ADD E;83

MOV E, A;5F

MVI A, 00h;3E 00

ADC D;8A

MOV D, A;57

LDAX D;1A

; Вывод символа на индикатор

KL2: STA 83FFh;32 FF 83

JMP KLAV;C3 03 82

HLT;76

;Массив кодов символов для индикации

CONST DB 3Fh, 06h, 5Bh, 4Fh

DB 66h, 6Dh, 7Dh, 07h

DB 7Fh, 6Fh, 77h, 5Dh

DB 39h, 5Еh, 79h, 71h

;Подпрограмма сканирования клавиатуры и формирования кода введенного символа

SCAN LXI H, 06FFh;;21 FF 06

; в L - признак отсутствия нажатия, в Н - счетчик линий

;проверка нажатия клавиши

SK1: IN 02;DB 02

ANI 8DH;E6 8D

ORI 70H;F6 70

; установка всех линий матрицы в 1

OUT 02;D3 02

MOV A, H;7C

SUI 02h;D6 02

; три линии просканированы?

JC SCAN;DA 31 82

MOV H, A;67

ORI 08h;F6 08

OUT 03;D3 03

IN 00;DB 00

CMP L;BD

; нажатия не было?

JZ SK1;CA 34 82

; формирование кода введенного символа

SK2: INR L;2C

RAR;1F

JC SK2;DA 4D 82

; формирование кода введенного символа с учетом номера строки

MOV A, H;7C

RAL;17

RAL;17

ADD L;85

RET;C9

END

 



Поделиться:


Последнее изменение этой страницы: 2016-04-26; просмотров: 1855; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.12.222 (0.06 с.)