Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Методические указания к выполнению лабораторной работы. Цель работы: изучение микроконтроллера AVR, его системы команд и получение навыков программирования на примере разработки программы на языке ассемблер.






 

Цель работы: изучение микроконтроллера AVR, его системы команд и получение навыков программирования на примере разработки программы на языке ассемблер.

 

Задачи:

- разработать программу на языке ассемблер для реализации логической функции по алгоритму разработанному на практической работы;

- испытать программу в среде AVRSTUDIO (откомпилировать и проверить на ошибки);

- проверить выполнение таблицы истинности для разработанной программы в симуляторе;

- по возможности проверить выполнение программы на лабораторном макете с применением микроконтроллера AVR ATVEGA 16

 

Ход работы

На основе алгоритма, полученного в ходе практического занятия, разрабатываем программу пользуясь методичкой [1]. Программу можно писать сразу в среде AVRSTUDIO, которую можно бесплатно получить на сайте [2].

 

Результат для примера алгоритма разработанного в ходе выполнения практических работ приведен ниже

Программа

.org $000; директива компилятору о начальном адресе компиляции rjmp main; переход на подпрограмму прерывания по сбросу .org $2A; перескок через область векторов прерываний main:   ldi r16, high(RAMEND); установить стек в конец памяти RAM out SPH, r16 ldi r16, low(RAMEND) out SPL, r16 ; ldi r16, $00; порт C на ввод out DDRC, r16; ; ldi r16, $FF; out DDRD, r16; порт D на вывод ; ldi r16, $00; начальное значение out PORTC, r16; out PORTD, r16; ; cli in r16, pinc mov r17, r16 lsl r17 or r17, r16; Y2 ; mov r18, r16 com r18 ; or r18, r16; Y7 ; mov r19, r16 lsl r19 lsl r19 lsl r19 lsl r19 or r19, r16; Y4 ; lsl r17 or r17, r18; A ; lsr r17 lsr r17 lsr r17 lsr r17 and r19, r17; Y1 out portD, r19

 

При разработке программы желательно придерживаться нескольких правил.

1. Зрительно разделять в пространстве один участок программы, в котором произвели обработку части уравнения или действия, от другого.

2. Вводить комментарии после знака точка с запятой (;).

3. Придерживаться алгоритма, чтобы не запутаться.

 

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

В AVR симуляторе наблюдается выполнение программы. Входные данные вводятся самостоятельно в порт С, результаты фиксируются в соответствующем бите. Таким образом, необходимо проверить все битовые комбинации соответствующие таблице истинности, которые проводили ранее для схемы. В итоге сравнить два результата и при возможности найти ошибки.

По результатам проверки программы в симуляторе для наглядности можно проверить программу в микроконтроллере на лабораторном макете.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.