Микропроцессоры.
Отчет по лабораторным работам.
Лабораторная работа №1.
Задание.
Составить программу записи вовсе порты О ЭВМ чередующихся нулей и единиц. Например в порт Р0 записать числов двоичной форме 01010101, в порт Р1 - 10101010 и т.д. Затем необходимо инвертироватьзначения во всех портах, т.е. в Р0 - 10101010, в Р1 - 01010101 и т.д.
Структурнаясхема.
Подробная структурнаясхема. NAME S | название модуля программы для сборки |
CSEG AT 0H | задание сегмента памяти программ с адреса 0Н |
ORG 0000H | задание адреса начала программы с 9000Н |
MOV P0,#01010101B | запись двоичного числа 01010101 в порт P0 |
MOV P1,#10101010B | запись двоичного числа 10101010 в порт P1 |
MOV P2,#11001100B | запись двоичного числа 11001100 в порт P2 |
MOV P3,#11001101B | запись двоичного числа 11001101 в порт P2 |
MOV A,P0 | запись данных из порта P0 в аккумулятор |
CPL A | инвертирование данных в аккумуляторе |
MOV P0,A | запись данных из аккумулятора в порт Р0 |
MOV A,P1 | запись данных из порта Р1 в аккумулятор |
CPL A | инвертирование данных в аккумуляторе |
MOV P1,A | запись данных из аккумулятора в порт Р1 |
MOV A,P2 | запись данных из порта Р2 в аккумулятор |
CPL A | инвертирование данных в аккумуляторе |
MOV P2,A | запись данных из аккумулятора в порт P2 |
MOV A,P3 | запись данных из порта P3 в аккумулятор |
CPL A | инвертирование данных в аккумуляторе |
MOV P3,A | запись данных из аккумулятора в порт P3 |
NOP | |
END |
Контрольныйпример.
В порты быливведены числа в двоичном формате: в P0 - 01010101; в P1-10101010; в P2 - 11001100; в P3 – 11001101. При запуске отладчика программы эти числа былиотображены в шестнадцатеричном виде: 55, AA, CC, CD соответственно. После выполненияпрограммы эти значения были инвертированы: AA, 55, 33,32 соответственно. Результаты совпали расчетными.
Задание.
Запуститьпрограмму, написанную в лабораторной работе №1 на отладочной плате.
Для работы сотладочной платой программа должна начинаться с адреса 9000h. Для этого необходимпсевдооператор ORG 9000H.Для отображения выполнения программы на дисплее нужен оператор CALL 87bdh. Для контроля результатовнеобходимо записать полученные данные во внешнюю память, но считывание внешнейпамяти происходит с использованием портов 0 и 2, поэтому необходимоиспользовать только порты 1 и 3.
Структурная схема.