Миниатюрный Usb-Программатор Для Микроконтроллеров Avr.

Как театр начинается с вешалки, так и программирование микроконтроллеров начинается с выбора хорошего программатора.

Поскольку я начинаю осваивать микроконтроллеры от ATMEL, мне пришлось досконально ознакомиться с тем, что предлагают производители.

Предлагают много всего интересного и вкусного, только по заоблачным ценам.

Например, платка с одним двадцатиногим микроконтроллером с парой резисторов и диодами в обвязке стоит как «самолет».

Поэтому встал вопрос о самостоятельной сборке программатора.

После длительного изучения разработок опытных радиолюбителей было решено собрать хорошо зарекомендовавший себя программатор USBASP, мозгом которого является микроконтроллер Atmega8 (есть также варианты прошивки для atmega88 и atmega48).

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

Автором этого программатора является немец Томас Фихл, страница его разработка со схемами, файлами печатных плат и драйверами.

Раз уж было решено собрать миниатюрный программатор, я перерисовал схему для микроконтроллера Atmega8 в корпусе TQFP32 (распиновка микроконтроллера отличается от распиновки в DIP корпусе):

Миниатюрный USB-программатор для микроконтроллеров AVR.

Перемычка J1 используется, если необходимо прошить микроконтроллер с тактовой частотой ниже 1,5 МГц.

Кстати, эту перемычку можно вообще исключить, поставив на землю 25-ю ногу МК.

Тогда программатор всегда будет работать на пониженной частоте.

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

Стабилитроны D1 и D2 используются для согласования уровней между программатором и шиной USB; без них будет работать, но не на всех компьютерах.

Синий светодиод указывает, что схема готова к программированию; Во время программирования загорается красный светодиод. Контакты программирования расположены на разъеме IDC-06, распиновка соответствует стандарту ATMEL для 6-контактного разъема ISP:

Миниатюрный USB-программатор для микроконтроллеров AVR.

Этот разъем содержит контакты для питания программируемых устройств; здесь он берется напрямую из USB-порта компьютера, поэтому нужно быть внимательным и избегать коротких замыканий.

Этот же разъем используется и для программирования управляющего микроконтроллера; для этого достаточно соединить контакты Reset на разъеме и на микроконтроллере (см.

красный пунктир на схеме).

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

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

Плата оказалась двусторонней, размером 45х18 мм.



Миниатюрный USB-программатор для микроконтроллеров AVR.

Разъем для программирования и перемычка для снижения скорости работы программатора расположены на торце устройства, это очень удобно.



Миниатюрный USB-программатор для микроконтроллеров AVR.



Прошивка управляющего микроконтроллера
Итак, после сборки устройства осталось самое главное – прошить управляющий микроконтроллер.

Друзья, у кого еще есть компьютеры с LPT-портом, для этих целей вполне подходят :) Самый простой пятипроводной программатор для AVR Микроконтроллер можно прошить из разъема для программирования, соединив контакты Reset микроконтроллера (29 ножка) и разъема.

Прошивка существует для моделей Atmega48, Atmega8 и Atmega88. Желательно использовать один из двух последних камней, так как поддержка версии Atmega48 прекращена и последняя версия прошивки датируется 2009 годом.

А версии для 8-го и 88-го камней постоянно обновляются, и автор вроде планирует добавить к функционалу внутрисхемный отладчик.

Прошивку берем с немецкой страницы.

Для загрузки управляющей программы в микроконтроллер я использовал программу PonyProg. При программировании необходимо настроить работу кристалла от внешнего источника тактовой частоты на частоте 12 МГц.

Скриншот программы с настройками перемычек предохранителей в PonyProg:

Миниатюрный USB-программатор для микроконтроллеров AVR.

После прошивки должен загореться светодиод, подключенный к 23 ножке микроконтроллера.

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



Установка драйвера
Установка проводилась на машину с Windows 7 и никаких проблем не возникло.

При первом подключении к компьютеру появится сообщение о том, что обнаружено новое устройство, с предложением установить драйвер.

Выберите установку из указанного места:

Миниатюрный USB-программатор для микроконтроллеров AVR.

Выбираем папку, где лежат дрова и нажимаем Далее

Миниатюрный USB-программатор для микроконтроллеров AVR.

Сразу появится окно с предупреждением о том, что устанавливаемый драйвер не имеет цифровой подписи для небольших софтовых:

Миниатюрный USB-программатор для микроконтроллеров AVR.

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

Миниатюрный USB-программатор для микроконтроллеров AVR.

Все, программатор теперь готов к использованию.



Хазама AVR-программист
Для работы с программатором я выбрал прошивальщик Хазама AVR-программист .

Замечательная программа с минималистичным интерфейсом.



Миниатюрный USB-программатор для микроконтроллеров AVR.

Он работает со всеми популярными микроконтроллерами AVR, позволяет прошивать flash и eeprom, просматривать содержимое памяти, стирать чип, а также изменять конфигурацию фьюз-битов.

В общем, вполне стандартный набор.

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

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



Миниатюрный USB-программатор для микроконтроллеров AVR.

Запись предохранителей в память МК, как нетрудно догадаться, осуществляется нажатием кнопки Write All. Кнопка «Сохранить» сохраняет текущую конфигурацию, а кнопка «Загрузить» возвращает сохраненную.

Правда, практического применения этим кнопкам я так и не придумал.

Кнопка Default предназначена для записи стандартной конфигурации предохранителя, той, с которой микроконтроллеры идут с завода (обычно 1 МГц от внутреннего RC).

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

Все работало без проблем как на старом настольном ПК, так и на новом ноутбуке.

Вы можете загрузить файл платы в SprintLayout, используя этот связь

Миниатюрный USB-программатор для микроконтроллеров AVR.

Ну вот и все, если будут вопросы, постараюсь ответить.

Теги: #электроника #avr микроконтроллеры #usb программатор #usbasp #программирование микроконтроллеров

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.