avrdude — BLOGS-IT.RU http://www.blogs-it.ru Компьютеры и электроника: о разработке программного обеспечения Mon, 06 May 2013 06:15:20 +0000 ru-RU hourly 1 https://wordpress.org/?v=4.7.3 GUI для avrdude с настраиваемым списком программаторов (AVR8 Burn-O-Mat) http://www.blogs-it.ru/mikrokontrollery-avr/gui-dlya-avrdude-s-nastraivaemym-spiskom-programmatorov-avr8-burn-o-mat/ http://www.blogs-it.ru/mikrokontrollery-avr/gui-dlya-avrdude-s-nastraivaemym-spiskom-programmatorov-avr8-burn-o-mat/#respond Wed, 05 Sep 2012 09:53:21 +0000 http://www.blogs-it.ru/?p=381 На сегодняшний день существует множество различных GUI для оболочки avrdude и, к сожалению, часть из них либо остаются заброшеными и устаревшими, какая-то часть не подходит по различным причинам, таким как отсутствие поддержки требуемого типа программатора или не работает под трубуемую платформу. Поэтому хотелось бы обратить внимание на довольно неплохую реализацию GUI для утилиты avrdude, которая называется AVR8 Burn-O-Mat.

Основные преимущества AVR8 Burn-O-Mat

Основные преимущества этой программы следующие:

  • Кросплатформенность. Программа написана на языке Java и не зависит от платформы, на которой ее необходимо запускать. Правда это также является ее недостатком. Для того чтобы ее можно было запустить вам потребуется предварительно установить на свой компьютер исполнительную среду Java. Но бояться не стоит, если вы еще ее не установили, скачать ее можно здесь: http://java.sun.com/javase/downloads.
  • Широкий функционал. Стоит отметить что опции программы очень широко представлены, многие пользователи отмечают детальную реализацию настроек фьюзов.
  • Расширяемость. Если в программе вы обнаружите, что нужного вам микроконтроллера нет в списке, то вы сами сможете это исправить. Достаточно открыть файл конфигурации и прописать в него параметры вашего программатора.

 Установка

Установка очень проста. Вам нужно скачать архив, содержащий программу AVR8 Burn-O-Mat с их сайта: http://avr8-burn-o-mat.aaabbb.de/avr8_burn_o_mat_avrdude_gui_en.html, затем его распаковать в удобном для вас месте. Не забудьте предварительно установить Java, если вы это еще не сделали: http://java.sun.com/javase/downloads.

Использование программы

Программа имеет интуитивно понятный интерфейс. После запуска оглядите все возможные настройки. Убедитесь, что пути к avrdude и к конфигурации avrdude прописаны верно. Затем выберите нужный тип программатора и порт, к которому он подключен (список поддерживаемых программаторов берется из файла avrdude.conf)

Вот список поддерживаемых микроконтроллеров:

ATmega8, ATmega16, ATmega32, ATmega64, ATmega128, ATmega48, ATmega88, ATmega168, ATmega162, ATmega8515, ATmega8335, ATmega164, ATmega324, ATmega644, ATmega169, ATmega329, ATmega3290, ATmega649, ATmega6490, ATtiny2313, ATtiny13, ATtiny25, ATtiny45, ATtiny85, ATtiny26

Новые микроконтроллеры можно с легкостью добавить самостоятельно. Вся необходимая для этого информация содержится в файле AVR8_Burn_O_Mat_Config.xml.

]]>
http://www.blogs-it.ru/mikrokontrollery-avr/gui-dlya-avrdude-s-nastraivaemym-spiskom-programmatorov-avr8-burn-o-mat/feed/ 0
Интеграция с avrdude — решение совместимости программаторов с AVR Studio 5, ATMEL Studio 6 http://www.blogs-it.ru/mikrokontrollery-avr/integraciya-s-avrdude-reshenie-sovmestimosti-programmatorov-s-avr-studio-5-atmel-studio-6/ http://www.blogs-it.ru/mikrokontrollery-avr/integraciya-s-avrdude-reshenie-sovmestimosti-programmatorov-s-avr-studio-5-atmel-studio-6/#respond Wed, 05 Sep 2012 08:04:43 +0000 http://www.blogs-it.ru/?p=352 AVR Studio 5, или ATMEL Studio 6 поддерживает лишь ограниченное число программаторов. Тем не менее остальные программаторы, не вошедшие в список можно интегрировать в среду разработки используя консольную программу прошивки микроконтроллеров Avrdude.

Начиная с версии AVR Studio 5 среда разработки основывается на оснастке Micrisoft Visual Studio 2012, которая содержит в свойствах проекта опцию по вызову произвольных пакетных команд. Выполнение команд привязано к основным событиям постоения проекта (Build Events) — команды, выполняемые до построения проекта и команды, выполняемые после построения проекта.

Настраиваем среду исполнения

Итак, открываем среду разработки AVR Studio 5, или ATMEL Studio 6, открываем существующий или создаем новый проект и открываем его свойства:

Свойства проекта

На экране в центральной области откроется вкладка со свойствами выбранного проекта. Выберите вкладку «Build Events»:

Вкладка события постоения

Прошивать микроконтроллер необходимо после успешного построения проекта, поэтому команды следует вводить в соответствующее поле «Post-build event command line» .

Создаем команду заливки прошивки в микроконтроллер

В это поле необходимо ввести команду, которая выполнит заливку только что сделанной прошивки в микроконтроллер. Для этого воспользуемся программой avrdude.exe.

Для того чтобы сформировать команду на заливку прошивки необходимо изучить параметры командной строки avrdude.exe для вашего типа микроконтроллера и сформировать макрос, определяющий путь к файлу, генерируемой прошивки (информацию по командам avrdude вы можете найти здесь: прошивание микроконтроллеров утилитой Avrdude). Я же приведу пример вызова команды для своего типа программатора jtagmkI.

Команда avrdude требует в качестве параметра путь к файлу с прошивкой. Этот путь можно сформировать автоматически воспользовавшись макросами среды разработки:

"$(OutputDirectory)\$(MSBuildProjectName).hex"

Использование макросов предпочтительно тому, если вы пропишите путь к прошивке жестко, т.к. путь к файлу прошивки может измениться если вы, к примеру, перенесете свой проект в другую папку , переименуете проект или даже переключитесь из режима Debug в режим Release. Применение макросов гарантирует, что каждый раз при вызове события построения проекта команде будет сформирован правильный путь к прошивке.

Итак, разобравшись с параметрами команды у меня получилась строчка следующего вида:

avrdude.exe -c jtagmkI -p m32 -P COM3 -U flash:w:"$(OutputDirectory)\$(MSBuildProjectName).hex":i -U hfuse:w:^<0x91^>:m -U lfuse:w:^<0xFF^>:m

Осталось только определить путь к программе avrdude и убедиться что в опциях проекта стоит галочка напротив пункта «Генерировать .hex». Для этого заходим в свойствах проекта на вкладку «Buid» и ставим галочку:

Галочка напротив пункта Generate .hex file

Смотрим что получилось

Теперь всякий раз после того как вы будете выполнять построение проекта будет автоматически производиться вызов команды прошивания микроконтроллера.

В случае, если avrdude не сможет выполнить заливку программы среда разработки выдаст в окне «Список ошибок» соответствующую запись.

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

]]>
http://www.blogs-it.ru/mikrokontrollery-avr/integraciya-s-avrdude-reshenie-sovmestimosti-programmatorov-s-avr-studio-5-atmel-studio-6/feed/ 0