
- •1. Теоретическая часть
- •1.1. Методические указания по выполнению лабораторной работы
- •1.1.1. Создайте новый проект.
- •1.1.2. Напишите и отладьте программу lab1
- •Контрольные вопросы.
- •Практическая часть
- •2.1. Задание:
- •Программа lab1:
- •. Содержание отчета
- •Практическая работа №1,2 Изучение методики «сквозного проектирования» мпс на мк
- •Контрольные вопросы
- •Практическая работа №3,4 Изучение команд пересылки данных в мк Организация параллельного обмена данными в мк
- •Контрольные вопросы
- •Лабораторная работа № 2 Изучение команд пересылки данных мк в avr Studio 4
- •Практическая работа №5 Изучение команд арифметики мк
- •Лабораторная работа № 4 Изучение команд битовой обработки данных мк
- •Контрольные вопросы
- •Практическая работа №8 Организация вывода данных в последовательном коде в мк
- •Подпрограмма прерываний
- •Лабораторная работа №5 Организация вывода данных в мк в последовательном коде в режиме реального времени
- •Практическая работа №9 Организация ввода данных в последовательном коде в мк
- •Лабораторная работа №6 Организация ввода данных в мк в последовательном коде в режиме реального времени
- •Практическая работа №10 Организация процесса обмена данными в мк через spi - интерфейс
- •Лабораторная работа №7 Организация обмена данными в мпс через spi – интерфейс
- •Практическая работа №11 Программирование сторожевого таймера (Watch Dog Timer) мк aTmega8515
- •Сброс wdt
- •Инициализация wdt
- •Инициализация портов
- •Лабораторная работа № 8,9 Организация простейших мпс на базе мк
Лабораторная работа №5 Организация вывода данных в мк в последовательном коде в режиме реального времени
Цель работы: изучение системы прерываний и передатчика модуля USART МК AVR ATmega8515.
Задание 1
Для задачи из практической работы №8 провести отладку программы и детальную трассировку задания в AVR Studio 4, описать каждый шаг выполняемой программы. Проверить все возможные условия задачи. Составить отчёт по трассировке. Ответить на контрольные вопросы.
Контрольные вопросы
1. Организация таблицы прерываний и программирование передатчика USART МК ATmega8515.
2. Методика работы в AVR Studio 4.
Практическая работа №9 Организация ввода данных в последовательном коде в мк
Цель работы: изучение функционирования и программирования приемника модуля USART МК ATmega8515.
Методические рекомендации по выполнению практической работы
Задание 1.
1)Подробно изучить систему прерываний и функционирование приемника модуля USART МК AVR ATmega8515.[1]
2)Необходимо составить алгоритм, написать программу на ассемблере МК AVR ATmega8515, провести проверку, выставить флаги для выполнения следующей задачи:
Пример выполнения задачи:
Составить алгоритм, написать программу для вычисления функции z=X+Y, X- ввести с модуля USART, Y- ввести с порта PА, функцию Z вывести в порт PВ. Сделать проверку для X=02, Y=03.
а) Составим алгоритм задачи:
Рис. 15. Алгоритм рассматриваемой задачи
в) Программа на языке ассемблер:
.include"8515def.inc"
.cseg
.org 0x00 ; обращение к вектору сброса
rjmp PROG ; безусловный переход на PROG
.org 0x09 ; организация вектора прер. по событию «прием завершен»
rjmp М0 ; безусловный переход на метку М0
PROG:
ldi R16,high(RAMEND) ;
out SPH,R16 ; организация стека в верхних ячейках памяти данных ОЗУ
ldi R16,low(RAMEND) ;
out SPL,R16 ; организация стека в верхних ячейках памяти данных ОЗУ
ldi R16,$FF ;
Out DDRA,R16 ; PORTA на вывод данных
LDI R16,$00 ;
out DDRB,R16 ; PORTB на ввод данных
SEI ; разрешение глобальных прерываний (I=1)
M1: ldi R16,$90 ; программирование приемника USART
out 0x0a,R16 ; Rg UCSRb
ldi R16,$86 ;
out 0x20,R16 ; Rg UCSRC
ldi R16,$06 ;
out 0x09,R16 ; Rg UBRRL
ldi R16,$80 ;
out 0x0b,R16 ; Rg UCSRA
jmp M1;
М0: in R16,0x0C ; ввод данных с UDR приемника
in r17,pinb ; ввод данных с порта РВ
add R16,r17 ; вычисление функции z=x+y
out PORTa,R16 ; вывод z в порт РА
reti ; возврат из подпрограммы прерываний
с) Проведем проверку Z =X+Y при Х=02,Y=03 и выставим флаги.
1) ADD R16, R17
В порт РА поместим результат Z = 05
Выставим флаги по результату действия:
H=0, N=0, C=0, Z=0, V=0, S=0.
Задание 2.
Получить у преподавателя задачу для реализации в соответствии с Вашим вариантом. Составить алгоритм, написать программу на ассемблере МК AVR ATmega8515, провести проверку, выставить флаги для реализации задачи в соответствии с рассмотренными выше методическими указаниями.
Таблица 6. Варианты заданий на практическую работу № 9
№ варианта |
Задание на практическую работу. |
1 |
Составить алгоритм, написать программу для вычисления функции z=3X+Y, X- ввести с модуля USART, Y- ввести с порта PВ, функцию Z вывести в порт PА. Сделать проверку для X=04, Y=02. |
2 |
Составить алгоритм, написать программу для вычисления функции z=3X^Y, X- ввести с модуля USART, Y- ввести с порта PС, функцию Z вывести в порт PD. Сделать проверку для X=03, Y=05. |
3 |
Составить алгоритм, написать программу для вычисления функции z=X+3Y, X- ввести с модуля USART, Y- ввести с порта PC, функцию Z вывести в порт PА. Сделать проверку для X=03, Y=05. |
4 |
Составить алгоритм, написать программу для вычисления функции z=3XvY, X- ввести с модуля USART, Y- ввести с порта PD, функцию Z вывести в порт PА. Сделать проверку для X=05, Y=07. |
5 |
Составить алгоритм, написать программу для вычисления функции z=3X-Y, X- ввести с модуля USART, Y- ввести с порта PD, функцию Z вывести в порт PC. Сделать проверку для X=04, Y=08. |
6 |
Составить алгоритм, написать программу для вычисления функции z=2X-Y, X- ввести с модуля USART, Y- ввести с порта PB, функцию Z вывести в порт PD. Сделать проверку для X=05, Y=06. |
7 |
Составить алгоритм, написать программу для вычисления функции z=Xv3Y, X- ввести с модуля USART, Y- ввести с порта PC, функцию Z вывести в порт PD. Сделать проверку для X=05, Y=08. |
8 |
Составить алгоритм, написать программу для вычисления функции z=3X^Y, X- ввести с модуля USART, Y- ввести с порта PB, функцию Z вывести в порт PC. Сделать проверку для X=07, Y=03. |
9 |
Составить алгоритм, написать программу для вычисления функции z=4X-Y, X- ввести с модуля USART, Y- ввести с порта PD, функцию Z вывести в порт PB. Сделать проверку для X=04, Y=09. |
10 |
Составить алгоритм, написать программу для вычисления функции z=X-3Y, X- ввести с модуля USART, Y- ввести с порта PA, функцию Z вывести в порт PB. Сделать проверку для X=09, Y=02. |
11 |
Составить алгоритм, написать программу для вычисления функции z=3X+Y, X- ввести с модуля USART, Y- ввести с порта PD, функцию Z вывести в порт PC. Сделать проверку для X=04, Y=09. |
12 |
Составить алгоритм, написать программу для вычисления функции z=3X-2Y, X- ввести с модуля USART, Y- ввести с порта PВ, функцию Z вывести в порт PC. Сделать проверку для X=04, Y=09. |
13 |
Составить алгоритм, написать программу для вычисления функции z=5X-Y, X- ввести с модуля USART, Y- ввести с порта PВ, функцию Z вывести в порт PА. Сделать проверку для X=04, Y=02. |
14 |
Составить алгоритм, написать программу для вычисления функции z=3X-3Y, X- ввести с модуля USART, Y- ввести с порта PD, функцию Z вывести в порт PC. Сделать проверку для X=05, Y=03. |
15 |
Составить алгоритм, написать программу для вычисления функции z=7X-2Y, X- ввести с модуля USART, Y- ввести с порта PD, функцию Z вывести в порт PА. Сделать проверку для X=05, Y=03. |
16 |
Составить алгоритм, написать программу для вычисления функции z=6X^2Y, X- ввести с модуля USART, Y- ввести с порта PВ, функцию Z вывести в порт PC. Сделать проверку для X=05, Y=03. |
17 |
Составить алгоритм, написать программу для вычисления функции z=5X^3Y, X- ввести с модуля USART, Y- ввести с порта PD, функцию Z вывести в порт PB. Сделать проверку для X=03, Y=06. |
18 |
Составить алгоритм, написать программу для вычисления функции z=5Xv3Y, X- ввести с модуля USART, Y- ввести с порта PD, функцию Z вывести в порт PB. Сделать проверку для X=05, Y=03. |
19 |
Составить алгоритм, написать программу для вычисления функции z=2X+5Y, X- ввести с модуля USART, Y- ввести с порта PC, функцию Z вывести в порт PА. Сделать проверку для X=06, Y=04. |
20 |
Составить алгоритм, написать программу для вычисления функции z=7X-5Y, X- ввести с модуля USART, Y- ввести с порта PA, функцию Z вывести в порт PC. Сделать проверку для X=05, Y=03. |
Задание 3. Оформить отчет по работе. Продемонстрировать отчет преподавателю.