Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1-2009 ДГЦУиМП

.pdf
Скачиваний:
12
Добавлен:
26.03.2016
Размер:
1.53 Mб
Скачать

ГОУ впо «Воронежский государственный технический университет»

Кафедра радиотехники

1-2009

ПРОГРАММИРОВАНИЕ ОДНОКРИСТАЛЬНЫХ МИКРОПРОЦЕССОРОВ ПРИ ВЫПОЛНЕНИИ ОПЕРАЦИЙ С ПАМЯТЬЮ И РЕГИСТРАМИ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

по выполнению лабораторных работ № 1 - 4 по курсу «Цифровые устройства и микропроцессоры»

для студентов специальности 210302 «Радиотехника» очной и очно-заочной форм обучения

Часть 2

Воронеж 2009

Составитель каид. техн. наук Е.Д. Алперин

УДК 621.397.62

Программирование однокристальных микропроцессоров при выполнении операций с памятью и регистрами: методиче­ ские указания по выполнению лабораторных работ № 1 - 4 по курсу «Цифровые устройства и микропроцессоры» для сту­ дентов специальности 210302 «Радиотехника» очной и очно­ заочной форм обучения. Ч. 2. / ГОУВ1 К) «Воронежский госу­ дарственный технический университет»; сост. К.Д. Алперин. Воронеж, 2009. 40 с.

В методических указаниях изложены требования и реко­ мендации по выполнению лабораторных работ, их объему и содержанию.

ЩРуе? Шо!. 3-4 курсов.

■!Ш1 Ш - Н

I. М.И. Бочаров

зав. кафедрой профессор

ционно-издательского совета ехнического университета

[О «Воронежский государе т- й технический университет ».

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

ИЗУЧЕНИЕ РЕЖИМОВ УЧЕБНОГО МИКРОПРОЦЕССОРНОГО КОМПЛЕКТА НА БАЗЕ КР580ИК80А

1. ОБЩИЕ УКАЗАНИЯ

Цель работы: приобретение практических навыков рабо­ ты на учебном микропроцессорном комплекте (УМК).

В процессе работы осуществляется ознакомление с орга­ нами управления, ввода, индикации УМК, изучаются все ре­ жимы работы УМК.

Предварительной домашней подготовки работа не требует.

Используемое оборудование

Учебный микропроцессорный комплект на базе КР580ИК80А (УМК)

1.1. Назначение органов управления, ввода, индикации УМК

- кнопка включения/выключения УМК служит для включения (нажатое положение кнопки) и выключения (отжа­ тое положение) УМК. Над кнопкой размещены три светодио­ да, позволяющие индицировать перегрузку блока питания, со­ ответственно по +5 В; -5 В и 12 В.

СБ - кнопка СБРОС, служит для инициализации систем­ ной программы МОНИТОР. После нажатия на эту кнопку осуществляется запуск программы МОНИТОР и в левой пози­ ции шестисегментного дисплея появляется символ УМК готов к приему команд.

ПР - кнопка ПРЕРЫВАНИЕ, при нажатии которой выра­ батывается сигнал запрос на прерывание седьмого уровня и, если прерывания разрешены, управление будет передано на адрес 38Н. Начиная с этого адреса, располагается программа

обработки прерывания. Если кнопка ПР будет нажата во время работы программы МОНИТОР (на любой стадии), на дисплее будет выведен символ в противном случае на дисплей бу­ дет выведен адрес точки прерывания и управление будет пере­ дано программе МОНИТОР.

РБ/ШГ, КМ/ЦК, ШГ - кнопки, осуществляющие пошаго­ вый режим работы УМК. Нажатием кнопок РБ/ШГ и КМ/ЦК устанавливается режим работы УМК. Каждое нажатие кнопки ШГ вызовет выполнение текущей команды (цикла). При этом

впокомандном режиме на светодиодах индикации состояния шин данных, адреса и управляющих сигналов, расположенных

вцентре в центре лицевой панели УМК, будут высвечиваться

вдвоичном коде соответственно, адрес и код выполняемой команды, а также управляющие сигналы микропроцессора. При работе по командным циклам на светодиодах индикации будет отражаться информация, соответствующая каждому ма­ шинному циклу. Для работы в автоматическом режиме обе клавиши РБ/ШГ и КМ/ЦК должны быть в отжатом состоянии.

Клавиатура УМК располагается в правой нижней части лицевой панели и разделена на две части.

Влевой части расположены функциональные клавиши. За каждой клавишей закреплена определенная функция систем­ ной программы МОНИТОР.

П - просмотр и модификация содержимого ячейки памяти; РГ - просмотр и модификация содержимого регистра мик­

ропроцессора;

СТ - старт программы; КС - подсчет контрольной суммы;

ЗК - заполнение массива памяти константой; ПМ - перемещение массива Памяти;

- разделитель;

ВП - выполнить.

Правая часть клавиш предназначена для ввода параметров в шестнадцатеричной форме. В дальнейшем подразумевается, что все вводимые и выводимые данные имеют шестнадцате-

2

ричный формат. На них выгравированы символы: 0, 1, 2, 3,4, 5,6,7, 8, 9, А, В, С, Б, Е, Б. Кроме этого, на клавишах 4,5, 6, 7, 8, 9 под цифрами выгравированы идентификаторы регистров микропроцессора:

PH - старший байт счетчика команд; РЬ - младший байт счетчика команд; ЭН - старший байт указателя стека; 8Ь - младший байт указателя стека; Н - регистр Н; Ь - регистр Ь.

Для идентификации остальных регистров микропроцессо­ ра используют клавиши:

А- регистр А;

В- регистр В;

С - регистр С; Б - регистр Б;

Е- регистр У;

Р- регистр Б.

Шестисегментный дисплей расположен в центре лицевой панели УМК над клавиатурой и предназначен для отображе­ ния данных в шестнадцатеричной форме (как вводимых, так и результата). При этом левые четыре сегмента используются для отображения данных типа адреса и идентификаторов реги­ стров микропроцессора, а правые два - для отображения дан­ ных типа байт. Светодиоды индикации состояния шин адреса, данных и управляющих сигналов микропроцессора располо­ жены в центре лицевой панели УМК. Шина адреса состоит из 16 светодиодов, шина данных - из 8 светодиодов (для отобра­ жения в двоичном виде). Над ними выгравированы надписи, соответственно, АДРЕС и ДАННЫЕ. Под каждым светодио­ дом этих шин выгравированы номера разрядов, которым они соответствуют. Под ними размещены светодиоды управляю­ щих сигналов микропроцессора с соответствующими надпи­ сями - СОСТОЯНИЕ и название сигналов.

3

1.2. Включение и запуск УМК

Для включения УМК необходимо а) отжать (выключить) кнопку СЕТЬ, если она была вклю­

чена; б) подключить сетевой шнур к сети переменного тока на­

пряжением 220 В и частотой 50 Гц; в) нажать кнопку СЕТЬ. При этом не должны загораться

светодиоды защиты +5 В, -5 В, +12 В. Повторное включение УМК должно производиться не менее чем через 20 с после вы­ ключения. В противном случае срабатывает защита блока пи­ тания и загораются соответствующие светодиоды защиты. В этом случае необходимо выключить УМК и дождаться, когда светодиоды защиты погаснут, и только после этого можно по­ вторно включить УМК. Для запуска УМК необходимо: отжать кнопки РБ/ШГ и КМ/ЦК, тем самым перевести УМК в автома­ тический режим работы; нажать кнопку СБ. При этом в левой части дисплея появится символ что означает, что УМК го­ тов к работе и находится в состоянии приема команд.

1.3. Команды системного монитора УМК

Для ввода команды в УМК необходимо:

а) на функциональной клавиатуре нажать клавишу, соот­ ветствующую выбранной команде. При этом экран дисплея погаснет;

б) ввести параметры команды (если их несколько, то меж­ ду ними необходимо нажать клавишу разделитель. По мере ввода данных они будут отображаться в соответствующей час­ ти дисплея. При вводе параметров необязательно вводить ли­ дирующие нули. Длина параметра не ограничена, однако, при вводе параметров, отображающих адреса, существенными яв­ ляются только четыре правые позиции, а при вводе байтовых значений - только два;

4

в)

нажать клавишу ВП. Результат выполнения команд

появится на дисплее. Если при вводе команды будет допущена

ошибка, на экране дисплея будет выведен символ

и коман­

да будет снята.

 

1.3.1.Команда ПРОСМОТР и МОДИФИКАЦИ

СОДЕРЖИМОГО ЯЧЕЙКИ

Эта команда для отображения или записи в память дан­ ных. Для выполнения этой команды необходимо:

а) нажать клавишу П; б) ввести адрес ячейки памяти, например, 800 Н;

в) нажать клавишу ВП. На дисплее в правой части появит­ ся содержимое заданной ячейки 800 XX;

г) ввести новое значение 0(00); д) нажать клавишу осуществляется переход к следую­

щей ячейке памяти 801 XX;

е) ввести новое значение - 1(01); ж) действуя аналогично пунктам д), е), ввести далее зна­

чения: 2, 3,4, 5, 6, 7, 8, 9, А, В, С, D, Е, F; з) нажать клавишу ВП.

На этом выполнение данной команды ЗАПИСЬ В ПА­ МЯТЬ будет закончено. УМК перейдет в режим ввода сле­ дующей команды.

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

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

б) ввести адрес ячейки памяти - 800 Н; в) нажать клавишу ВП. На дисплее должно появиться:

80000; г) нажать клавишу разделитель801 01;

д) и т.д. до появления на дисплее 80F 0F.

Таким образом, Вы можете просмотреть содержимое ячеек 800Н - 80FH. Оно должно совпадать с тем, что Вы ввели раньше;

е) введите ВП.

5

1.3.2. Команда ПРОСМОТР и МОДИФИКАЦИЯ СОДЕРЖИМОГО РЕГИСТРА

Эта команда используется, как для просмотра, так и моди­ фикации регистров микропроцессора.

Изменим содержимое регистров микропроцессора А и В: а) нажмите клавишу РГ; б) введите идентификатор регистра А-А (на клавиатуре

ввода данных). На дисплее появится содержимое регистров А: А - XX;

в) введите новое значение:

А -О А ; г) нажмите клавишу разделитель; д) введите идентификатор В-В:

В - XX; е) введите новое значение - ОВ:

В - ОВ; ж) нажмите клавишу ВП.

Для проверки правильности выполнения команды выпол­ ните следующие действия:

а) нажмите клавишу РГ; б) введите идентификатор регистра А-А, должно появить­

ся на дисплее: А - ОА; в) нажмите клавишу разделитель;

г) введите идентификатор регистра В-В, должно появиться на дисплее: В - ОВ;

д) нажмите клавишу ВП.

1.3.3. Команда СТАРТ ПРОГРАММЫ

Эта команда используется для запуска и отладки программ пользователя. Для выполнения этой команды необходимо предварительно записать в память машинные коды програм­ мы, например, кода последовательности пустых команд NOP-OOH.

6

Используя команду монитора ПРОСМОТР и МОДИФИ­ КАЦИЯ СОДЕРЖИМОГО ЯЧЕЙКИ, запишите в ячейку памя­ ти с адресами 800Н-80ЕН коды команды NOn-OOH, а в ячей­ ку с адресом 80FH, код команды RST7-FFH, выполняющей функцию программного прерывания для прекращения выпол­ нения программы на адресе 80FH.

Для запуска программы с начала адреса 800Н, без уста­ новки точек останова:

а) нажмите клавишу СТ; б) введите стартовый адрес - 800Н; в) нажмите клавишу ВП.

На дисплее появится адрес 810. Программа выполнена. Для запуска программы с установом точек останова необ­

ходимо:

а) нажать кнопку СТ; б) ввести стартовый адрес программы - 800Н;

в) установить альтернативные точки останова: нажать кла­ вишу разделитель, на дисплее появится символ

г) ввести адрес первой точки останова - 803Н; д) нажать клавишу разделитель, на дисплее появится сим­

вол

е) ввести адрес альтернативной точки останова - 805Н; ж) нажать клавишу ВП, осуществляется передача управле­

ния на адрес 803Н.

на дисплее появится адрес первой точки останова - 803Н. продолжим выполнение, программы, начиная с адреса первой точки останова, адреса 803, до адреса 805Н. для этого:

а) нажмите клавишу СТ; б) нажмите клавишу разделитель, это означает, что вы­

полнение программы необходимо продолжить с текущего ад­ реса;

в) введите адрес точки останова - 805Н; г) нажмите клавишу ВП. Выполнение программы будет

продолжено, на дисплее появится 805 - адрес точки останова.

7

1.3.4. Команда ЗАПОЛНЕНИЕ МАССИВА ПАМЯТИ КОНСТАНТОЙ

Эта команда используется для записи в массиве -памяти константы. Для выполнения этой команды:

а) нажмите клавишу ЗК; б) введите начальный адрес массива - 800Н;

в) нажмите клавишу РАЗДЕЛИТЕЛЬ, экран дисплея по­ гаснет;

г) введите конечный адрес массива 80FH;

д) нажмите клавишу РАЗДЕЛИТЕЛЬ, последний введен­ ный адрес останется на Дисплее;

е) введите константу ААН; ж) нажмите клавишу ВП.

Для проверки правильности выполнения команды запол­ нения массива памяти константой выполните команду П без модификации содержимого памяти (см.п.1.3.1).

1.3.5. Команда ПОДСЧЕТ КОНТРОЛЬНОЙ СУММЫ

Перед выполнением этой команды заполните массив па­ мяти 840H-8FFH данными ЕЕН, чтобы заранее знать фактиче­ скую контрольную сумму этого массива для проверки - она равна 80Н.

Для выполнения команды ПОДСЧЕТ КОНТРОЛЬНОЙ СУММЫ:

а) нажмите кнопку КС; б) введите начальный адрес массива 840Н;

в) нажмите клавишу РАЗДЕЛИТЕЛЬ;

г) введите конечный адрес массива 8FFH;

д) нажмите клавишу ВП. На дисплее появится значение контрольной суммы массива - 80Н.

1.3.6. Команда ПЕРЕМЕЩЕНИЕ МАССИВА ПАМЯТИ

Эта команда используется для пересылки данных из одной области памяти в другую. Например, для перемещения кодов программы.

8

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