Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задание N 6.doc
Скачиваний:
3
Добавлен:
01.04.2025
Размер:
382.98 Кб
Скачать

5. Содержание отчета

  • Задание по лабораторной работе;

  • Функциональная схема микропроцессорного устройства ввода-вывода информации;

  • Блок-схема алгоритма составляемой программы;

  • Текст программы с комментариями;

  • Временная диаграмма обмена информацией.

  1. Пример выполнения задания.

Рассмотрим пример 1.

Исходные данные

Вид

числа

ВВ/

ВЫВ

Вид

обмена

Начальный

адрес

Длина

массива

Инициатор

Уровни сигналов

МК

ВУ

УП

ВВ

ПССТ

10

Р1.7

МК

Н

Н

Функциональная схема устройства

Текст программы с комментариями:

org 0

clr P1.5 ; снятие запроса к ВУ

start:

mov R0,10h ; адрес начала массива в ОЗУ

jnb P1.7,$ ; ожидание начала обмена

next:

mov R2,#8 ; число принимаемых бит

input:

setb P1.5 ; запрос к ВУ

jnb P1.4,$ ; ожидание подтверждения от ВУ

mov C,P1.0 ; принять порцию данных

rlc A ; сохранить в аккумуляторе

clr P1.5 ; снять запрос к ВУ

jb P1.4,$ ; ожидание снятия сигнала подтверждения

djnz R2,input ; принят еще один бит и если не все процесс повторить

mov @R0,A ; сохранить принятые данные в памяти

inc R0 ; переход к следующей ячейки памяти

jb P1.7,next ; если не конец обмена, то принимаем следующие данные

jmp start ; если конец обмена, то на начало программы

end

Временная диаграмма обмена ВУ и МК:

Рассмотрим пример 2.

Исходные данные

Вид

числа

ВВ/

ВЫВ

Вид

обмена

Начальный

адрес

Длина

массива

Инициатор

Уровни сигналов

МК

ВУ

РАСП

ВЫВ

ПР

R0

ПЦ

ВУ

L

Н

Функциональная схема устройства:

Текст программы с комментариями:

org 0

start:

setb P1.5 ; снять готовность микроконтроллера к обмену

mov A,#0 ; подготовить аккумулятор к приему первой цифры

xchd A,@R0 ; в аккумулятор извлечь первую цифру массива

mov R2,A ; задать счетчик числа выводимых элементов массива

next:

mov P1,#0 ; подготовить Р1 к выводу данных

mov A,#0 ; подготовить аккумулятор к приему элемента массива

xchd A,@R0 ; извлечь текущий элемента массива

jnb P1.4,$ ; ожидать запрос от ВУ

clr P1.5 ; установить сигнал готовности

orl P1,A ; вывести данные

setb P1.5 ; снять сигнал готовности

jb P1.4,$ ; ожидать снятия сигнала запроса

inc R0 ; перейти к следующему элементу массива

djnz R2,next ; число выведенных элементов на один меньше

; и если не все элементы выведены процесс повторить

jmp start ; после вывода всего массива переход на начало программы

end

Временная диаграмма обмена ВУ и МК:

7

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]