Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Электроника_ часть 2.rtf
Скачиваний:
12
Добавлен:
01.07.2025
Размер:
60.65 Mб
Скачать

10.3. Порядок выполнения работы

10.3.1.Включить УМК в сеть, для этого выполнить следующие операции:

  • подключить вилку УМК в сеть переменного тока 220В;

~

  • нажать клавишу ;

СБ

- нажать клавишу , при этом в левой позиции шести­разрядного дисплея должен появиться знак минус, Если этого не произойдет, то нужно обратиться к преподава­телю, предварительно отключив УМК от сети отжатием клавиши.

~

10.3.2.Просмотреть содержимое ПЗУ, имеющее адрес 0000…03FF,. воспользовавшись пунктом 10.2.1. общей части,

10.3.3.Записать в ОЗУ по адресу 0800 любое число, воспользо­вавшись пунктом 10.2.2. общей части.

10.3.4.Записать константу АА в массив памяти 0810...082F. Убедиться в том, что константа действительно записана в массив. Использовать пункты 10.2.4. и 10.2.1.

10.3.5.Вычислить контрольную сумму массива памяти по адресу 0000…2000. Воспользоваться пунктом 10.2.6. общей части.

1

~

0.3.6.Поочередно вывести на дисплей значении всех регистров микропроцессора и записать их значения в таблицу. Воспользоваться пунктом 10.2.3.

10.3.7. Отключить УМК из сети, отжав клавишу .

10.4. Контрольные вопросы

10.4.1. Перечислить названия директивных клавиш.

10.4.2. Что такое РОН ?

10.4.3. Что такое монитор ?

10.4.4. В каких режимах может работать УМК, как установить эти режимы ?

10.4.5. Как запустить программу на выполнение ?

10.4.6. Как осуществить отладку программы пользователя ?

10.4.7. Как занести программу в память МП?

10.4.8. Какие индикаторы выведены на панель УМК ?

10.4.9. Какие информационные клавиши УМК вы знаете ?

10.4.10. Какие команды монитора вы знаете ?

    1. Указания о содержании отчета

Отчет должен содержать название лабораторной работы, её цель, ответы на контрольные вопросы и результаты выполнения пунктов 10.3.3.5 и 10.3.3.6.

11. Лабораторная работа .№ 8

  1. Составление и выполнение простых программ

11.1. Цель работы

Научиться настраивать микросхему К580ВВ55А на ввод-вывод и оставлять простейшие программы на языке ассемблера.

11.2. Общая часть

Порядок составления программ для микропроцессора УМК тот же, что изучался в курсе "Вычислительная техника и программирование":

- на основе анализа производится выбор решения поставлен­ной задачи;

- составляется алгоритм решения;

- в соответствии с алгоритмом записывается программа да языке ассемблера;

- производится перевод программы в машинные коды ( в шестнадцатеричной системе счисления);

- выполняется ввод программы в УМК и производится её отладка;

- программа запускается на выполнение.

Элементарное действие, выполняемое микропроцессором называ­ется командой. Команда, записанная в строке программы, называется оператором. Микропроцессор, K580ВМ80А работает в двоичной сис­теме счисления, шина данных у него является восьмиразрядной (один байт), поэтому максимальное число команд МП составит 28 = 256 команд. Человеку трудно запомнить такое число двоичных чисел, вместо этого каждой комбинации нулей и единиц (двоичному числу) поставлено в соответствие сокращение английских слов, которое называется мнемоническим кодом.

Например, чтобы переслать содержимое регистра А в регистр

В нужно выполнить команду- 01000111. В мнемоническом коде эта команда будет выглядеть так MOV А,В (от англ. глагола move- двигать).

Все команды микропроцессора можно разделить на 3 ос­новные группы:

- команды пересылок;

- арифметические и логические команды;

- команды управления.

Назначение каждой команды приведено в приложении А, более под­робно о них узнать в 14.11. Команды могут быть однобайтные, двух­байтные и трехбайтные. т.е. занимать в ОЗУ одну, две или три ячейки памяти.

В любой команде сначала записывается код операции, который всегда занимает один байт. Если в команде задаются данные, то для записи восьмиразрядных данных требуется один байт, а для шестнадцатиразрядных - два байта. Так как нумерация адресов шестнадцатиразрядная, то команды управления занимают три байта, причем при записи адреса сначала записывается младший байт адре­са, а затем старший байт адреса.

Для полного использования возможностей микропроцессора все программы пишутся, как правило, на языке ассемблера (используется мнемонический код). Для этого в каждой строке программы пишут один оператор. а вся программа разбивается на 4 поля:

поле метки, поле мнемокода, поле операнда и поле комментария.

Метка - условное обозначение адреса перехода в программе. Меткой может быть последовательность пяти буквенно-цифровых символов, причем первым символом может быть только буква. Метка отделяется от поля мнемокода символом двоеточие, например:

МI:, М34:, S210:, и т.д.

Поле мнемокода - содержит код операции, например MOV, LDA и т.д.

Поле операндов - содержит дополнительную информацию, необходимую для выполнения команды. Например, указатель регистра или регистровой пары, адрес памяти, данные и т.д.

Существует четыре типа операндов:

- регистр;

- регистровая пара;

- непоcредственные данные (одно- или двухбайтовые);

- адрес памяти (двухбайтовый).

Поле комментария - отделяется от поля операнда символом точка с запятой. Комментарий служит для пояснения работы програм­мы, он помогает выявить ошибки в программе . Первоначально нуж­но указать по какому адресу будет располагаться программа . Для этого служит директива ORG. В УМК пользователю для программ отведена область ОЗУ с адресами 0800н…0ВFFн. Приводим пример программы на языке ассемблера

OBFFн

Поле

метки

Поле

мнемокода

Поле

операнда

Поле

комментария

ORG

0800

; начальный адрес программы

MI:

MVI

A,80

; настройка УВВ

OUT

93

; настройка УВВ

MVI

A,AA

; запись числа в регистр А

OUT

90

; вывод в порт светодиодов

JMP

MI

; возврат на начало программы

Как правило, последним оператором программы является коман­да остановки HLT , После написания программы ее нужно перевести в машинные коды. Для УМК эта операция делается вручную, а для сложных и длинных программ нужно использовать персональную ЭВМ со специальной программой, которая называется кросс- ассемблер.

Она позволяет производить отладку и перевод программы в шестнадцатеричные коды с использованием дисплея персональной ЭВМ.

При ручном переводе необходимо из приложения А выписать двоичные коды команд на мнемонике, подставив в них коды регистров, регистровых пар, проверок условий и т.д. Затем двоичные числа переводят в шестнадцатеричные и заносят их по ячейкам памяти, Этот перевод необходим, чтобы ускорить ввод программы. Приведенная ранее программа будет иметь вид:

Адрес

Код

При переводе следует помнить, что нумерация адресов ячеек памяти - шестнадцатеричная, а при записи адресов перехода вначале указывается младший байт адреса, а затем старший байт адреса. Поэтому, после команды JMP-СЗ в ячейку с адресом 0809 записан вначале младший байт адреса 00 метки MI с адресом 0800 а в ячейку с адресом 080А записан старший байт метки MI-08.

0800

0801

80

0802

D3

0803

93

0804

0805

АА

0806

D3

0807

90

0808

C3

0809

00

080A

08

В любой реальной программе для управления каким-либо техно­логическим процессом всегда осуществляется ввод и вывод информа­ции (например, ввод информации от датчиков, обработка полученных -сигналов и вывод информации). Поток информации поступает через порты ввода и вывода микросхемы К560ВВ55А с помощью команд IN и OUT . Она имеет три восьмиразрядных порта А,В,С, которые могут работать как на ввод, так и на вывод информации в различных режи­мах и регистр управляющего слова (РУС). Восьмиразрядный порт С можно использовать как два четырехразрядных: С старший (D4 … D7) и порт С младший (D0 … D3). Для того, чтобы настроить микросхему на требуемый режим необходимо записать определенное восьмиразрядное число в шестнадцатеричной форме в так называемый регистр управляющего слова (РУС).

Для этого число нужно составить, перевести его в шестнадцатиричную форму, записать в аккумулятор (регистр А микропроцессора) с помощью команды MVI и вывести в РУС с помощью команды OUT. В УМК тумблеры и светодиоды макетной панели подключены к портам в соответствии с таблицей 11.1.

Таблица 11.1

Нагрузка

Порт

Адрес

Светодиоды

А

90Н

Тумблеры

В

91Н

Свободный

С

92Н

-

РУС

93Н

Само число имеет восемь разрядов (D7…D0). Чтобы составить число, которое нужно загрузить в РУС, нужно воспользоваться сле­дующей информацией:

D7 D6 D5 D4 D3 D2 D1 D0

1

Порт С младший:

1 – ввод

0 – вывод

Порт В:

1 – ввод

0 – вывод

Режим работы портов В и С мл.:

0 – режим 0;

1 – режим 1.

Порт С старший:

1 – ввод,

0 – вывод.

Порт А:

1 – ввод, 0 – вывод.

Режим работы портов А и С старшего:

00 - режим 0,

01- режим 1,

1* - режим 2.

В этом разряде всегда должна быть «1»

В УМК мы будем пользоваться режимом работы портов А,В,С, - 0, что означает простой ввод-вывод.

Если какой-либо порт не используется, то в соответствующие разряды вписывают нули.

Знак * означает, что число может быть любое ( 0 или 1).

Например, нужно настроить порт А на ввод, а порт В на вывод. В этом случае число, записанное в РУС будет иметь вид:

10010000

В шестнадцатеричной форме число будет 90Н. Чтобы настроить мик­росхему К580ВВ55А нужно выполнить две команды:

MVI A,90H; запись составленного числа в аккумулятор

OUT 93H; вывод числа в РУС.