- •Методические указания и задания по лабораторному практикуму по курсу «Микропроцессоры» Учебное пособие Москва 2013
- •Лабораторная работа №1. "Исследование возможностей интегрированной среды для создания программ для микроконтроллеров"
- •1. Краткое описание интегрированной среды
- •1.1. Окно интегрированной среды
- •1.2. Использование отладчика (симулятора) для ассемблерных модулей
- •1.3. Порядок создания программ на Ассемблере с помощью интегрированной среды
- •1.4. Порядок отладки программ на Ассемблере с помощью интегрированной среды
- •1.5. Дополнительные операторы языка Ассемблера для использования интегрированной среды
- •1.6. Задание для домашней подготовки
- •1.7. Лабораторное занятие
- •1.8. Отчет по работе
- •Лабораторная работа №2. "Исследование арифметических и логических операций над двоичными и шестнадцатеричными числами применительно к реализации в микроконтроллерах"
- •1. Логические и арифметические операции
- •2.6. Задание для домашней подготовки
- •1.7. Лабораторное занятие
- •Лабораторная работа №3. "Исследование возможностей интегрированной среды для создания программ для оэвм семейства mcs51"
- •1.6. Задание для домашней подготовки
- •1.7. Лабораторное занятие
- •1.8. Содержание отчета
- •1.9. Задания для самопроверки
- •Лабораторная работа №4 Исследование программно-аппаратного комплекса для отладки программ для оэвм семейства mcs-51
- •4.1. Макетно-отладочная плата ев-552
- •2.3. Порядок создания и проверки программ в интегрированной системе uVision2 - eb552
- •2.3.1. Использование программы ев552.Exe для загрузки нех файлов в плату
- •8. Передача отлаживаемого файла в плату ев552
- •2.4. Задание для домашней подготовки
- •2.5. Лабораторное занятие
- •2.5.1. Основы работы с массивами чисел
- •2.5.2. Отладка программы в интегрированной среде
- •2.6. Результаты отчета
- •2.7. Контрольные вопросы
- •Лабораторная работа № 5 Исследование таймеров-счетчиков и системы прерывания оэвм
- •3.1. Основные теоретические сведения
- •3.1.1. Использование таймера для осуществления программной задержки
- •3.1.2. Система прерываний оэвм
- •3.1.3. Управление работой таймеров
- •Xseg at 0000h
- •3.1.4. Работа таймера в режиме счетчика событий
- •Xseg at 0000h
- •3.2. Задание для домашней подготовки
- •3.3. Лабораторное задание
- •3.3.1. Исследование работы таймеров
- •3.4. Содержимое отчета
- •Список рекомендованной литературы
1.6. Задание для домашней подготовки
1.6.1. Ознакомиться по описанию с порядком разработки программ в рамках интегрированной среды.
1.6.2. Ознакомиться с примерами программ на Ассемблере, приведенными в разделе "Лабораторное занятие".
1.6.3. По рекомендованной литературе ознакомиться со структурой и программированием ОЭВМ семейства MCS51.
1.6.4. Разработать программу на языке Ассемблера по заданию, которое приведено ниже. В табл. 1.2 приведен номер варианта программы, которая должна быть разработана для каждой бригады в отдельности. Программа должна иметь все необходимые "псевдооператоры", которые позволяли бы загрузить ее непосредственно в среду. Коды программы должны начинаться с 0000Н, байтовые переменные - с 08Н, стек - с 60Н, битовые переменные - с 20Н, внешнее ОЗУ – с 0000H. Ассемблирование вручную приводить не надо.
Таблица 1.2
Распределение вариантов домашнего задания по бригадам
N бригады |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
N варианта |
9 |
1 |
8 |
2 |
10 |
3 |
4 |
5 |
6 |
7 |
Вариант 1. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R3 подсчитать сумму чисел, хранящихся в R0, R1, R2.
Вариант 2. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R3 подсчитать выражение
R3 = R2 - R1 + R0
Вариант 3. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R4 подсчитать выражение
R4 = R2 – R0 + R1
.
Вариант 4. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R5 подсчитать выражение
R3 = R2 - R1 + R0
R4 = R2 – R0 + R1
R5 = R4 + R3
Вариант 5. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R5 подсчитать выражение
R3 = R2 - R1 + R0
R4 = R2 – R0 + R1
R5 = R4 - R3
Вариант 6. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R5 подсчитать выражение
R3 = R2 - R1 + R0
R4 = R2 – R0 + R1
R5 = R3 - R4
Вариант 7. Загрузить в регистр R0 число 4. Загрузить в регистр R1 число 5. Загрузить в регистр R2 число 15. В регистре R5 подсчитать выражение
R3 = R2 - R1 + R0
R4 = R2 – R0 + R1
R5 = R3 - R4
.
Вариант 8. Загрузить в регистр R0 число 4. Загрузить в регистр R1 число 5. Загрузить в регистр R2 число 15. В регистре R5 подсчитать выражение
R3 = R2 - R1 + R0
R4 = R2 – R0 + R1
R5 = R3 - R4
Вариант 9. Загрузить в регистр R0 число 4. Загрузить в регистр R1 число 5. Загрузить в регистр R2 число 15. В регистре R4 подсчитать выражение
R4 = R2 – R0 + R1
.
.
Вариант 10 Загрузить в регистр R0 число 4. Загрузить в регистр R1 число 5. Загрузить в регистр R3 число 15. В регистре R4 подсчитать выражение
R3 = R2 - R1 + R0
Примечание:
1) Команда загрузки в регистр числа: Mov Ri, #N , где Ri = R0, R1,…R7, N – число.
2) Команда пересылки из регистра Ri в регистр А: Mov А, Ri и обратная пересылка Mov Ri, А
3) Команда суммирования двух чисел предполагает, что одно из слагаемых должно быть предварительно загружено в регистр А. Тогда команда суммирования будет выглядеть так:
ADD A,Ri
где в А – первое число, в Ri - второе число. Результат суммирования сохраняется в том же регистре А.
4) Команда вычитания двух чисел предполагает, что одно из чисел (то, из которого вычитается) должно быть предварительно загружено в регистре А. Тогда команда вычитания будет выглядеть так:
SUBB A, Ri
где в А – первое число, в Ri - второе число (которое вычитают). Результат вычитания сохраняется в том же регистре А.