суббота, 9 февраля 2013 г.

фреймворк для микроконтроллера

Далее следует определиться, какой makefile Вы будете использовать. Есть два варианта. Первый подразумевает использование созданного в ручную makefile-а. У этого подхода есть неоспоримое преимущество Вы можете проставлять относительные пути к исходным файлам ASF. То есть при переносе исходного кода на другой компьютер если и придется поправить что либо, то это будет одна строчка, да и то только в том случае, если Ваш проект будет иначе расположен относительно директории «asf-2.0.0». Недостаток этого подхода очевиден, такие файлы придется создавать и редактировать вручную. Во втором случае можно использовать только настройки AVR Studio. Здесь руками править ничего не придется, но все пути включения заголовочных файлов студия упорно проставляет в абсолютном формате, хотя для файлов исходного кода устанавливаются относительные пути. Получается непереносимый (вернее, тяжело переносимый) с компьютера на компьютер проект. Я пока для себя решил пользоваться первым вариантом.

Так как пакет ASF включает в себя файлы исходного кода, нужно понимать, что Вам придётся включать эти файлы в свой проект. Именно включать, а не копировать. Копировать я не рекомендую, так как этим Вы нарушите дерево каталогов (а зависимости между драйверами весьма жёсткие). Да и обновление драйверов превратится в проблему. Поэтому условьтесь для себя, как относительно директории «asf-2.0.0» будут располагаться Ваши проекты. Вообще, ATMEL рекомендует располагать проекты в каталоге «asf-2.0.0\xmega\applications», но мне этот путь подходит только для проектов, созданных для компиляции примеров из ASF. Я условился располагать каталоги проектов в том же каталоге, что и «asf-2.0.0».

Для начала необходимо . Я скачивал полную версию, но из архива распаковывал только каталог «asf-2.0.0\xmega». Кроме распаковки какой либо установки не требуется. Единственное, что крайне желательно сделать, это обновить заголовочные файлы для микроконтроллеров XMEGA в пакете WinAVR. Исправленные заголовочные файлы находятся в том же архиве, что и AVR Software Framework, в каталоге «asf-2.0.0\xmega\utils\header_files».

Приступаем к работе с AVR Software Framework

С тем, что из себя представляет AVR Software Framework, мы немного разобрались. Пора на практике познакомится с этим порождением инженерной мысли.

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

Утилиты для сборки разными компиляторами включают в себя заголовочные файлы, учитывающие особенности того или иного компилятора. Это вовсе не набор бинарных модулей, как изначально можно было бы подумать. На данный момент поддерживаются два компилятора: GCC и IAR.

Описание плат, это наборы файлов, в которых определено, какая периферия к каким линиям микроконтроллера подключена. Естественно, речь идет о той периферии, о которой знает Framework. Это кнопки, светодиоды, кварцевые резонаторы, микросхемы памяти и, возможно, еще что то. Кроме того, описание платы может включать в себя процедуру ее инициализации. В комплекте поставляются описания для большинства демонстрационных плат, выпущенных компанией ATMEL. Если Вы не являетесь счастливым обладателем одной из этих железяк, можно определить описание пользовательской платы (пусть даже и пустое).

Вспомогательные сервисы, в отличии от драйверов модулей, предоставляют более высокоуровневые функции. Именно использование сервисов позволит Вам сэкономить массу времени на написании и отладке кода.

Драйверы периферийных модулей состоят из заголовочного файла и файла исходного кода. Они предназначены для абстрагирования функционала от конкретных регистров и предоставляют простейшие низкоуровневые функции для работы с модулем.

утилиты для сборки разными компиляторами;

вспомогательные сервисы;

драйверы периферийных модулей;

В состав AVR Software Framework входит следующее:

В итоге, программисты компании ATMEL разработали набор библиотек, облегчающих работу с микроконтроллерами XMEGA. Эти библиотеки были включены в состав AVR Software Framework 2.0.0, который ранее был предназначен только для 32-разрядных микроконтроллеров серии UC3. Какие же преимущества дает использование этой библиотеки кода? Во первых, Вам не придётся разбираться во всех регистрах того или иного модуля, чтобы начать с ним работать. Во вторых, код для Всех статей по применению можно будет запустить на любом микроконтроллере семейства, а не как было ранее (если статья предназначена для одной mega, для другой приходилось основательно править код). В третьих, если Вы счастливый обладатель демонстрационных плат от ATMEL, код из статей так же можно откомпилировать под любую из них (конечно, в разумных пределах).

С появлением микроконтроллеров семейства XMEGA писать код на языке С стало гораздо приятнее. Написав единожды код для работы с каким либо периферийным модулем для одного микроконтроллера, при переходе на другой микроконтроллер (в пределах одного семейства) не придется заново его переписывать. Это стало возможным благодаря унификации модулей (как минимум, в пределах одного семейства). Теперь появился смысл тратить немного больше времени на написание качественных драйверов для модулей, так как вероятность их повторного использования резко возросла.

Краткий обзор AVR Software Framework

вс, 11/14/2010 - 00:07 Сергей

Использование AVR Software Framework для микроконтроллеров XMEGA

Использование AVR Software Framework для микроконтроллеров XMEGA | www.microcontrollerov.net

Комментариев нет:

Отправить комментарий