Сделай Сам Свою Работу на 5

Описание работы программы

МИНОБРНАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

“Московский государственный университет приборостроения и информатики”

Факультет(филиал) ПР специальность (направление) 200101 1

Кафедра ПР-1 «Приборы и информационно-измерительные системы» ”

Дисциплина «Микропроцессорная измерительная техника»

 

ОТЧЕТ

по домашним работам

на тему:

«Написание программ для микроконтроллера ATmega 8515 фирмы Atmel на языке Ассемблер»

 

Студент Трушков Е.В.

подпись, дата Ф.И.О.

Группа ПР1-09-01д шифр______________09022

 

Обозначение домашней работы Д ДомР–2068752–200101–ПР1–19–12

 

Отчёт проверен

 

Руководитель Москаленко О.В.

подпись, дата Ф.И.О.

 

 

 

Москва

2013

Введение………………………………………………………………………………..
Техническое задание…………………………………………………………………..
1 Лабораторная работа №1.………………...………………………………………...
1.1 Листинг программы……………………………………………………….
1.2 Описание работы программы……………………………………………. 1.3 Блок схема алгоритма программы……………………………………......
2 Лабораторная работа №2…………………………………..……………………......
2.1 Листинг программы……………………………………………………….
2.2 Описание работы программы…………………………………………….
2.3 Блок схема алгоритма программы………………………………………..
3 Лабораторная работа №3…………………………………..…………………….....
3.1 Листинг программы……………………………………………………….
3.2 Описание работы программы…………………………………………….
3.3 Блок схема алгоритма программы……………………………………......
4 Лабораторная работа №4…………………………………....……………………....
4.1 Листинг программы……………………………………………………….
4.2 Описание работы программы…………………………………………….
4.3 Блок схема алгоритма программы……………………………………......
5 Лабораторная работа №5…………………………………..……………………......
5.1 Листинг программы……………………………………………………….
5.2 Описание работы программы…………………………………………….
5.3 Блок схема алгоритма программы………………………………………..
6 Лабораторная работа №6…………………………………..……………………......
6.1 Листинг программы……………………………………………………….
6.2 Описание работы программы…………………………………………….
6.3 Блок схема алгоритма программы………………………………………..

СОДЕРЖАНИЕ



Заключение……………………………………………………………………….........
Список использованной литературы…………………………………………………
Приложение А Блок – схема для лабораторной работы №1  
Приложение Б Блок – схема для лабораторной работы №2  
Приложение В Блок – схема для лабораторной работы №3  
Приложение Г Блок – схема для лабораторной работы №4  
Приложение Д Блок – схема для лабораторной работы №5  
Приложение Е Блок – схема для лабораторной работы №6  

ВВЕДЕНИЕ

 

Целью данной работы является написание программ для микроконтроллера ATmega 8515 фирмы Atmel на языке Ассемблер, отладка в среде AVRStudio 4.13 и составление блок – схем к каждой программе, которые представлены в соответствующих приложениях.

Для программирования AVR – микроконтроллеров существует немало средств разработки, однако, наиболее популярным, несомненно, стоит признать пакет AVR Studio. AVR Studio объединяет в себе текстовый редактор, ассемблер и симулятор. Пакет AVR Studio также используется совместно с аппаратными средствами отладки [1].

Лит
Лист
Листов
 
 
 
МГУПИ ПР1-09-01д  
Написание программ для микроконтроллера ATmega 8515 фирмы Atmel на языке Ассемблер
ДомР-2068752-200101-ПР1-19-12
Изм
№ докум.
Лист
Подп.
Дата
Трушков Е.В.
Студент
 
 
Москаленко О.В.
Руковод.
 
 
 
Консульт.
 
 
 
Н. контр.
 
 
 
Зав. каф.
 
 
 
 
 
 
 
 
 
 
 
 

Техническое задание

Написать программы на языке Ассемблер, составить блок – схемы и отладить в пакете AVR Studio.

 

Задание на лабораторную работу №1

Уменьшить данные на 19510 в ячейке памяти с адресом 50010.

 

Задание на лабораторную работу №2

Если в ячейке памяти с адресом 56410 находятся нечетные данные, то записать в них лог. 1 в младшие 4 бита. Если данные – четные, то оставить их без изменений.

 

Задание на лабораторную работу №3

Записать лог. 1 в нечетные биты данных в ячейке памяти (ЯП) с адресом 54310, только в том случае, если данные четные и ≥ 17010, или нечетные ≤ 10110.

Задание на лабораторную работу №4

 

Записать лог. 1 в четные биты элементов массива, содержащие нечетные данные 15910> x ≥ 7510.. Ячейка памяти 51510 содержит 1 элемент массива. В массиве 14 элементов (адрес следующего элемента массива больше на 1).

 

Задание на лабораторную работу №5

В массиве из 12 элементов, первый элемент массива находится в ЯП с адресом 57210 (адрес следующего на 1 меньше), найти элемент массива, содержащий min нечетные данные, попадающие в интервал 18710 < x ≤ 1910. Результат поместить в ЯП с адресом 57510.

 

Задание на лабораторную работу №6

 

В массиве из 26 элементов, первый элемент массива (ЭМ) находится в ячейке памяти с адресом 38010 (адрес следующего ЭМ на 1 меньше), найти количество бит, равных лог. 1 в младшей тетраде ЭМ, содержащего max нечетные данные, попадающие в интервал 12510 < х ≤ 21310. Результат поместить, начиная с ЯП с адресом 40510.

 


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

Лабораторная работа №1 посвящена ознакомлению с возможностями написания программы на языке ассемблер и отладки в пакете AVR Studio.

Уменьшить данные на 19510 в ячейке памяти с адресом 50010.

 

Листинг программы

 

Прежде чем приступить к написанию программы необходимо перевести числа, указанные в условии задачи, из десятичной системы исчисления в шестнадцатеричную:

- 19510 → С316;

- 50010 → 014016.

 

ldi r31,0x01 ;Загрузить в регистр общего назначения (РОН) r31 ;старшую часть адреса ячейки памяти (ЯП)

ldi r30,0x40 ;Загрузить в РОН r30 младшую часть адреса ЯП

ldi r16,0xC3 ;Загрузить число 12410 в РОН r16

ld r5,Z ;Скопировать данные в РОН r5 из ЯП, адрес которой ;указан в регистровой паре Z

sub r5,r16 ;Вычесть из содержимого РОН r5 содержимое ;регистра r16 и поместить результат в РОН r5

st Z,r5 ;Скопировать данные из РОН r5 в ЯП, адрес
;которой указан в регистровой паре (РП) Z

nop ;Конец программы

Описание работы программы

Прежде чем выполнить требуемое действие над заданными числами необходимо обратиться к ЯП оперативного запоминающего устройства (ОЗУ) микроконтроллера, а для этого требуется загрузить адрес интересующей нас ЯП в свободную регистровую пару (РП), в данном случае используется РП Z. Далее загружаем константу в любой свободный РОН с r16 по r31. Следующее действие, которое выполнит микроконтроллер – это скопирует данные из ЯП, адрес которой указан в РП Z и поместит их в требуемый регистр – в данном случае регистр r5. После чего микроконтроллер вычитает данные, хранящиеся в регистре r16 из регистра r5 и результат выполненной операции помещает в регистр r5. Остается только записать полученный результат из регистра r5 в ЯП, адрес которой указан в РП Z.

 

Блок схема программы

 

Алгоритм работы программы 1 находится в приложении А. В приложении А приняты следующие сокращения: ЯП – ячейка памяти, РП – регистровая пара,
РОН – регистр общего назначения.

 

 


 

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

 

Написание подпрограммы для проверки данных на четность/нечетность на языке ассемблер микроконтроллера ATmega 8515 фирмы Atmel.

Если в ячейке памяти с адресом 56410 находятся нечетные данные, то записать в них лог. 1 в младшие 4 бита. Если данные – четные, то оставить их без изменений.

 

Листинг программы

В условии задачи адрес ЯП, в которой находятся интересующие нас данные, записан в десятичной системе исчисления. Переведём число - 56410 в шестнадцатеричную систему исчисления. Это будет 023416 .

ldi r27,0x02 ;Загрузить старшую часть адреса ЯП в РОН r27

ldi r26,0x34 ;Загрузить младшую часть адреса ЯП в РОН r26

ld r17,X ;Скопировать в РОН r17 данные из ЯП, адрес
;которой указан в РП Х

mov r16,r17 ;Скопировать данные из регистра r17 в регистр r16 для ;последующей проверки на четность/нечетность

andi r16, 0b00000001 ;Проверяем на четность, выполняя логическое ;умножение r16 с числом 0b00000001

breq finish ;Если флаг Z = 1 (т.е. в регистре r16 находились ;четные данные), то перейти в конец программы

ori r17,0b11110000 ;Записать лог. 1 в старшие 4 бита данных, находящихся ;в регистре r18


 

st X,r17 ;Скопировать данные из регистра r18 в ЯП, адрес ;которой указан в РП Х

finish: nop ;Конец программы



©2015- 2019 stydopedia.ru Все материалы защищены законодательством РФ.