ОГЛАВЛЕНИЕ:
Средства разработки приложений на основе микроконтроллеров семейства ATMEL AVR
Программная модель и система команд микроконтроллеров ATMEL AVR
Программирование задач на языке ассемблера
Разработка микроконтроллерного устройства
ЛАБОРАТОРНЫЙ ПРАКТИКУММикропроцессорные системы ЭФУ
В лаборатории
Практикум предназначен для формирования у студентов навыков работы с микроконтроллерными средствами, включая освоение программно-аппаратных средств разработки и программирования на языке ассемблера. В качестве объекта изучения используется семейство микроконтроллеров фирмы Atmel, широко применяемых в микропроцессорных системах ЭФУ как основа для создания современных высокопроизводительных и экономичных встраиваемых контроллеров многоцелевого назначения. В рамках аудиторных занятий выполняются следующие 4-х часовые лабораторные работы:
Средства разработки приложений на основе микроконтроллеров семейства ATMEL AVR
Рис1. Среда разработки AVR Studio.
Целью работы является изучение базовой архитектуры микроконтроллера, освоение интегрированной отладочной среды разработки приложений для микроконтроллеров семейства AVR Studio. Используя несложную, интуитивно понятную программу на языке ассемблера, студенты знакомятся с возможностями среды: управлением проекта с различными целевыми микроконтроллерами, редактором исходного текста, окнами, отражающими ресурс микроконтроллера, средствами трассировки и отладки программы (рис.1).
Программная модель и система команд микроконтроллеров ATMEL AVR
Изучение программной модели и системы команд происходит при отладке предложенных программ на ассемблере, использующих основные инструкции микроконтроллера – перемещения данных, передачи управления, манипуляции с битами, арифметические и логические; различные способы адресации данных – прямые, непосредственные, косвенные, регистровые. Выполняя пошаговую трассировку программ и фиксируя результаты исполнения инструкций, у студентов закрепляются знания об аппаратных ресурсах микроконтроллера и его программной модели.
Программирование задач на языке ассемблера
Лабораторная работа формирует умения программирования на языке ассемблера. Студенты выполняют индивидуальные задания по реализации известных алгоритмов, например, различных способов сортировки чисел, преобразования чисел в различных системах счисления и других. Фактически они подготовлены для этого после выполнения предыдущих лабораторных работ и изучения элементов языка ассемблера, его директив и выражений.
Разработка микроконтроллерного устройства
Рис.2. Система разработки STK500
Заключительная лабораторная работа, формирующая навыки создания реальных контроллеров на базе выбранного микроконтроллера. Работа выполняется с применением платы системы разработки STK500, подключаемой к персональному компьютеру, используя последовательный интерфейс USB или RS232C (рис.2). Данная система позволяет осуществлять внутрисхемное программирование. Она работает совместно с интегрированной средой AVR Studio, с помощью которой отлаженная программа загружается в микроконтроллер для реализации контроллера с заданными функциями.
На панели STK500 имеются ключи и индикаторы, позволяющие проверить работу контроллера.
Примеры заданий по разработке контроллеров:
- Разработать контроллер, следящий за нажатием ключа 1 и осуществляющий при нажатии сдвиг текущего состояния порта ввода/вывода. Для сброса текущего значения используется ключ 2. Вывести результат выполнения программы на светодиоды, подключенные к порту ввода/вывода.- Разработать контроллер, следящий за нажатием ключа 1 и осуществляющий при нажатии увеличение на 1 значения порта ввода/вывода. Для сброса текущего значения используется ключ 2. Вывести результат выполнения программы на светодиоды, подключенные к порту ввода/вывода.- Разработать контроллер, который после нажатия ключа 1 начнет или продолжит счет времени в секундах, при нажатии на ключ 2 сделает паузу, а при нажатии ключа 3 сбросит текущее значение. Вывести результат выполнения программы на светодиоды, подключенные к порту ввода/вывода.- Разработать контроллер, который позволил бы вводить 4-х разрядные двоичные числа с помощью ключей 1…4, используя ключи: 8 – для команды ввода, 7 – сброса кода. Вывести результат выполнения программы последовательно с помощью ключа 5 на светодиоды, подключенные к порту ввода/вывода.
Особенностью выполнения лабораторных работ данного практикума является необходимость освоения студентами достаточно сложных аппаратно-программных средств, на что отведенных аудиторных часов явно недостаточно. И вследствие этого, для обеспечения самостоятельной работы студентам предоставляется на сайте ЭФУ доступ ко всему комплексу необходимых средств, включая документацию в виде руководств по архитектуре микроконтроллеров Atmel AVR, интегрированной среде AVR Studio, системе разработки STK500, ассемблера AVR, запуску приложения AVR Studio, а также удаленный доступ к AVR Studio.