Вычислительные системы и сети
Автор: Роман Попов • Сентябрь 18, 2022 • Лабораторная работа • 1,435 Слов (6 Страниц) • 264 Просмотры
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение
высшего образования
ИРКУТСКИЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ
ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра Вычислительные системы и сети
Лабораторная работа №6 по дисциплине
«Вычислительные системы и сети»
Вариант 25
Выполнил:
студент группы: АТПбз_21_1 ________ Перепелкин И.С.
(шифр группы) (подпись)
Проверил:
доцент каф. ТОМП: ______________ Беломестных А.С
(подпись)
Иркутск 2022
Цель работы: Изучение основ программирования и отладки программ на микроконтроллере ATmega16.
Используемое оборудование и средства: персональный компьютер, пакет «AVR Studio 4.0».
Задание 1
В поле программы записан код, представленный в лабораторной работе (рисунок 1.1). Исходя из задания, были устранены ошибки в написании кода, результат – на рисунке 1.2.
[pic 1]
Рисунок 1.1 Неверный код программы
[pic 2]
Рисунок 1.2 Код с исправленными ошибками
Результат работы программы, а также время её выполнения представлены на рисунке 1.3:
[pic 3]
Рисунок 1.3 Результат работы программы
Далее необходимо выполнить оптимизацию кода, с целью сокращения времени выполнения команд. Из данного кода можно убрать команду “nop” и “clr r16”. Кроме того, повысим частоту до 16МГц. Результаты работы – на рисунке 1.4:
[pic 4]
Рисунок 1.4 Работа программы после оптимизации
В результате оптимизации программы, её быстродействие возросло и время выполнения стало 0,25мкс.
Задание 2.
Написать и отладить программу по выполнию заданной арифметической (логической) операции. Результат поместить в регистр R18 и вывести в заданный параллельный порт (PortХ). Ввод константы b выполнить с заданного порта (PortY). Параметры индивидуального задания выбираются из табл. 2.
Таблица 2.1 Индивидуальное задание
Константа a | Константа b | Константа с | Операция | Тактовая частота МК (МГц) | Порт вывода X | Порт ввода Y |
14 | 11 | 118 | a*b-c/8 (арифм.) | 1 | D | B |
Для выполнения заданной операции, написана и отлажена программа. Результат помещен в регистр R18 и выведен заданный порт по заданию. Ввод константы b выполнен с заданного в задании порта. Заданные параметры приведены в таблице 2.1. Код и результат работы программы приведен на рисунках 2.5-2.8.
[pic 5]
Рисунок 2.5 Код программы и компиляция
[pic 6]
Рисунок 2.6 Окно Watch
[pic 7]
Рисунок 2.7 Окно I/O View
[pic 8]
Рисунок 2.8 Окно Processor
Таблица 2.2 Время выполнения команд
Операция | Время (us) |
clr | 1 |
ser | 2 |
out | 3 |
out | 4 |
ldi | 5 |
ldi | 6 |
in | 7 |
lsr | 8 |
lsr | 9 |
lsr | 10 |
mul | 12 |
sub | 13 |
mov | 14 |
out | 15 |
Общее время выполнения | 15 |
Сделаем проверку.
[pic 9]
Программа составлена и выполняется правильно.
Вывод: в процессе выполнения лабораторной работы, получены практические навыки работы в среде AVRStudio 4 (составление, отладка, тестирование кода на языке ассемблер) для микроконтроллера ATmega16.
Программа работает без ошибок.
Контрольные вопросы
...