Отчет №1 Serova
.docxМИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Государственное образовательное учреждение высшего профессионального образования
«Национальный исследовательский ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Наименование института – Институт Кибернетики
Наименование направления – Стандартизация и метрология
Наименование кафедры – Компьютерных измерительных систем и
метрологии
Изучение среды программирования AVR Studio
Отчет о лабораторной работе №1
по курсу «Микропроцессоры в измерительных устройствах»
Студент гр. 8Г10 Д. Н. Серова
Преподаватель П.Ф. Баранов
Томск – 2014
Цель работы:
-
Изучение AVR Studio;
-
Изучение принципов написания программ на языке ассемблера;
-
Изучение простейших команд ATmega8.
Требования для выполнения работы:
-
Ознакомиться с методичкой по работе с AVR Studio;
-
Написать программу на языке ассемблера ATmega8;
-
Произвести отладку программы в AVR Studio;
-
Самостоятельно проверить выполнение программы;
-
Составить отчет по лабораторной работе.
Задание 1:
Написать программу с использованием AVR Studio и проверить по шагам ее работу.
Рисунок 1 – Алгоритм программы
Листинг программы:
ldi R16,55 ; Непосредственная загрузка числа
ldi R17,66 ; Непосредственная загрузка числа
k:
nop ; Нет операций
mov R0,R17 ; Пересылка данных из регистра R17 в R0
cp R16,R0 ;Сравнение двух регистров R16-R0
brlo stop ;Переход на метку stop если меньше
brsh k ;Переход на метку k если больше или равно
stop:
rjmp stop ; Безусловный переход на метку stop
Задание 2:
Написать программу с использованием AVR Studio сложения двух чисел, вычитания двух чисел, уменьшения содержимого регистра до нуля.
Рисунок 2 – Алгоритм программы
Листинг программы:
ldi R16,9 ;Непосредственная загрузка числа ldi R17,8 ;Непосредственная загрузка числа nop ;Нет операций add R16,R17 ;Сложение регистров ldi R20,1 ;Непосредственная загрузка числа ldi R22,2 ;Непосредственная загрузка числа sub R20,R22 ;Вычитание регистров ldi R25,6 ;Непосредственная загрузка числа ldi R23,4 ;Непосредственная загрузка числа k: dec R25 ;Уменьшение содержимого регистра на 1 cp R25,R23 ;Сравнение регистров brlo stop ;Переход на метку stop если меньше brsh k ; Переход на метку k если больше или равно stop: rjmp stop ;Безусловный переход на метку stop
Вывод: В ходе проделанной лабораторной работы было начато изучение программы AVR Studio, мы изучили принципы написания программ на языке ассемблера и простейшие команды ATmega8, такие как сложение, вычитание и уменьшение содержимого регистра на 1.