|
Работа порта приёма | ||||||
| 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. Полностью разобрались с принципами составления управляющих слов портов ввода-вывода и таймера.
|
из
5.00
|
Обсуждение в статье: Программа работы контроллера |
|
Обсуждений еще не было, будьте первым... ↓↓↓ |

Почему 1285321 студент выбрали МегаОбучалку...
Система поиска информации
Мобильная версия сайта
Удобная навигация
Нет шокирующей рекламы