|
ICQ# /
/
/
/
/
Программатор для AVR
Что может быть проще самодельного программатора для AVR? Не угадаете, проще может быть только
покупной программатор для AVR. Есть множество типов программаторов: параллельные, высоковольтные, битбэнг...
Лично я попользовался разными программаторами и пришел к выводу, что просто программатор это скучно,
нужно делать маленький комплекс по восстановлению МК. Практически единственное, с чем я сталкивался, так это
с неправильно выставленным источником тактирования.
Я предпочитаю работать с микроконтроллерами фирмы Atmel. Если быть точным,
то я работаю только с ATMEGA16, ATMEGA8, ATTINY2313 и ATTINY13. Скоро начну
эксперименты с ATMEGA128. Остальное было баловство, либо не привлекло моего внимания.
Выбор типа программатора
Программатор является необходимой железкой при работе с микроконтроллерами. Хотя есть микроконтроллеры, которые
имеют встроенный бутлоадер. Бутлоадер это замечательный финт ушами для железячников, так как позволяет
избавиться от необходимости покупать и использовать ставшую ненужной железяку. В большинстве случаев,
для работы бутлоадера достаточно реализовать связь микроконтроллера с компьютером через UART. Идеально подходит
связка MAX232 и стандартный COM порт компьютера. А если у вас на компьютере нет COM порта, но есть USB, то можно
воспользоваться переходниками или самодельным адаптером, который позволит напрямую подключить наш микроконтроллер к
USB порту компьютера. А так как я практически всегда делаю железки которые общаются с компьютером, то просто
кощунственно не воспользоваться возможностью эксплуотации бутлоадеров. Бутлоадер может быть прошит не только на заводе,
у некоторых микроконтроллеров есть возможность самостоятельно прошить бутлоадер. Например у ATMEGA8 и ATMEGA16 есть
такая возможность, а вот у ATTINY серии подобного функционала нету. А еще, для прошивки бутлоадера, все-таки
необходим программатор.
К программаторам можно отнести и некоторые отладчики, типа JTAG. Они тоже позволяют прошить микроконтроллер. Поиграл я в свое
время с JTAG ICE и пришел к выводу, что мне достаточно отладочных средств которыми я пользуюсь. Для моих целей JTAG
явно избыточен и по этому я его не использую.
К битбэнг программаторам относятся программаторы банально дрыгающие лапами порта (быстро меняющие состояние
выводов порта). Яркий пример программатор Громова. Надежный как топор, правда очень многие люди не смогли
осилить его изготовление. Там в схеме всего несколько резисторов на килоом и несколько любых одинаковых диодов.
У битбэнга есть огромный минус и он заключается в том, что для него нужен настоящий COM порт, а различные переходники
с USB на COM его не устраивают. Есть случаи когда он разботал на них, но это единичные случаи и шьет он тогда катастрофически
медленно. Сейчас же я хочу перестраховаться и иметь в лапах USB программатор.
В противоположность простым программаторам, использующим дрыганье лапок, стоят программаторы со вспомогательным микроконтроллером.
Этот тип программаторов конектится к прошиваемому микроконтроллеру по SPI и пишет в него данные получаемые с компьютера.
Это позволяет добиться высокой скорости записи. Этот тип программаторов страдает одной очень большой проблемой, для
него нужен программатор. Программатор позволяет единоразово прошить этот вспомогательный микроконтроллер для программатора
и больше не вспоминать о нем.
Окончательный выбор программатора для AVR
Среди всего многообразия я остановил свой взор на двух программаторах. На USBasp и AVR910. Но AVR910 был лидером по двум причинам.
Во-первых, он совместим с программой идущей в комплекте с AVR Studio; во-вторых, он генерирует меандр,
что позволило сэкономить на одной микросхемке.
Подбиваем хотелки и возможности
Я решил остановиться на AVR910, который реализован на ATMEGA8, с применением софтового USB. Самым заманчивым вариантом оказался
вариант предложенный Рыжковым Андреем aka PROTTOSS из Новокузнецка. Схему программатора и прошивку с драйверами можно
скачать по адресу http://prottoss.com. Поклонники USBAsp могут зашить
свой любимый программатор.
На плате программатора разведена ZIF-панелька с выводом всех лапок на штыри. Использовалась универсальная панелька
в которую входят узкие и широкие корпуса МК. на одну сторону выведена цанговая панелька для подключения кварцев разного номинала
со всем нужным обвязом. Так же на одну лапку выведен меандр от программатора и RC-цепь из конденсатора на 22pF с
резистором на 10 КОм. Плюс разведен классический разъем ISP и свой собственный штекер для быстрого подключения к штырям
расположенным по краям ZIF. Дополнительно выведено 4 штыря с питанием и 4 штыря с заземнем. Кстати, подключение кварца или
RC-цепи осуществляется обычными джамперами.
Результат
Частенько этот программатор используется для отладочных целей, например если надо отработать небольшой алгоритм, а для
отладки достаточно питания и пары светодиодов.
|
|
В просторы Океана,
В манящий синий плен
Влечет нас неустанно
Волшебный зов сирен.
Поль Вернейль «Одиссеи»
|
|
Сообщайте нам о новых сайтах и замеченных ошибках на:
web(собачко)orcinus.ru.
Все пожелания и советы будут учтены при дальнейшем проектировании сайта...
Если вам понравился этот проект, то поместите его в свои избранные ссылки.
Мы готовы сотрудничать
со всеми желающими. Мнение авторов может не совпадать
с точкой зрения редакции. В некоторых случаях, мнение автора
может не совпадать с мнением автора!
Phone: +7-902-924-70-49.
|