Программные средства для микроконтроллеров AVR фирмы Atmel
Для написания и отладки микропрограммного обеспечения (МПО) требуется ряд инструментов, в т.ч.:
- редактор кода программы;
- компилятор;
- отладчик кода программы (с помощью симулятора и/или аппаратного отладчика);
- интерфейсы аппаратных отладочных средств (эмуляторы, программаторы, отладчики).
Для ускорения процесса создания МПО также могут использоваться мастера автоматической генерации кода программы, библиотеки функций и другое вспомогательное ПО.
Перечисленные инструменты, как правило, доступны в виде единого программного пакета, который носит название интегрированной среды для проектирования (IDE). Ниже, можно ознакомиться с большинством популярных IDE для микроконтроллеров AVR.
Наименование | Разработчик | Описание | Язык программирования | Ограничения бесплатной версии |
AVR Studio | Atmel | Полностью бесплатная профессиональная IDE от производителя МК AVR. | Ассемблер, Си/Си++ 1) | нет |
WinAVR | Открытое ПО http://winavr.sourceforge.net/ | Открытая IDE на основе бесплатного Си-компилятора AVR GCC. | Си, Си++ | нет |
Arduino | Arduino Software http://arduino.cc/ | Написанная на Java и полностью бесплатная IDE, которая является частью одноименной открытой аппаратной платформы на основе МК AVR. Содержит простой редактор кода, компилятор (AVR GCC) и интерфейс программатора. | Processing/ Wiring 2) | нет |
Algorithm Builder | http://algrom.net/ | Бесплатная IDE, которая в целях сокращения сроков разработки ПО в 3-5 раз, предлагает графический способ программирования в виде блок-схемы алгоритма. | Графический ассемблер | нет |
AVRco | E-LAB http://www.e-lab.de | Простая в освоении коммерческая IDE с компилятором Паскаль и удобным мастером создания проекта, который автоматически добавляет поддержку драйверов указанных внутренних и внешних аппаратных компонентов. | Паскаль | 1) поддерживаются все МК, а код программы ограничен 4 килобайтами 2) поддерживаются только mega8/mega48, а код программы ограничен 8 килобайтами |
IAR Embedded Workbench | IAR Systems http://www.iar.com/ | Профессиональная коммерческая IDE. | Си, Си++ | 1) 30-дневная оценочная версия 2) версия с ограничением кода программы 4 килобайтами |
Micro-IDE | BiPOM Electronics http://www.bipom.com/ | Коммерческая недорогая IDE, поддерживающая разнообразные платформы МК. Поддержка МК AVR обеспечивается версией BASCOM-AVR со встроенным компилятором Бейсик. | Бейсик | Демоверсия с ограничением кода программы 2 килобайтами |
SwiftForth | Forth Inc. http://www.forth.com/ | Интерактивная многоплатформенная коммерческая IDE на основе кросс-компилятора языка Forth, разработанного специально для встраиваемых систем и систем реального времени | Forth | Ограничение по коду программы, невозможность сохранения объектных файлов |
CodeVisionAVR | HP Infotech http://www.hpinfotech.ro | Высококачественная IDE со встроенными ANSI Си-компилятором и мастером автоматической генерации программы. | Си | Оценочная версия с ограничением кода программы 3 килобайтами |
Proteus | Labcenter Electronics http://www.labcenter.co.uk/ | Proteus — система для разработки электронных устройств на основе МК, в т.ч. AVR. Её схемный редактор поддерживает уникальную возможность моделирования работы электрической схемы вместе с МК, исполняющим заданную программу. При подключении специальных отладочных файлов (elf, cof) превращается в полнофункциональный отладчик программы на уровне исходного кода. | Ассемблер, Си 3) | Невозможность сохранения, печати и создания собственных схем на основе МК (допускается только просмотр и модификация входящих в комплект примеров) |
- Cовместно с WinAVR.
- Язык Processing/Wiring — это тот же Си/Си++, но дополненный рядом простых в использовании библиотек для решения типичных задач ввода-вывода. Создан с целью быстрого освоения программирования МК даже новичками, аматерами и неспециалистами в области разработки встраиваемого ПО.
- В комплект не входят.
Тип | Наименование |
Компилятор | Компилятор ассемблера для AVR |
Утилита программирования | ChipBlasterAVR — универсальная утилита для внутрисистемного программирования |
3. Микропрограммное обеспечение
3.1. Операционные системы
Наименование, ссылка | Описание |
FreeRTOS http://www.freertos.org/ | Многоплатформенная открытая операционная система реального времени (ОСРВ), которую абсолютно бесплатно можно использовать в коммерческих применениях. |
3.2. Библиотеки
3.3. Примеры программ
Интегрированная отладочная среда AVR Studio фирмы Atmel
AVR Studio 4 — новая профессиональная интегрированная среда разработки (Integrated Development Environment — IDE), предназначенная для написания и отладки прикладных программ для AVR микропроцессоров в среде Windows 9x/NT/2000. AVR Studio 4 содержит ассемблер и симулятор. Также IDE поддерживает такие средства разработки для AVR как: ICE50, ICE40, JTAGICE, ICE200, STK500/501/502 и AVRISP. В ближайшие месяцы будет расширен список поддерживаемых AVR Studio 4 микроконтроллеров и средств разработки. Обо всех обновлениях можно будет узнать на интернет сайте.
AVR Studio поддерживает COFF как формат выходных данных для символьной отладки. Другие программные средства третьих фирм также могут быть сконфигурированы для работы с AVR Studio.
Окно исходного текста программ
Ключевое окно в AVR Studio это окно исходного текста программы. Когда объектный файл открыт, автоматически создается окно исходного текста программ. В окне отображается код, который выполняется в отладочном окружении (эмуляторе или программном симуляторе) а текстовый маркер всегда находится на строке, которая будет выполнена в следующем цикле.
Выполнение программ и пошаговый режим
Пользователь может выполнять программу полностью в пошаговом режиме, трассируя блоки функций, или выполняя программу до места, где стоит курсор. В дополнение можно определять неограниченное число точек останова, каждая из которых может быть включена или выключена. Точки останова сохраняются между сессиями работы.
В окне исходного текста программы выводится информация о процессе выполнения программы. В дополнение, AVR Studio имеет много других окон, которые позволяют управлять и отображать информацию о любом элементе микроконтроллера.
Список доступных окон:
- Watch window: Окно показывает значения определенных символов. В этом окне пользователь может просматривать значения и адреса переменных.
- Trace window: Окно показывает хронологию программы, выполняемой в настоящее время.
- Register window: Окно показывает содержимое регистров. Регистры можно изменять во время остановки программы.
- Memory windows: Окна показывают содержимое памяти программ, данных, портов ввода/вывода и энергонезависимого ПЗУ. Память можно просматривать в HEX, двоичном или десятичном форматах. Содержимое памяти можно изменять во время остановки программы.
- I/O window: Показывает содержимое различных регистров ввода/вывода:
- EEPROM
- I/O порты
- Таймеры
- и т.д.
- Message window: Окно показывает сообщения от AVR Studio.
- Processor window: В окне отображается важная информация о ресурсах микроконтроллера, включая программный счетчик, указатель стека, регистр статуса и счетчик цикла. Эти параметры могут модифицироваться во время остановки программы.
Настройки рабочего окружения сохраняются при выходе. При первом запуске требуется настроить окна для управления и вывода необходимой информации. Во время следующей загрузки настройки автоматически восстанавливаются.
В AVR Studio включена поддержка отладочных средств фирмы Atmel:
- Внутрисхемный эмулятор Atmel ICEPRO
- Внутрисхемный эмулятор Atmel MegaICE
- Внутрисхемный эмулятор Atmel AVRICE
- Внутрисхемный эмулятор Atmel ICE200
- Внутрисхемный эмулятор Atmel AsicICE
- Внутрисхемный эмулятор Atmel ICE10
- Внутрисхемный эмулятор Atmel ICE30
С AVR Studio также совместимы любые программаторы и отладочные средства, которые поддерживают микроконтроллеры фирмы Atmel.
AVR Studio 4.12 Service Pack 4 (сентябрь 2006) Очередное обновление популярной интегрированной среды для проектирования со встроенным ассемблером и симулятором. Четвертый пакет обновления SP4 наследовал все новые возможности предыдущих обновлений SP1, SP2 и SP3. Обновлены программа, прошивка, руководство пользователя и список поддерживаемых микроконтроллеров у AVR Dragon. Также в пакет входят новые прошивки для отладочных средств JTAGICE MKII и STK500. Включена поддержка новых типов микроконтроллеров, в т.ч.: ATmega644P, ATmega329P, ATmega3290P, ATmega325P, ATmega3250P. Устранены ошибки в работе симулятора, ассемблера и JTAGICEmkII. Обратите внимание, что AVR Studio 4 SP3 и SP4 не могут работать в составе операционной системы Windows 95. |
Интегрированная среда для проектирования AVR Studio 4.12 (45Mb Ноябрь 2005 г.) |
AVR Studio 4.11 Service Pack 3 (27 MB, updated Май 2005 г.) |
Интегрированная среда для проектирования AVR Studio 4.11 (41Mb Январь 2005 г.) |
Интегрированная среда для проектирования AVR Studio 4.10 (30Mb Сентябрь 2004 г.) Новика! AVR Studio 4.10 с обновленным ассемблером (версия 2 beta-5 (AVRASM2)), старая версия ассемблера AVRASM1 подключена по умолчанию. Обновлен симулятор AVR Studio, который теперь также поддерживает новые микроконтроллеры AVR ATmega165, ATmega649, ATmega325, ATmega3250, ATmega3290. Обновлена программная поддержка JTAGICE2, ICE50, STK500, AVRISP, JTAGICE2. Обновлен USB WinDriver с версии 6.03 на версию 6.22. |
Интегрированная среда для проектирования AVR Studio 4.09 (28Mb апрель 2004 г.) В AVR Studio 4.09 добавлена поддержка JTAGICE mkII. В сочетании с новой версией AVR Studio JTAGICE mkII является завершенным инструментальным средством для выполнения внутрикристальной отладки всех 8-разр. AVR RISC микроконтроллеров, содержащих для этой цели интерфейс JTAG или однопроводной интерфейс debugWIRE. В данную версию также добавлена поддержка новых микроконтроллеров, а также внесено несколько улучшений. |
AVR Studio 4.08 SP1 (8 Мбайт, обновлено 2/04) Это служебный выпуск AVR Studio 4, который требует предварительной инсталляции AVR Studio версии 4.08. Он добавляет поддержку симуляции и эмуляции (ICE50) нового семейства AVR -микроконтроллеров ATMega48. Полная информация об особенностях данного выпуска приведена во включенной документации, которая доступна из меню Help в AVR Studio. |
AVR Studio 4.08 (26 Мбайт, обновлено 12/03) AVR Studio 4.08 — интегрированная среда разработки (IDE), предназначенная для написания и отладки прикладных программ для AVR микропроцессоров в среде Windows 9x/NT/2000. Обновлены трассировщик, монитор стека и поддержка усовершенствованного USB для ICE40/50. Кроме того, имеется еще ряд дополнений. |
12756 Kb AVR Studio V4.0 |
7163 Kb AVR Studio V3.56 |
1.31 Mb AVR LCD Visualizer версии 1.0 (обновлено 02/2004), общедоступная бета- версия. Создание и изменение ЖКИ при помощи редактора, отладка и визуализация при помощи дополнений к программе AVR Studio. Обновление в реальном времени при работе с ICE50 и симулятором. Поддерживает ATmega169. Для установки требует наличие IDE AVR Studio версии 4.07 или более новой. Перед установкой необходимо удалить старые ЖКИ дополнения к программе. |
Программа калибровки RC генератора для STK500/AVRISP (обновлено 12/03) STK500/AVRISP — бета- версия программы, обеспечивающей калибровку RC генератора из командной строки инструментов разработки. Для корректной работы этой программе требуется AVR Studio версии 4.08 или более новая версия. Для выполнения обновления встроенного программного обеспечения STK500/AVRISP рекомендуется следовать рекомендациям, описанным в справке по AVR Studio. |
Интегрированная отладочная среда AVR Studio фирмы Atmel
AVR Studio 4 — новая профессиональная интегрированная среда разработки (Integrated Development Environment — IDE), предназначенная для написания и отладки прикладных программ для AVR микропроцессоров в среде Windows 9x/NT/2000. AVR Studio 4 содержит ассемблер и симулятор. Также IDE поддерживает такие средства разработки для AVR как: ICE50, ICE40, JTAGICE, ICE200, STK500/501/502 и AVRISP. В ближайшие месяцы будет расширен список поддерживаемых AVR Studio 4 микроконтроллеров и средств разработки. Обо всех обновлениях можно будет узнать на интернет сайте.
AVR Studio поддерживает COFF как формат выходных данных для символьной отладки. Другие программные средства третьих фирм также могут быть сконфигурированы для работы с AVR Studio.
Окно исходного текста программ
Ключевое окно в AVR Studio это окно исходного текста программы. Когда объектный файл открыт, автоматически создается окно исходного текста программ. В окне отображается код, который выполняется в отладочном окружении (эмуляторе или программном симуляторе) а текстовый маркер всегда находится на строке, которая будет выполнена в следующем цикле.
Выполнение программ и пошаговый режим
Пользователь может выполнять программу полностью в пошаговом режиме, трассируя блоки функций, или выполняя программу до места, где стоит курсор. В дополнение можно определять неограниченное число точек останова, каждая из которых может быть включена или выключена. Точки останова сохраняются между сессиями работы.
В окне исходного текста программы выводится информация о процессе выполнения программы. В дополнение, AVR Studio имеет много других окон, которые позволяют управлять и отображать информацию о любом элементе микроконтроллера.
Список доступных окон:
- Watch window: Окно показывает значения определенных символов. В этом окне пользователь может просматривать значения и адреса переменных.
- Trace window: Окно показывает хронологию программы, выполняемой в настоящее время.
- Register window: Окно показывает содержимое регистров. Регистры можно изменять во время остановки программы.
- Memory windows: Окна показывают содержимое памяти программ, данных, портов ввода/вывода и энергонезависимого ПЗУ. Память можно просматривать в HEX, двоичном или десятичном форматах. Содержимое памяти можно изменять во время остановки программы.
- I/O window: Показывает содержимое различных регистров ввода/вывода:
- EEPROM
- I/O порты
- Таймеры
- и т.д.
- Message window: Окно показывает сообщения от AVR Studio.
- Processor window: В окне отображается важная информация о ресурсах микроконтроллера, включая программный счетчик, указатель стека, регистр статуса и счетчик цикла. Эти параметры могут модифицироваться во время остановки программы.
Настройки рабочего окружения сохраняются при выходе. При первом запуске требуется настроить окна для управления и вывода необходимой информации. Во время следующей загрузки настройки автоматически восстанавливаются.
В AVR Studio включена поддержка отладочных средств фирмы Atmel:
- Внутрисхемный эмулятор Atmel ICEPRO
- Внутрисхемный эмулятор Atmel MegaICE
- Внутрисхемный эмулятор Atmel AVRICE
- Внутрисхемный эмулятор Atmel ICE200
- Внутрисхемный эмулятор Atmel AsicICE
- Внутрисхемный эмулятор Atmel ICE10
- Внутрисхемный эмулятор Atmel ICE30
С AVR Studio также совместимы любые программаторы и отладочные средства, которые поддерживают микроконтроллеры фирмы Atmel.
AVR Studio 4.12 Service Pack 4 (сентябрь 2006) Очередное обновление популярной интегрированной среды для проектирования со встроенным ассемблером и симулятором. Четвертый пакет обновления SP4 наследовал все новые возможности предыдущих обновлений SP1, SP2 и SP3. Обновлены программа, прошивка, руководство пользователя и список поддерживаемых микроконтроллеров у AVR Dragon. Также в пакет входят новые прошивки для отладочных средств JTAGICE MKII и STK500. Включена поддержка новых типов микроконтроллеров, в т.ч.: ATmega644P, ATmega329P, ATmega3290P, ATmega325P, ATmega3250P. Устранены ошибки в работе симулятора, ассемблера и JTAGICEmkII. Обратите внимание, что AVR Studio 4 SP3 и SP4 не могут работать в составе операционной системы Windows 95. |
Интегрированная среда для проектирования AVR Studio 4.12 (45Mb Ноябрь 2005 г.) |
AVR Studio 4.11 Service Pack 3 (27 MB, updated Май 2005 г.) |
Интегрированная среда для проектирования AVR Studio 4.11 (41Mb Январь 2005 г.) |
Интегрированная среда для проектирования AVR Studio 4.10 (30Mb Сентябрь 2004 г.) Новика! AVR Studio 4.10 с обновленным ассемблером (версия 2 beta-5 (AVRASM2)), старая версия ассемблера AVRASM1 подключена по умолчанию. Обновлен симулятор AVR Studio, который теперь также поддерживает новые микроконтроллеры AVR ATmega165, ATmega649, ATmega325, ATmega3250, ATmega3290. Обновлена программная поддержка JTAGICE2, ICE50, STK500, AVRISP, JTAGICE2. Обновлен USB WinDriver с версии 6.03 на версию 6.22. |
Интегрированная среда для проектирования AVR Studio 4.09 (28Mb апрель 2004 г.) В AVR Studio 4.09 добавлена поддержка JTAGICE mkII. В сочетании с новой версией AVR Studio JTAGICE mkII является завершенным инструментальным средством для выполнения внутрикристальной отладки всех 8-разр. AVR RISC микроконтроллеров, содержащих для этой цели интерфейс JTAG или однопроводной интерфейс debugWIRE. В данную версию также добавлена поддержка новых микроконтроллеров, а также внесено несколько улучшений. |
AVR Studio 4.08 SP1 (8 Мбайт, обновлено 2/04) Это служебный выпуск AVR Studio 4, который требует предварительной инсталляции AVR Studio версии 4.08. Он добавляет поддержку симуляции и эмуляции (ICE50) нового семейства AVR -микроконтроллеров ATMega48. Полная информация об особенностях данного выпуска приведена во включенной документации, которая доступна из меню Help в AVR Studio. |
AVR Studio 4.08 (26 Мбайт, обновлено 12/03) AVR Studio 4.08 — интегрированная среда разработки (IDE), предназначенная для написания и отладки прикладных программ для AVR микропроцессоров в среде Windows 9x/NT/2000. Обновлены трассировщик, монитор стека и поддержка усовершенствованного USB для ICE40/50. Кроме того, имеется еще ряд дополнений. |
12756 Kb AVR Studio V4.0 |
7163 Kb AVR Studio V3.56 |
1.31 Mb AVR LCD Visualizer версии 1.0 (обновлено 02/2004), общедоступная бета- версия. Создание и изменение ЖКИ при помощи редактора, отладка и визуализация при помощи дополнений к программе AVR Studio. Обновление в реальном времени при работе с ICE50 и симулятором. Поддерживает ATmega169. Для установки требует наличие IDE AVR Studio версии 4.07 или более новой. Перед установкой необходимо удалить старые ЖКИ дополнения к программе. |
Программа калибровки RC генератора для STK500/AVRISP (обновлено 12/03) STK500/AVRISP — бета- версия программы, обеспечивающей калибровку RC генератора из командной строки инструментов разработки. Для корректной работы этой программе требуется AVR Studio версии 4.08 или более новая версия. Для выполнения обновления встроенного программного обеспечения STK500/AVRISP рекомендуется следовать рекомендациям, описанным в справке по AVR Studio. |
AVR Studio – интегрированная среда разработки (2 страницы, обновлено 9/02) Описание программной оболочки интегрированной среды разработки AVR Studio. | |
AVR001: Условное ассемблирование и макрос мобилизации (6 страниц, обновлено 12/03) Этот пример применения описывает функцию условного ассемблирования, присутствующую в AVR ассемблере версии 1.71 и более поздних версиях. Включены примеры использования условного ассемблирования для разъяснения синтаксиса. | |
AVR244: UART как интерфейс ANSI терминала (8 страниц, обновлено 11/03) Этот пример применения описывает некоторые основные программы, позволяющие организовать интерфейс между AVR микроконтроллерами и окном терминала при помощи UART (аппаратного или программного). |
При подготовке материала использовались источники:
http://www.gaw.ru/html.cgi/txt/soft/avr/start.htm
http://www.gaw.ru/html.cgi/adv/soft/avr/astudio.htm
http://www.gaw.ru/html.cgi/txt/soft/avr/astudio.htm