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

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

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.

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

Лабораторная работа №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» дает возможность передавать информацию, управлять различными цифровыми устройствами, получать информацию от объекта управления.

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

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

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.