Изучение программируемого периферийного адаптера КР580ВВ55А. Схема соединения КПУ

Страницы работы

Содержание работы

Лабораторная работа №4

Изучение программируемого периферийного адаптера КР580ВВ55А

Цель работы: Изучить структуру и режимы работы программируемого периферийного адаптера ППА КР580ВВ55А, его программирование и возможности реализации простейших параллельных интерфейсов.

Передача информации будет осуществляться в режиме 0. Описание режима 0:

Данный режим позволяет осуществлять однонаправленный ввод ввод/вывод информации по всем трем портам (А,В,С). управляющее слово имеет вид:

1

0

0

PA

PCH

0

PB

PCL

где     PA – режим работы порта А (1-ввод, 0- вывод)

PB – режим работы порта В (1-ввод, 0- вывод)

PCН – режим работы старшей тетрады порта С (1-ввод, 0- вывод)

PCL – режим работы младшей тетрады порта С (1-ввод, 0- вывод)

Для передачи информации из КПУ-1 будет использован младший бит порта А ППА-1, для приема информации в КПУ-1 будет использован младший бит порта В ППА-1. Управляющие сигналы STB и ACK будут передаваться/приниматься посредством старшей и младшей тетрад порта С ППА-1, настроенный соответственно на ввод и вывод информации.

Схема соединения КПУ:

Примечание: в КПУ, на котором мелом нарисована стрелочка – есть рабочий ПСА, в КПУ без стрелки ПСА нерабочий, проверено студентами гр. ЭМ-41 при содействии Френкеля Б.С. как аппаратно, так и программно, ППА в обоих КПУ – полностью рабочие!!!

При соединении КПУ обращайте внимание на плотную скрутку жил проводов. (с) Горбатовский & Зобов. Провода любезно предоставлены кафедрой микропроцессорной техники.  При выполнении работы следует выпросить у преподавателя исправленную схему электрическую принципиальную блока контроллеров (три склеенных листа, клеил Зобов:)

Листинг Программы

1900             PA        EQU   F0H      ;

1900             PB        EQU   F1H      ;

1900             PC        EQU   F2H      ;

1900             PPI       EQU   F3H      ;

1900             DISP      EQU   E4H      ;

ПЕРЕДАТЧИК                                 

1900  16 14      INIT:     MVI   D,14H    ; количество передаваемых байтов: 20

1902  21 00 1A             LXI   H,1A00H  ; адрес начала передаваемого блока

1905  3E 8A                MVI   A,8AH    ; Настройка ППА: порт А – вывод,

1907  D3 F3                OUT   PPI      ; порт В – ввод, порт СL – вывод, порт CH – ввод.

1909  0E 08      20BYTE:   MVI   C,08H    ; количество передаваемых бит для одного байта

190B  7E         8BIT:     MOV   A,M      ; чтение передаваемого байта

190C  D3 F0                OUT   PA       ; вывод в порт А на передачу

190E  3E 04                MVI   A,04H    ; посылка подтверждающего сигнала STB

1910  D3 F2                OUT   PC       ; через порт С

1912  DB F2      ACK:      IN    PC       ; Ожидание подтверждения приема

1914  E6 80                ANI   80H      ; сигнал ACK

1916  FE 80                CPI   80H      ; принимается через порт С

1918  C2 12 19             JNZ   ACK      ;

191B  3E 00                MVI   A,00H    ; сброс сигнала STB на линиях порта С

191D  D3 F2                OUT   PC       ;

191F  D3 F0                OUT   PA       ; обнуление порта А

1921  7E                   MOV   A,M      ; подготовка к сдвигу передававшегося байта

1922  0F                   RRC            ; сдвиг

1923  77                   MOV   M,A      ; сохранение сдвинутого байта обратно на его место

1924  0D                   DCR   C        ; уменьшение счетчика битов

1925  C2 0B 19             JNZ   8BIT     ; если передано менее 8 бит – повтор передачи

1928  23                   INX   H        ; переход к следующему байту

1929  15                   DCR   D        ; уменьшение счетчика байт

192A  C2 09 19             JNZ   20BYTE   ; если передано менее 20 байт - повтор

192D  3E 37      END:      MVI   A,37H    ; вывод на дисплей

192F  D3 E4                OUT   DISP     ; подтверждение выполнения программы

1931  D3 E4                OUT   DISP     ;

1933  3E 77                MVI   A,77H    ;

1935  D3 E4                OUT   DISP     ;

1937  76                   HLT            ; останов

ПРИЁМНИК

1900  16 14      INTIT:    MVI   D,14H    ; количество передаваемых байтов: 20

1902  21 00 1A             LXI   H,1A00H  ; адрес начала передаваемого блока

1905  3E 8A                MVI   A,8AH    ; Настройка ППА: порт А – вывод,

1907  D3 F3                OUT   PPI      ; порт В – ввод, порт СL – вывод, порт CH – ввод.

1909  0E 08      20BYTE:   MVI   C,08H    ; количество передаваемых бит для одного байта

190B  DB F2      8BIT:     IN    PC       ; ожидание прихода сигнала STB

190D  E6 80                ANI   80H      ; от передатчика, прием производится через

190F  FE 80                CPI   80H      ; линии порта С

1911  C2 0B 19             JNZ   8BIT     ;

1914  7E                   MOV   A,M      ; подготовка байта приема

1915  E6 FE                ANI   FEH      ; обнуление младшего бита числа

1917  5F                   MOV   E,A      ; временное сохранение этого числа

1918  DB F1                IN    PB       ; прием информации в порт В

191A  E6 01                ANI   01H      ; выделение младшего бита в принятом байте

191C  83                   ADD   E        ; добавление этого бита в младший бит байта приема

191D  0F                   RRC            ; сдвиг байта приема

191E  77                   MOV   M,A      ; запись байта приема на его первоначальный адрес

191F  3E 00                MVI   A,04H    ; посылка сигнала подтверждения приема ACK

1921  D3 F2                OUT   PC       ; через порт С

1923  DB F2      STB:      IN    PC       ; ожидание снятия строба посылки

1925  E6 80                ANI   80H      ; данных STB от передатчика

1927  FE 80                CPI   80H      ;

1929  CA 23 19             JZ    STB      ;

192C  3E 00                MVI   A,00H    ; сброс сигнала ACK на линиях порта С

192E  D3 F2                OUT   PC       ;

1930  0D                   DCR   C        ; уменьшение счетчика принятых бит

1931  C2 0B 19             JNZ   8BIT     ; если меньше 8 – повтор приема

1934  23                   INX   H        ; переход к следующему байту приема

1935  15                   DCR   D        ; уменьшение счетчика принятых байт

1936  C2 09 19             JNZ   20BYTE   ; если число байт меньше 20 - повтор

1939  3E 37      END:      MVI   A,37H    ; вывод на дисплей

193B  D3 E4                OUT   DISP     ; подтверждение выполнения программы

193D  D3 E4                OUT   DISP     ;

193F  3E 77                MVI   A,77H    ;

1941  D3 E4                OUT   DISP     ;

1943  76                   HLT            ; останов

Примечание: Перед запуском программы в передатчике рекомендуется занести начиная с адреса 1А00h следующие значения: 11-22-33-44-55-66-77-88-99-AA-BB-CC-DD-EE-FF-11-22-33-44; в приемнике рекомендуется занести начиная с адреса 1А00h и по адрес 1A14h нули (00h).

Заключение: наличие встроенных средств ввода вывода информации в параллельном режиме у контроллера «Электроника МС2721» дает возможность передавать информацию, управлять различными цифровыми устройствами, получать информацию от объекта управления.

Похожие материалы

Информация о работе