При запуске AVR Studio предлагает либо создать новый проект (New Project)
или открыть уже существующий (Open).
1
Рис. 1 – Окно выбора для открытия или создания нового проекта в AVR Studio
При создании нового проекта в окне тип проекта (Project Type) выбираем
ассемблер (Atmel AVR Assembler), заполняем поля имя проекта (Project Name) и
заглавный файл (Initial File). Нажимаем далее (Next)…
2
Рис. 3 – Окно платформа отладки и выбор устройства
3
5.3 Написание программы
5.3.1 Стек
При написании программы для микроконтроллеров AVR семейства Mega
следует не забывать выполнять инициализацию стека. Во всех микроконтроллерах
семейства Mega стек реализован программно. Он размещается в памяти данных, и его
глубина определяется только размером свободной области памяти данных. В качестве
указателя стека используется пара регистров ввода/вывода SPH:SPL. Так как после
подачи напряжения питания (или после сброса) в регистрах содержится нулевое
значение, в самом начале программы указатель стека необходимо
проинициализировать, записав в него значение верхнего адреса памяти данных.
Обычно это делается следующим образом:
4
При вызове подпрограмм адрес команды, расположенной за командой вызова,
сохраняется в стеке. Значение указателя стека при этом уменьшается на 2 или 3, в
зависимости от размера счетчика команд. При возврате из подпрограммы этот адрес
извлекается из стека и загружается в счетчик команд. Значение указателя стека
соответственно увеличивается на 2 C).
То же происходит и во время прерывания. При генерации прерывания адрес
следующей команды сохраняется в стеке, а при возврате из подпрограммы обработки
прерывания он восстанавливается из стека. Во всех моделях микроконтроллеров
семейства Mega стек доступен программно. Для работы со стеком имеются две
команды: команда занесения в стек (PUSH) и команда извлечения из стека (POP).
5.4 Компиляция
5
Рис. 7 – Вкладка Конструкция (Build) с таблицей использованных ресурсов
5.5 Симуляция
6
Для облегчения процесса программирования и отладки в AVR Studio
предусмотрено множество вспомогательных средств:
7
Рис. 10 – Окно состояния памяти микроконтроллера
8
Рис. 12 – Вкладка просмотра состояния внутренних устройств микроконтроллера
После того как проект прошел отладку данную программу можно зашивать в
микроконтроллер.
8 Контрольные вопросы:
8.1 Для чего необходима среда AVR Studio?
8.2 Какие микроконтроллеры поддерживает среда AVR Studio?
8.3 На каких языках программирования можно выполнять написание программ в
среде AVR Studio?
8.4 Что такое компиляция?
8.5 Что такое ассемблирование?
8.6 Что такое симуляция?
9
8.7 Что такое отладка?
9. Рекомендованная литература:
1.Основна:
1.1 Евстифеев А.В. Микроконтроллеры AVR семейств Tiny и Mega фирмы
ATMEL / А.В. Евстифеев. – М.: издательский дом «ДОДЭКА-XXI», 2004.
2.Додаткова:
10