Всем привет! Хочу рассказать о своем USB программаторе для микроконтроллеров AVR. Данная информация очень пригодится тем, кто только начинает осваивать микроконтроллеры. Когда я программировал свой первый контроллер для металлоискателя, то с большим трудом нашел нужную информацию, благодаря форуму. Теперь написал эту статью, чтобы упростить путь осваивания микроконтроллеров для других людей. Собрать его сможет любой желающий, у которого есть опыт паяния smd элементов. Программатор имеет достаточно небольшие размеры - как обычная флешка.

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

Когда вы собрали плату данного устройства, не обходимо скачать программу FLIP. Далее проводим следующие действия:
- выбираем AT90USB162 (Device->Select);
- открываем usb порт (Settings->Communication->USB);
- открываем прошивку (File->Load HEX File...);
- нажимаем Run (отмечены Erase, Program, Verify).
И наш программатор готов к использованию. Но без установки драйверов, программатор работать не будет. Драйвера подойдут, только те, которые идут вместе с программой AVR Studio. Я использую четвертую версию данной программы, так как её интерфейс наиболее удобен и прост для пользователя. Первым делом скачиваем и устанавливаем AVR Studio 4 с официального сайта Atmel.

Установка очень проста: соглашаемся с правилами пользования и дальше нажимаем кнопку next. После установки самой программы, на ваш компьютер будет предложено установить драйвера для программаторов, с этим ОБЯЗАТЕЛЬНО нужно согласиться, иначе программаторы не будут работать.

Далее нужно вставить программатор в компьютер и проверить правильно ли установились драйвера. Для этого заходим в диспетчер устройств(Мой компьютер – Свойства – Диспетчер устройств).

Как видим, компьютер не распознает наш программатор. Чтобы он определял устройство, как программатор, нужно указать путь к драйверам. Для этого нажимаем правой клавишей мыши по нашему устройству и выбираем пункт – Обновить драйверы.
Затем выбираем пункт – поиск драйверов на компьютере – Выбор из установленных.
В появившемся окне выбираем наш драйвер, который установился с AVR studio.

Далее нужно выбрать модель программатора и нажать кнопку «Далее»:

На этом этапе, если у вас включена функция проверки драйверов, может появиться вот такое окно:

(Выбираем второй пункт)
Если вы сделали всё так, как написано, то у вас появиться следующее:

И программатор будет правильно определяться:

На этом этап установки программного обеспечения закончен, можно переходить к практике.
Подключение контроллера AVR к ПК
Подключаем к нашему программатору микроконтроллер. Я это сделал с помощью проводов:


Также не забываем присоединить кварцевый резонатор с двумя керамическими конденсаторами на 22 пФ, если это нужно. (В большинстве случаев это необходимо).


Работа с программой AVR Studio
Когда аппаратная часть готова, переходим к программной. Открываем программу AVR Studio. Сначала нужно выбрать программатор. Для этого нажимаем на кнопку:

Выбираем порт и программатор и нажимаем Connect.

Появиться следующее окно:

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

Фьюз биты устанавливаются на вкладке Fuses, на вкладке Program вы загружаете файлы прошивки:

Как вы могли догадаться, кнопка Erase Device – предназначена для очистки памяти контроллера.
Интерфейс достаточно прост и в нем разберется любой человек, который хотя бы немного знает английский язык или умеет пользоваться переводчиком.
Как вы можете заметить на моем скриншоте, поля для выбора прошивки не активны, это связано с тем, что я не подключил микроконтроллер. При установке фьюз-битов, не убирайте галочку возле SPIEN, это очень ВАЖНО! При программировании проверьте, подключен ли кварцевый резонатор, это также очень важно, иначе ваш контроллер будет не пригоден для дальнейшего программирования. На этом всё. С вами был Кирилл.
Форум по МК