Проектирование систем на микроконтроллерах ATmega103. Методы адресации, команды передачи данных и управления

Страницы работы

Фрагмент текста работы

Откроется диалоговое окно, в котором нужно указать полное имя (с расширением) и местонахождение создаваемого файла. Например, следующим образом:

После ввода OK будет создан новый файл, в котором пока нет текста.

Все прикладные программы обрабатываются системой AVR Studio как некоторые проекты. Создать новый проект можно командой Project|New, после ввода которой открывается окно определения имени, типа и места хранения файлов проекта:

Мы в данном практикуме будем работать только с ассемблерными программами, поэтому в качестве типа проекта укажите AVR Assembler. После ввода ОК в окне менеджера проектов будет отображена структура нового проекта.

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

Чтобы присоединить созданный файл к проекту, нужно щелкнуть правой кнопкой мыши по группе Assembler Files, откроется ниспадающее меню, из которого нужно выбрать опцию Add File:

На экране появится диалоговое окно, в котором нужно указать имя и расположение присоединяемого файла:

После этого в окне менеджера проектов в группе ассемблерных файлов появится имя demo01.asm:

Пометка этого файла красной стрелкой означает, что он является головным в проекте. Выбор этого файла (например, двойной щелчок левой кнопкой мыши) приводит к открытию окна интегрированного в систему программирования редактора текста, с помощью которого нужно ввести следующий текст:


.include "m103def.inc"

;*****Инициализация указателя стека******************

ldi R20, $80           ; загрузка промежуточного регистра R20 адресом начала

; стека = $80

out SPL, R20        ; загрузка младшего байта указателя стека

ldi R20, $00          ;

out SPH, R20        ; загрузка старшего байта указателя стека

;*****Выполнение команд пересылок******************

ldi R20, $57       ; загрузка регистра R20 константой

ldi R30, $65        ; загрузка per. Z значением указателя на память данных

ldi R31, $00        ;

st Z, R20             ; загрузка косвенно адресуемой ячейки ОЗУ $65 из

; регистра R20

lds R19, $65       ; загрузка регистра R19 из ячейки $65

sts $78, R19        ; загрузка ячейки $78 из регистра R19

call Rout

loop:       rjmp loop     ; зацикливание программы

;*****Процедура копирования текста из памяти программ*************

Rout:

push R30        ; сохранение указателя Z в стеке

push R31         ;

ldi R20, $50    ; загрузка регистра R20 новой константой

ldi R30, $80          ; загрузка per.Z значением указателя на память программ

ldi R31, $00          ; (байт по адресу $80 в 16-разр. слове по адресу $40)

lpm    ; чтение кода из памяти программ в R0

cpse R0, R20         ; сравнение содержимого R0 и R20, если равны, прыжок

; через команду

sts $98, R0           ; если не равны, загрузка ячейки $98 из регистра R0

pop R31               ; извлечение указателя X из стека

pop R30               ;

ret                        ; возврат из процедуры

;*************

В первой строке программы находится директива INCLUDE, включающая в текущий головной файл текст файла m103def.inc, в котором описаны ресурсы микроконтроллера AТmega103, а также осуществлено присвоение им символических имен. Только после этого символические имена, например регистров микроконтроллера, можно употреблять в тексте программы. Сам файл описания должен находиться в той же директории, что и головной файл проекта. Это особенность именно кросс-ассемблера системы «AVR Studio». Файл описания ресурсов микроконтроллера можно просмотреть и отредактировать с помощью любого редактора текстов. Файлы описания ресурсов микроконтроллеров фирмы Atmel находятся в директории AVR Studio/Appnotes.

После ввода последней строки текста нужно ввести <ENTER> (перейти на новую строку).

После ввода текста можно, используя команду Project | Assemble (клавиша F7), выполнить трансляцию программы. При правильно набранном тексте кросс-ассемблер выдаст сообщение об успешном завершении трансляции.

4.  Выполнить настройку системы программирования. Для этого нужно ввести команду Debug | Trace into (F11), после чего слева от текста появится стрелка, положение которой соответствует текущему значению счетчика команд PC, т.е. указывает на следующую выполняемую команду.

Опции команды Debug позволяют выполнить одну команду (пошаговый режим) с заходом в подпрограмму нижнего уровня (Trace into - F11) и без захода(Step Over - F10), выполнить несколько команд подряд (Multi Step), выполнить программу до конца или до точки останова (Go).

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

Похожие материалы

Информация о работе

Тип:
Задания на лабораторные работы
Размер файла:
5 Mb
Скачали:
0