Прошивка микроконтроллеров AVR

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

Простой программатор AVR микроконтроллеров, схема

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

Простой программатор AVR микроконтроллеров ATmega8Простой программатор AVR микроконтроллеров ATtyni2313

Этим программатором можно прошить любой микроконтроллер семейства AVR, достаточно подключить выходы программатора к соответствующим ножкам микроконтроллера:

Подключение микроконтроллерров AVR к программатору

Для прошивки AVR микроконтроллеров я использую специализированную программу PonyProg.

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

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

выбираем последовательный порт, тип программатора - SI Prog API, выбираем COM порт, в который воткнули программатор, и жмём кнопку "Проверка", Если всё сделали правильно, появится соответствующее окошко. Если нет, ищите ошибки в монтаже.

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

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

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

Об окончании калибровке программа сообщит соответствующим появившемся окошком. Эта процедура проводиться только один раз, при первом подключении программатора к компьютеру, и в дальнейшем проводить не требуется. Что бы убедиться в работоспособности программатора на панели выбираем семейство "AVR micro", тип подключенного микроконтроллера, в моём случае ATmega8, и жмём кнопку "Читать содержимое устройства".

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

Начнётся процесс чтения, и по окончании программа выдасть код, содержащийся в памяти микроконтроллера. Если микроконтроллер новый, память будет забита единицами. В шеснадцатеричном коде - FF.

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

Для записи в микроконтроллер необходимого кода жмём на кнопку "Открыть содержимое устройства из файла", выбираем необходимый HEX файл и жмём открыть.

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

Программа отобразит открытый код. Далее жмём кнопку "Запись устройства".

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

В появившемся окне жмём ДА. Начнётся процесс записи.

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

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

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

Некоторые авторы выкладывают прошивку не целиком, а по отдельности. Отдельно область программ и отдельно область данных. То же самое, но для чтения и записи используются соседние кнопки с буквами P (программа) и D (данные). Файлы могут иметь расширение не HEX, а e2p.

Теперь настал самый ответственный момент, требующий особого внимания, это запись битов конфигурации (fuse bits). Для этого жмём кнопку с замком "Биты конфигурации и защиты". Откроется соответствующее окно, в котором необходимо расставить "птички" так, как рекомендует автор устройства, которое вы повторяете.

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

После чего жмём ОК, начнётся запись конфигурации.

Прошивка микроконтроллеров AVR, PonyProgПрошивка микроконтроллеров AVR, PonyProg

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

Прошивка микроконтроллеров AVR

Обратите внимание, биты конфигурации выставлены инверсно!

Что бы не возникало вопросов, как надо выставлять фьюзы, перед изменением битов жмём кнопку "Читать" и смотрим на бит SPIEN, по умолчанию он всегда включен. Этот бит разрешает последовательное программирование. В PonyProg он специально заблокирован, что бы его случайно не выключить. Сравнивая этот бит в статье автора и со своей программой делаем выводы, как надо ставить биты, инверсно или нет, так как у автора он тоже включен!

Существуют программаторы, подключаемые к USB разъёму компьютера, собрал и я себе такой

Прошивка микроконтроллеров AVRПрошивка микроконтроллеров AVR

Сразу же возникли проблемы с драйверами под windows7. Так же проблемы с софтом, так как не каждая программа умеет с ним работать. Пробовал разные версии прошивок программатора, различные варианты разных авторов, но всё таки отложил его в сторону.

Плата программатора для ATmega8 в формате lay тут

Расчет импульсного трансформатора
Наши приложения в

Подписаться на новости
Введите Ваш e-mail

Усилители мощности
Блоки питания
Arduino
Программаторы
Радиоконструкторы
Прочее...