Referat.me

Название: Лабораторные по информатике

Вид работы: реферат

Рубрика: Информатика и программирование

Размер файла: 55.55 Kb

Скачать файл: referat.me-138274.zip

Краткое описание работы: NAME P7.8 CSEG AT 0H ORG 0H MOV R2, #3 MOV B, #167 MOV A P1 MOV R3, A M1: MOV R4, #135 MOV A, R2 MOV P2, A SETB 3.7 CLR 3.7 SETB 3.7 M2: NOP DJNZ R4, M2 MOV A, P1 SUBB A, R3

Лабораторные по информатике

Микропроцессоры.

Отчет по лабораторным работам.


Лабораторная работа №1.

Задание.

Составить программу записи во все порты О ЭВМ чередующихся нулей и единиц. Например в порт Р0 записать число в двоичной форме 01010101, в порт Р1 - 10101010 и т.д. Затем необходимо инвертировать значения во всех портах, т.е. в Р0 - 10101010, в Р1 - 01010101 и т.д.

Структурная схема.

Блок-схема: знак завершения: Конец.Подробная структурная схема.

P0←A

 

CPL A.

 

A←P0

 

P0←01010101; P1←10101010; P2←11001100; P3←11001101

 

P1←A

 

CPL A

 

A←P1

 

A←P2

 

CPL A

 

P2←A

 

P3←A

 

CPL A

 

A←P3

 

Блок-схема: знак завершения: Конец.

Пересылка данных из А в порты.

 

Инвертирование данных в A.

 

Загрузка данных в порты.

 

Пересылка в A содержимого портов.

 

Программа.

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 соответственно. Результаты совпали расчетными.

Лабораторная работа №2.

Задание.

Запустить программу, написанную в лабораторной работе №1 на отладочной плате.

Для работы с отладочной платой программа должна начинаться с адреса 9000h. Для этого необходим псевдооператор ORG 9000H. Для отображения выполнения программы на дисплее нужен оператор CALL 87bdh. Для контроля результатов необходимо записать полученные данные во внешнюю память, но считывание внешней памяти происходит с использованием портов 0 и 2, поэтому необходимо использовать только порты 1 и 3.

Структурная схема.

Пересылка данных из А в порты.

 

Инвертирование данных в A.

 

Пересылка в A содержимого портов.

 

Загрузка данных в порты.

 


Пересылка данных из портов через A в ячейки внутренней памяти.

 

Пересылка в A содержимого ячеек внутренней памяти.

 

Пересылка данных из A в ячейки внешней памяти.

 

Блок-схема: решение: R5=0

нет

 

да

 
Блок-схема: знак завершения: Конец.


Подробная структурная схема.

20H←P1

 

P1←A

 

CPL A

 

A←P1

 

P1←01010101, P3←11001100

 

21H←P1; 23H←P3

 

A←P3

 

P1←A

 

CPL A

 

A←P1

 

P1←10101010; P3←11001101

 

A←P3

 

22H←P3

 

P3←A

 

CPL A

 

да

 

нет

 

Блок-схема: знак завершения: Конец.

A←M(R0)

 
Блок-схема: решение: R5=0

Подготовка следующих ячеек R0←R0H, DPTR←DPTR+1

 

M(DPTR)←A

 

R0←20H; DPTR←0; R5←10

 

Программа.


NAME S

название модуля программы для сборки

CSEG AT 0H

задание сегмента памяти программ с адреса 0Н

ORG 9000H

задание адреса начала программы с 9000Н

MOV P1,#10101010B

запись двоичного числа 10101010 в порт P1

CALL 87bdh

MOV P3,#11001101B

запись двоичного числа 11001101 в порт P3

CALL 87bdh

MOV A,P1

запись данных из P1 в аккумулятор

CALL 87bdh

CPL A

инвертирование данных в аккумуляторе

CALL 87bdh

MOV P1,A

запись данных из аккумулятора в порт Р1

CALL 87bdh

MOV A,P3

запись данных из порта P3 в аккумулятор

CALL 87bdh

CPL A

инвертирование данных в аккумуляторе

CALL 87bdh

MOV P3,A

запись данных из аккумулятора в порт Р3

CALL 87bdh

MOV 21H,P1

запись данных из порта P1 в ячейку памяти с адресом 21H

CALL 87bdh

MOV 23H,P3

запись данных из порта P3 в ячейку памяти с адресом 21H

CALL 87bdh

MOV P1,#01010101B

запись двоичного числа 01010101 в порт P1

CALL 87bdh

MOV A,P1

запись данных из порта P1 в аккумулятор

CALL 87bdh

CPL A

инвертирование данных в аккумуляторе

CALL 87bdh

MOV P1,A

запись данных из аккумулятора в порт P1

CALL 87bdh

MOV 20H,P1

запись данных из порта P1 в ячейку памяти с адресом 20H

CALL 87bdh

MOV P3,#11001100B

запись двоичного числа 11001100 в порт P3

CALL 87bdh

MOV A,P3

запись данных из порта P1 в аккумулятор

CALL 87bdh

CPL A

инвертирование данных в аккумуляторе

CALL 87bdh

MOV P3,A

запись данных из аккумулятора в порт P3

CALL 87bdh

MOV 22H,P3

запись данных из порта P3 в ячейку памяти с адресом 20H

CALL 87bdh

MOV R0,#20H

в регистр R0 заносится операнд 20H

CALL 87bdh

MOV DPTR,#0

адресация внешней памяти

CALL 87bdh

MOV R5, #10

загрузка счетчика

CALL 87bdh

M1: MOV A,@R0

пересылка в аккумулятор содержимого внутренней памяти

CALL 87bdh

MOVX @DPTR,A

пересылка из аккумулятора во внешнюю память, адресуемую регистром DPTR

CALL 87bdh

INC R0

 увеличение адреса внутренней памяти на 1;

CALL 87bdh

INC DPTR

 увеличение адреса внешней памяти на 1;

CALL 87bdh

DJNZ R5,M1

уменьшение счетчика на 1 и проверка его на 0, если его значение не равно 0, то переход на M1

CALL 87bdh

NOP

END

Контрольный пример.

В порты были введены числа в двоичном формате: в P0 - 01010101; в P1-10101010; в P2 - 11001100; в P3 – 11001101. На дисплее платы эти числа были отображены в шестнадцатеричном виде: 55, AA, CC, CD соответственно. После выполнения программы эти значения были инвертированы: AA, 55, 33, 32 соответственно и записаны в ячейки внешней памяти. Результаты совпали с расчетными.

Похожие работы

  • Регистратор дискретных сигналов

    Содержание Введение Постановка задачи Аппаратная часть 2.1 Структура устройства 2.2 Описание принципиальной электрической схемы 2.3 Описание используемых микросхем

  • Проектирование системы сбора данных

    ФИЛИАЛ МОСКОВСКОЙ ГОСУДАРСТВЕННОЙ АКАДЕМИИ ПРИБОРОСТРОЕНИЯ И ИНФОРМАТИКИ В Г. УГЛИЧ Кафедра « ТОЧНЫЕ ПРРИБОРЫ И ИЗМЕРИТЕЛЬНЫЕ СИСТЕМЫ КУРСОВОЙ ПРОЕКТ

  • Программа, формирующая таблицу истинности для функции F=A+C*(B+D)

    Министерство образования Российской Федерации Рязанский государственный технологический колледж ПОЯСНИТЕЛЬНАЯ ЗАПИСКА к курсовой работе по предмету

  • Микроконтроллеры семейства MCS51 Intel

    Инструкции MCS51 Intel Инструкции, модифицирующие флаги (1) Инструкция C OV AC Инструкция C OV AC CLR C ADDC CPL C SUBB ANL C,bit ANL C,/bit ORL C,bit ORL C, bit

  • Microsoft Exel

    ВОПРОСЫ К ЭКЗАМЕНУ ПО ИНФОРМАТИКЕ 2 семестр Табличные процессоры. Классификация. Табличный процессор Excel. Назначение. Основные приемы работы в Excel: ведение рабочей книги.

  • Счетчик обратного отсчета

    Разработка программы на языке Assembler, отсчитывающую время от заданного значения до 0. Осуществление ввода с помощью стандартной шестнадцатикнопочной терминальной клавиатуры, подключаемой к параллельному порту (P1). Логика построения программы.

  • Розробка програми передачі даних через послідовний порт мікроконтролера

    Розрахунок часових затримок для формування імпульсів у програмі передачі даних через послідовний порт мікроконтролера, а також розрахунок швидкості передачі даних через послідовний порт. Алгоритм підпрограми обробки переривань від послідовного порту.

  • Проект электронных весов с микропроцессорным управлением

    Понятие, сущность, виды и микропроцессорное устройство весов. Структурная схема и алгоритм работы электронных весов, особенности выбора для них датчика давления, индикатора и микроконтроллера. Принципы формирования принципиальной электрической схемы.

  • Ассемблер и программирование

    Особенности упорядочения байтовых переменных. Сущность процесса преобразования байтового массива в неупакованном BCD формате. Листинг программы, загружающей в регистр DL номер самого младшего бита, содержащего 1. Порядок определения размера файла из DTA.

  • Контроллеры

    Анализ и классификация аппаратных и программных средств контроллеров. Машинно-ориентированные языки. Специализированные языки. АЛУ.