Содержание отчета
Отчет должен содержать:
Схему подключения ППИ к МПС и ВУ.
Программы 1.2 – 1.4.
Таблицу 1.3 управляющих сигналов для программ 1.2 – 1.4.
Временные диаграммы команд, построенных в соответствии с табл. 1.5 для программ 1.2 – 1.4.
Протокол проверки работы программ 1.1 – 1.4.
«а» Режим 1 – ввод
«б» Режим 1 – вывод
«в» Режим 2
Рис. 1.1 Схема передачи сигналов
Рис. 1.2 Панель УМПК ВМ80
МИ-2
Рис. 1.3 Панель ППИ МИ-2
Лабораторная работа №2.
Исследование универсального синхронно-асинхронного приемопередатчика KP580BB51.
1. Цель работы: ознакомление с устройством, программированием и режимами работы универсального синхронно-асинхронного приемопередатчика (УСАПП).
Теоретическое введение
Универсальный синхронно-асинхронный приемопередатчик (УСАПП) предназначен для организации обмена между МП и внешним устройством (ВУ) в последовательном формате. УСАПП является последовательным интерфейсом. Он принимает данные с 8-ми разрядной шины данных МП и передает их в последовательном формате на ВУ, а также принимает данные в виде последовательных импульсов от ВУ и преобразовывает их в параллельный код для передачи в МП.
Режим работы УСАПП задается программно путем загрузки в него управляющих слов из МП. Различаются управляющие слова двух видов: инструкции режима и команды. Инструкция режима задает синхронный или асинхронный режим работы, формат данных. Скорость приема или передачи, необходимость контроля. Инструкция выносится сразу после установки УСАПП в исходное состояние программно или по сигналу RESET и изменяется лишь при смене режима. Команда осуществляет управление установленным режимом обмена и может многократно задаваться в процессе обмена.
При асинхронном обмене команда загружается сразу после инструкции режима. А при синхронном обмене перед ней располагают один или два синхросимвола.
В асинхронном режиме формат данных включает нулевой старт-бит, биты данных, контрольный бит на четность и стоп-биты высокого уровня.
Формат инструкции режима для асинхронного режима представлен в табл. 2.1.а. Разряды D1, D0 задают скорость передачи и определяют сколько необходимо подать синхроимпульсов RxC - TxC для приема-передачи 1 бита информации в последовательной форме, разряды D3, D2 – определяют длину слова, передаваемого в последовательном коде. D5 – вид контроля. При контроле на четность в передаваемом слове передатчик считает количество – 1 – если оно окажется не четным, то в бите контроля на четность после первого переданного слова устанавливается 1 (добавка по четности «1» передаваемой группе). В конце переданной группы подается импульс высокого уровня длительностью 1-2 бит, определяемой рядами D7, D8.
При синхронном обмене данные передаются в виде массива слов, а для синхронизации запуска при приеме данных используются один или два символа синхронизации. Формат инструкции режима для синхронного обмена представлен в табл. 2.1б. Формат команды управления приведен в табл. 2.2. Командой производят сброс схемы в исходное состояние при D6=1. После программного сброса необходимо вновь ввести в УСАПП инструкцию режима и команду. После сброса сигналом RES (кнопкой сброса) ввод первым словом команды вызывает сбой работы УСАПП, т.к. она дешифруется как инструкция. При программировании должен быть соблюден строгий порядок ввода управляющих слов, так как управляющие слова и символы синхронизации выводятся по одному адресу и благодаря принятой очередности заполняют разные регистры.
Для контроля состояния УСАПП в процессе обмена данными МП может с помощью команды ввода считывать слово-состояния интерфейса из специального регистра. Значение отдельных разрядов слова-состояния указано в табл. 2.3.
В слове состояния формируются три флага ошибок: разряд D3 устанавливается при возникновении ошибки четности (PE); разряд D4 устанавливается при возникновении ошибки переполнения (OE), если МП не прочитал символ; разряд D5 устанавливается при наличии ошибки стоп-бита, если в конце посылки для асинхронного режима не обнаружен стоп-бит.
Значение управляющих сигналов, порядок программирования после сброса сигналом RES и адреса команд УМПК приведены в табл. 2.4.
Табл. 2.1. Порядок программирования УСАПП, состояние сигналов при выполнении команд и адреса
№ пп |
Последовательность действий |
Сигналы на выводах УСАПП |
Команды |
||
C/ |
|
RS |
|||
1.
2. 3. 4. |
Сброс в исх. Сост. (сигналом RS) Запись инструкции режима Запись синхросимвола Запись команды |
x
1 1 1 |
x
0 0 0 |
1
0 0 0 |
Кнопкой сброс МПС OUT 9D OUT 9D OUT 9D |
Табл. 2.1а. Формат инструкции режима для асинхронного режима
Разряд |
Назначение разряда |
D1, D0 |
Отношение частоты синхронизации передачи TxC – к частоте передачи (скорости передачи) TxD: 0:1 = 1:1; 1,0 = 16:1; 1,1 = 64:1 |
D3, D2 |
Длина слова 0,0 – 5 бит; 0,1 – 6 бит; 1,0 – 7 бит; 11 – 8 бит |
D4 |
Контроль четности. 1 – разрешить; 0 – запретить. |
D5 |
Вид контроля. 1 – четность; 0 – нечетность |
D7, D6 |
Число стоп бит. 0, 1 – 1 бит; 1, 0 – 1,5 бит; 1, 1 – 2 бит |
Табл. 2.1б. Формат инструкции режима для синхронного режима
Разряд |
Назначение разряда |
D1, D0 |
00 – признак асинхронного режима |
D3, D2 |
Длина слова 00 – 5 бит; 01 – 6 бит; 10 – 7 бит; 11 – 8 бит |
D4 |
Контроль четности. 1 – разрешить; 0 – запретить. |
D5 |
Вид контроля. 1 – четность; 0 – нечетность |
D6 |
Синхронизация. 1 – внешняя; 0 – внутренняя |
D7 |
Число синхросимволов 1 – один, 0 – два |
Табл. 2.2. Формат команды управления
Разряд |
Назначение разряда |
D0 |
0 – передача запрещена 1 – передача разрешена |
D1 |
1 – запрос о готовности передатчика терминала (ВУ) передать данные. Запись 0 на выходе =0 |
D2 |
1 – прием возможен 0 – прием невозможен |
D3 |
0 – нормальная работа при передаче 1 – конец передачи TxD=1 |
D4 |
1 – сброс разрядов ошибок в исходное состояние |
D5 |
1 – запрос о готовности приемника терминала (ВУ) принять данные. Запись 0 на выходе =0 |
D6 |
1 – сброс УСАПП в исходное состояние |
D7 |
1 – поиск синхросимволов |
Табл. 2.3. Формат слова-состояния
Разряд |
Назначение разряда |
D0 D1 D2 D3 D4 D5 D6
D7 |
TxRDY – признак готовности передатчика RxRDY – признак готовности приемника TxEND – признак окончания передачи 1 – ошибка по четности (PE) 1 – ошибка – переполнение буфера (OE) 1 – ошибка отсутствие стоп бита в конце слова (FE) SYNDET – вид синхронизации. В асинхронном режиме устанавливается при обнаружении ошибки (на вход RxD поступает все время низкий уровень). Сброс сигнала осуществляется подачей 1 на RxD) В синхронном режиме с внешней синхронизацией высокий уровень указывает на начало приема данных в последовательном коде по срезу следующего сигнала RxC. При внутренней синхронизации устанавливается и передается на выход при приеме последнего бита символа синхронизации. Сбрасывается при чтении слова-состояния. D7=1 при сигнале готовности передатчика терминала =0 |
Программа 2.1 вывода данных в последовательной форме приведена при асинхронном режиме передачи с длиной слова 8 бит, контролем по четности и одним стоп битом (ключи SA2.1 вверх (режим ручной) SA2.2 (вниз)). Ключи на ВМ показаны на рис. 1.2.
Адр |
Код |
Метка |
Ассемблер |
Комментарии |
0803 0805 |
3E 40 D3 9D |
LONG |
MVIA, 40 OUT RGCW |
Сброс командой |
0807 0809 |
3E 7D D3 9D |
STRT: |
MVIA, 7D OUT RGCW |
Загрузка инструкции режима |
080B 080D |
3E 37 D3 9D |
|
MVIA, 37 OUT RGCW |
Загрузка команды управления |
080F 0811 |
3E 5A D3 9C |
|
MVIA, 5A OUT RGDT |
Загрузка данных в регистр передатчика |
0813 0815 |
DB 9D DB 9D |
|
IN PSW |
Чтение слова состояния до окончания записи данных и после окончания вывода |
0817 |
|
|
JMP LONG |
зацикливание |
Программа 2.2 Прием данных, поступающих в последовательном коде, с передачей данных в МП. Работа в асинхронном режиме, длина слова 8 бит, с контролем по четности и одним стоп битом (ключи SA2.1 – вверх, SA2.2 – вниз).
Адр |
Код |
Метка |
Ассемблер |
Комментарии |
0803 0805 |
3E 40 D3 9D |
LONG |
MVIA, 40 OUT RGCW |
Сброс командой |
0807 0809 |
3E 7D D3 9D |
STRT: |
MVIA, 7D OUT RGCW |
Загрузка регистра командой инициализации |
080B 080D |
3E 37 D3 9D |
|
MVIA, 37 OUT RGCW |
Загрузка регистра командой |
080F 0811 |
DB 9D DB 9D |
|
IN PSW IN PSW |
Чтение слова состояния до ввода данных и после |
0813 0815 |
DB 9C DB 9D |
|
IN DATA IN PSW |
Чтение данных Чтение слова-состояния после чтения данных |
0817 |
C3 03 08 |
|
JMP LONG |
Зацикливание |
Программа 2.3. Прием данных, поступающих в последовательной форме в асинхронном режиме с контролем а четность с записью в ОЗУ, начиная с ячейки 0900 (ключ SA4.2 – вверх, SA21 – вверх, SA22 – вниз).
Адр |
Код |
Ассемблер |
Комментарии |
0800
0803
0807
080B
080F 0811 0813
0816 0818 081A
081C
081F 0821 0822 0823 |
21 00 09
3E 40 D3 9D
3E 7D D3 9D
3E 37 D3 9D
DB 9D E6 80 CA 10 G8
DB 9D EE 87 D3 05
C2 16 08
D3 9C 77 23 C3 0B 08
|
LXI 09 00
MVIA 40, OUT RGCW MVIA 7D OUT RGI
MVIA 37 OUT RGCW IN PSW ANI 80 JZ 08 10
IN PSW XRI 87 OUT HL
JNZ 08 16
IN DATA MOV MA INX H JMP 08 0B
|
Загрузка регистровой пары H Сброс командой управления Загрузка регистра инициализации Загрузка команды
Чтение слова-состояния Проверка D7 сигнала DSR Ожидание готовности передатчика Чтение слова-состояния Проверка ошибок и RxRDY Индикация ошибок и RxRDY Ожидание исправления ошибок и сигнала RxRDY Чтение данных Запись данных в память
Зацикливание |
3. Задание для домашней подготовки
3.1. Изучить устройство, сигналы и способы организации обмена информацией между МП и внешним устройством.
3.2. Ознакомиться с форматами инструкции режима по табл. 2.1, команд по табл. 2.2, и словом состояния по табл. 2.3.
3.3. Записать программы 2.1, 2.2 и 2.3 вывода и ввода данных в последовательном коде в асинхронном режиме.
3.4. Самостоятельно написать программы ввода и вывода данных в последовательном коде в синхронном режиме с контролем на четность, записью данных в память и чтение из памяти и индикацией ошибок в режиме ожидания.
4. Задание к лабораторной работе
4.1. Ввести программу 2.1. Установить кл. SA1 и SA2 вверх.
4.2. Выполнять программу 2.1, начиная с адреса 0807, если перед программированием сброс произведен кнопкой R. По шагам команд запрограммировать УСАПП (до адр. 080F). Зафиксировать состояния сигналов TxD, TxE, TxRDY в табл. 2.4. по состояниям светодиодов. Выполнить команды загрузки данных в регистры передатчиков, отметить состояние изменения вышеприведенных сигналов. Подавать ключом SA1.2 синхроимпульсы TxС и фиксировать состояние сигналов TxD, TxE, TxRDY, TxC, I/0WR (на 80ВМ) и RTS на временной диаграмме. Исследовать работу системы при сигнале CTS=1 перепрограммирования УСАПП по адресам 0803 – 0815. Определить слово-состояние перед выводом данных, затем подать сигнал CTS=0 (SA4.1 – вверх). Зафиксировать сигналы TxD, TxE, TxRDY. Подать серию импульсов TxC, фиксируя TxD, по окончании передачи (TxE=1). Определить и дешифровать слово состояния.
4.3. Исследовать программу для ввода данных в соответствии с программой 2.2. Установить кл. SA1, SA4 вверх. Выполнить программу по шагам команд. После коррекции (если программа не была сброшена кн. R) начинать выполнение программы следует с адреса 0803, а если программа вновь введена после сброса предыдущей сигналом RES (кн. R), то начинать выполнение программирования интерфейса следует с ввода слова инициализации (адреса 0807).
Записать состояние сигналов RxD, RxREADY, RTS после программирования и значения слова-состояния. После выполнения команды по адресу 080F. Ввести данные ключом SA1.1 – сигналами RxD в последовательном коде в асинхронном режиме начиная со стартового бита, с битом по четности и строковым битом. Рекомендуется ввод первого числа 5А провести в той же последовательности, в которой это число выводилось при выполнении программы 2.1. После сигнала RxRDY считать слова-состояния и принятые данные интерфейсом выполнением команды DB 9C. Проверить правильность выполнения операций по значениям слова-состояния и данных.
Ввести нечетное число, аналогичное предыдущему. Сравнить значение битов контроля на четность с предыдущим примером. Объяснить результат.
4.4. Ввести программу 2.3. Исследовать ее действие по шагам команд. Проверить правильность записи в память вводимых в последовательном коде данных, начиная с ячейки 0900. Ввести число в последовательном коде с нечетным числом единиц и низким уровнем бита по четности. Проанализировать ошибки по светодиодам, отражающим состояние разрядов слова-состояния на панели ВМ.
4.5. Исследовать работу программы ввода данных в последовательном коде в синхронном режиме аналогично заданию 4.2.
4.6. Исследовать работу системы по самостоятельно откорректированной программе ввода данных в последовательном коде в синхронном режиме аналогично заданию 4.3.
4.7. Исследовать работу МПС по программе ввода данных в синхронном режиме аналогично заданию 4.4.
5. Содержание отчета
5.1. Форматы слова инициализации, команды и слова-состояния.
5.2. Программы по выполнению заданий.
5.3. Таблицы символов.
5.4. Временные диаграммы сигналов и данных при асинхронном приеме и передаче и временные диаграммы данных и синхросимволов в последовательном коде при синхронном режиме.
Табл. 2.4.
адр |
CTS |
|
DTR |
RTS |
RxRDY |
RxD |
TxC, RxC |
TxRD |
TxE |
TxD |
PSW |
|
|
|
|
|
|
|
|
|
|
|
|
Лабораторная работа №3
Исследование программируемого таймера KP580ВИ53
1. Цель работы: ознакомление с устройством, программированием и режимами работы программируемого таймера.
