1-2009 ДГЦУиМП
.pdfГОУ впо «Воронежский государственный технический университет»
Кафедра радиотехники
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