Графическая оболочка для avrdude под MacOS

avrfuses

Программа avrdude поддерживает все актуальные программаторы микроконтроллеров AVR и является кроссплатформенной (Linux, Windows, MacOS). Это консольная утилита и её удобно вызывать из shell/bat-скриптов. Единожды написав такой файлик и положив его в директорию с проектом, получаем возможность быстро прошить и проверить фьюзы, flash и eeprom микроконтроллера. Проблема только в том, чтобы написать этот скрипт. И тут основную головную боль вызывают fuse-биты, т.к. надо правильно сформировать их значения нигде не ошибившись. Иначе, устройство, в лучшем случае, может не заработать совсем или работать неправильно. Ну а в худшем случае можно "окипрпичить" микроконтроллер.

Для avrdue написано много разных графических оболочек под Windows, но среди всего этого многообразия не так просто найти удобный и не сильно глючный софт. Основное требование к оболочке - возможность работать с fuse-битами не как с числами или набором непонятных чекбоксов, а в нормальном человекочитаемом формате. Под MacOS вариантов оболочек совсем не много, но, к счастью, есть open-source проект AVRFuses и с фьюзами там всё относительно неплохо. Плюс открытый исходный код даёт возможность неограниченно затачивать этот инструмент под себя.

Главное окно содержит пару вкладок - работа в flash/eeprom и работа с фьюзами. Тут всё просто - можно выбрать микроконтроллер и файл(ы) прошивки, а затем записать/прочитать/сравнить с содержимым памяти микроконтроллера. Собственно, кнопка ручного выбора микроконтроллера оказалась жутко неудобной - при переключении с одного проекта на другой приходилось каждый раз нажимать её и выбирать из немаленького списка нужный микроконтроллер. Поэтому, первым делом я добавил кнопку Autodetect, нажатие на которую стартует считываение сигнатуры микроконтроллера, подключённого к программатору, и определение его модели по этой сигнатуре.

AVRFuses - главное окно

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

AVRFuses - работа с фьюзами

Существенный недостаток подобных оболочек в том, что при одновременной работе с несколькими проектами и частым переключением между ними, приходится каждый раз заново вбивать пути к файлам, и настраивать по памяти значения фьюзов, что скучно и отнимает время. Поэтому в оболочку была добавлена работа с проектами. Выбрав путь к прошивке и настроив фьюзы выбираем в меню ->Projects->New Project. Откроется окно, где можно посмотреть, отредактировать и сохранить все параметры.

AVRFuses - настройки проекта

Теперь переходить от проекта к проекту можно в один клик в меню Projects. Там же можно отредактировать созданные проекты.

AVRFuses - список проектов

Ссылки

Скачать последнюю версию с описанными доработками можно с моего github-а

Автор проекта, Jason von Nieda, весьма оперативно принимает pull-request-ы, и обычно, мои изменения попадают и в его сборку, которую можно скачать на сайте проекта.

В дальнейшем приложение умеет самообновляться по сети.

Рейтинг: 
0
Голосов еще нет