Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Схемы и программы (https://forum.antichat.xyz/forumdisplay.php?f=61)
-   -   SinaProg — графическая оболочка для AVRDude (https://forum.antichat.xyz/showthread.php?t=202176)

bymugen 06.05.2010 18:49

SinaProg — графическая оболочка для AVRDude
 
Вот уже много лет существует мощнейшей программа для прошивки — avrdude. Программа эта поддерживает почти все виды программаторов, а те что не поддерживает изначально легко в нее добавляются.
Но есть у ней особенность которая сильно отпугивает многих — она консольная. И все шаманства с ней заключаются в формировании командной строки.

С одной стороны это хорошо — консольная утилита позволяет очень сильно ускорить и автоматизировать процесс прошивки. Один раз написал батничек и для перешивки только вызывать его и все.

Остается проблема прошивки разных устройств, ведь под каждую придется делать свой батник. И ладно бы ключи прописать, да файл с прошивкой указать. Самая засада начинается с fuse битами (впрочем, как и везде в мире AVR ;) ) Тут их надо вначале внимательно проштудировать в даташите, выписать в виде байтов, вписать правильно в командную строку и молиться на то, чтобы нигде не ошибиться.
Да, для avrdude написано много оболочек, но все что мне встречались раньше решали лишь малозначительную проблему выбора нужного ключа файла и/или программатора, а фузы также было надо указывать числом.

Проблема решилась с появлением новой версии оболочки SinaProg от команды иранских AVR программеров.


Морда выглядит простенько и со вкусом. Ничего лишнего. Выбираем в первой строке хекс файла и зашиваем его в нужную память — flash или eeprom.

Следом идет прогресс бар и кнопка открытия консольного лога — ошибки смотреть.

Ниже выбираем тип микроконтроллера, также есть кнопочка поиска — полезно для проверки работы программатора.

Отдельно стоит сказать про секцию Fuses.
Осторожней с выпадающим списком. С виду там все просто, но это на самом деле предустановки, описываются они файле Fuse.txt вот его дефолтное содержание:
  1. Default.
  2. []
  3. ;
  4. ATmega8.ATmega16.
  5. [Int. 1 MHz d9e1
  6. Int. 2 MHz d9e2
  7. Int. 4 MHz d9e3
  8. Int. 8 MHz d9e4
  9. Ext. Crys. d9ff]
  10. ;
  11. ATmega32.
  12. [Int. 1 MHz d9e1
  13. Int. 2 MHz d9e2
  14. Int. 4 MHz d9e3
  15. Int. 8 MHz d9e4
  16. Ext. Crys. d9ff]

Видишь, формат очень прост. Строка контроллера (обязательно с точкой!) и в квадратных скобаках возможные варианты (отделенные табуляцией) с байтами тех самых фузов. Обратите внимание, что тут меняется СРАЗУ ОБА БАЙТА Fuse битов. Т.е. касаются далеко не только тактовой частоты. А еще всего остального что конфигурируется в FUSE. Так что я бы сразу переназвал их иначе. Скажем как
All Default,but 1MHZ
All Default,but 2MHZ
All Default,but 4MHZ

Чтобы было понятней. Но это как бы быстрые шаблоны и не претендуют на глобальность.

Лучше сразу нажать Advanced и узреть … тот самый цифровой ввод.


Но не стоит напрягаться, достаточно нажать кнопочку “С” (видимо авторы имели ввиду Calculator) и увидеть удобнейшие выпадающие списки с человеческим описанием. Прям как в STK500.


Но ни в коем случае не забывайте нажать кнопочку READ перед тем как что либо менять. Помните, неустановленные fuse это тоже какое то значение, которое будет записано при нажатии кнопки WRITE

В проге уже забиты настройки под большинство программаторов. Если вашего там нет, то его можно легко туда добавить. Смотреть ЗДЕСЬ (Оригинал).

Скачать SinaProg:
depositfiles (24.67 МБ)
narod (24.67 МБ)

Всем и самого bymugen


Время: 19:33