Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Программирование параллельного порта ввода-вывода микроконтроллера AVR
Отчет по лабораторной работе №4
по курсу «Микропроцессоры в измерительных устройствах»
Студент гр. 8Г10 Д.Н.Серова
Преподаватель П.Ф. Баранов
Томск 2014
Цель:
1. Контролирование знаний по архитектуре параллельного порта ввода-вывода микроконтроллера AVR;
2. Контролирование знаний программирования порта ввода-вывода микроконртоллера AVR;
3. Изучение команд работы с портами ввода-вывода микроконтроллера AVR;
4. Контролирование знаний составления алгоритмов;
5. Контролирование знаний работы с AVR Studio;
6. Изучение работы программатора.
Задание:
Написать программу ввода-вывода двоичной информации. Проверить ее работу с использованием отладчика и на устройстве ввода-вывода. Выполнить следующую задачу: зажечь крайний светодиод на индикаторе и произвести последовательно зажигание соседних светодиодов.
Px |
Рисунок 1 - принципиальная схема ввода-вывода на микроконтроллере ATmega128
Составлен алгоритм выполнения программы:
В результате программы светодиоды загораются по очереди, начиная с последнего (рисунок 2):
Рисунок 2 – порядок загорания светодиодов
Приведен листинг программы:
.include "m128def.inc"
ldi R16, 0xFF
ldi R19, 0xFF
out DDRD,R16
l:
ldi R17, 0xFF
ldi R18,0xFF
k:
dec R16
cpi R16,0
brne k
dec R18
cpi R18,0
brne k
lsr R17
ldi R16, 0xFF
ldi R18, 0xFF
out PORTD, R17
k1:
dec R16
cpi R16,0
brne k1
dec R18
cpi R18,0
brne k1
lsr R17
ldi R16, 0xFF
ldi R18, 0xFF
out PORTD, R17
k2:
dec R16
cpi R16,0
brne k2
dec R18
cpi R18,0
brne k2
lsr R17
ldi R16, 0xFF
ldi R18, 0xFF
out PORTD, R17
k3:
dec R16
cpi R16,0
brne k3
dec R18
cpi R18,0
brne k3
lsr R17
ldi R16, 0xFF
ldi R18, 0xFF
out PORTD, R17
k4:
dec R16
cpi R16,0
brne k4
dec R18
cpi R18,0
brne k4
lsr R17
ldi R16, 0xFF
ldi R18, 0xFF
out PORTD, R17
k5:
dec R16
cpi R16,0
brne k5
dec R18
cpi R18,0
brne k5
lsr R17
ldi R16, 0xFF
ldi R18, 0xFF
out PORTD, R17
k6:
dec R16
cpi R16,0
brne k6
dec R18
cpi R18,0
brne k6
lsr R17
ldi R16, 0xFF
ldi R18, 0xFF
out PORTD, R17
k7:
dec R16
cpi R16,0
brne k7
dec R18
cpi R18,0
brne k7
lsr R17
ldi R16, 0xFF
ldi R18, 0xFF
out PORTD, R17
rjmp l
Вывод: в ходе выполнения лабораторной работы была исследована архитектура параллельного порта ввода-вывода микроконтроллера AVR, изучены команды работы с портами ввода-вывода. В результате была составлена программа, производящая последовательное зажигание соседних светодиодов на индикаторе, начиная с крайнего. Листинг программы интерпретирован в алгоритм.
Дата публикования: 2015-10-09; Прочитано: 221 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!