Работа порта приёма | ||||||
0А00 | F3 | запрет прерываний. | ||||
0А01 | 06 | (В2)-рег.(В) MVI B | ||||
0А02 | 05 | количество байт инф. принимаемых в порту. | ||||
0А03 | 16 | (В2)-рег.(D) MVI D | рег D E содержат адрес ОП куда надо записать данные | |||
0А04 | OB | старший разряд адреса ячейки памяти. | ||||
0А05 | 1E | (В2)-рег.(Е) MVI E | ||||
0А06 | FF | младший разряд адреса ячейки памяти. | ||||
0А07 | 3E | MVI A (следующий байт в аккумулятор) | загр. В аккум УС парал.порта | |||
0А08 | 99 | УС реж. параллельного порта | ||||
0А09 | D3 | OUT (вывод УС из аккум. В БУ) | загр. УС из аккум. в БУ парал.порта | |||
0А0А | 9B | БУ пар.порта | ||||
0А0В | DB | IN (загрузка содержимого канала С в аккум) | цикл проверяющий готовность порта принимать информацию если 4-ый разряд канала С 1- готов 0-не готов. | |||
0А0С | 9A | адрес канала С | ||||
0А0D | E6 | ANI (поразрядная конъюнкция) | ||||
0A0E | 10 | выделение 4-го разряда | ||||
0A0F | CA | JZ (A==0 ―› переход (В3 В2)) | условный переход | |||
0A10 | OB | L-младший байт перехода. | ||||
0A11 | OA | H-старший байт перехода. | ||||
0A12 | DB | IN (загрузка аккум. из В2) | загрузка содерж. рег. В2 по кан. А в аккум | |||
0A13 | 98 | адрес канала А | ||||
0A14 | 12 | STAX (A) ―›M по адр. в паре регистров (E)(D) |
| |||
0A15 | 05 | DCR B (B)-1 | уменьшение на 1 адресов ОП рег. В Е | |||
0A16 | 1D | DCR E (E)-1 | ||||
0A17 | F8 | MOV A,B для сравнения (В) ―›(А) | сод. рег.В помещ. в аккум для послед ср. | |||
0A18 | C2 | JNZ (A≠0 ―› переход на В3 В2) | условный переход | |||
0A19 | OB | L-младший байт перехода | ||||
0A1A | 0A | H-старший байт перехода | ||||
0A1B | C3 | JMP―›B3B2 | безусловный переход на таймер | |||
0A1C | 00 | L-младший байт перехода | ||||
0A1D | 08 | H-старший байт перехода | ||||
Работа таймера | ||||||
0800 | 3E | MVI A | загрузка в аккум. УС1 таймера | |||
0801 | 82 | УС1 таймера | ||||
0802 | 03 | OUT | вывод УС1 в БУ таймера | |||
0803 | 72 | адрес БУ таймера | ||||
0804 | 3E | MVI A | загрузка данных по задержке в СЧ2 | |||
0805 | 0C | младший байт задержки | ||||
0806 | D3 | OUT | ||||
0807 | 71 | адрес СЧ2 | ||||
0808 | 3E | MVI A | ||||
0809 | 10 | старший байт задержки | ||||
080А | D3 | OUT | ||||
080В | 71 | адрес СЧ2 | ||||
080C | 3E | MVI A | загрузка в таймер УС2 для считывания СС | |||
080D | E8 | УС2 счётчика для считыв. СС | ||||
080E | D3 | OUT | ||||
080F | 72 | адрес БУ таймера | ||||
0810 | DB | IN | загрузка СС из БУ в аккумулятор | |||
0811 | 72 | адрес БУ таймера | ||||
0812 | E6 | ANI (поразрядная конъюнкция) | проверка окончания счёта 1-кон. 0-не конец | |||
0813 | 40 | выделение 6-го разряда | ||||
0814 | CA | JZ (A==0 ―› переход (В3 В2)) | сравнение аккум. с 0 если 0-переход 1-дальше. | |||
0815 | 10 | L-адр.перехода | ||||
0816 | 08 | H-адр.перехода | ||||
0817 | C3 | JMP | безусловный переход на порт выдачи | |||
0818 | 00 | L-адр.задержки | ||||
0819 | 09 | H- адр.задержки | ||||
Работа порта выдачи | ||||||
0900 | 06 | MVI B | загрузка в параллельный порт управляющего слова режима и управляющего слова команды | |||
0901 | 05 | кол-во байт информации | ||||
0902 | 1E | MVI E | ||||
0903 | FF | L разряда вдреса | ||||
0904 | 3E | MVI A | ||||
0905 | FF | УСреж. П- |
| |||
0906 | D3 | OUT | ||||
0907 | 81 | адрес БУ П- | ||||
0908 | 3E | MVI A | ||||
0909 | 15 | УСком. П- | ||||
090A | D3 | OUT | ||||
090B | 81 | адрес БУ П- | ||||
090C | 1A | LDAX D,E | вывод информации в порт | |||
090D | D3 | OUT | ||||
090E | 81 | адрес буфера данных П- | ||||
090F | 05 | DCR B (код кол-ва байт) | уменьшение В-1 Е-1 | |||
0910 | 1D | DCR E (мл. разряд адреса в ОП) | ||||
0911 | 78 | MOV A,B (из В в аакум.) | згр. из В в аккум | |||
0912 | C2 | JNZ (A≠0) ―› перех. на В3В2 | условный переход если А≠0 переход если А=0 след. ком.
| |||
0913 | 0C | L (мл.адрес перехода) | ||||
0914 | 09 | H (ст.адрес перехода) | ||||
0915 | F8 | Е1 (разрешение прерываний) | ||||
0916 | 76 | HTL (останов) | ||||
6. Схема контроллера.
7.Вывод:
Мы практически разработали функциональную схему контроллера на основе БИС микропроцессорного комплекса 580 серии и программу работы модулей проектируемого контроллера, который должен по запросу от управляемого объекта вызвать подпрограмму приёма в параллельном или последовательном коде N-байтов управляющего сообщения, в котором указывается произвольный управляющий шеснадцатиричный код, и записать его в модуль оперативной памяти. Затем перейти к подпрограмме временной задержки, реализуемую таймером. После истечения заданного времени задержки контроллер должен перейти к подпрограмме выдачи N-байтов принятого и задержанного управляющего сообщения в последовательном или параллельном коде в управляемый объект. Способ приёма и выдачи управляющей информации, время задержки указываются в варианте проекта.
Таким образом, проделав данную работу мы практически применили наши знания о модулях микропроцессорной ЭВМ. Закрепили знание команд микропроцессора В580ВМ80. Полностью разобрались с принципами составления управляющих слов портов ввода-вывода и таймера.
2019-12-29 | 167 | Обсуждений (0) |
5.00
из
|
Обсуждение в статье: Программа работы контроллера |
Обсуждений еще не было, будьте первым... ↓↓↓ |
Почему 1285321 студент выбрали МегаОбучалку...
Система поиска информации
Мобильная версия сайта
Удобная навигация
Нет шокирующей рекламы