Описание опубликовано в журнале «Радио» № 5 за 2006 г., стр.27...30. Два универсальных программатора.
Благодаря оптимальному соотношению цена/качество микроконтроллеры семейства AVR фирмы Atmel пользуются
заслуженной популярностью как среди радиолюбителей, так и профессионалов. Возможность их программирования
по последовательному интерфейсу SPI позволяет использовать для этих целей очень простые программаторы,
например PonyProg.
Но в последнее время энтузиасты – программисты share ware программаторов для
AVR просто не в силах своевременно вводить корпектную поддержку всех новых типов. Но даже те радиолюбители,
которых вполне устраивают старые типы контроллеров, могут оказаться в сложной ситуации. Например, класс
AT90S полностью снят с производства. На смену ему пришли ATtiny и ATmega, которые имеют несколько
иные алгоритмы программирования. В такой ситуации логично будет не изобретать велосипед,
а воспользоваться схемой программатора микроконтроллеров AVR, которую предлагает производитель AVR
- фирма Atmel.
При работе с простейшими программаторами типа PonyProg следует иметь ввиду, что такой программатор подключается
к COM, LPT порту компьютера и, по сути, содержит только буферные элементы для согласования уровней выводов
порта с контроллером. Все необходимые алгоритмы реализуются управляющей программой, запускаемой на компьютере.
Казалось бы, это самый простой и в то же время наилучший вариант. Зачем усложнять задачу? К сожалению, все не так просто.
Основное назначение LPT порта – это работа с принтером, а COM порта – обеспечение связи с внешними устройствами,
например модемом по интерфейсу RS-232. Программное управление уровнями на отдельных линиях этих портов хотя и возможно,
но это уже нестандартная задача, а значит никто не может гарантировать, что она будет выполняться корректно.
Да и не далек тот день, когда эти порты исчезнут из компьютера, а работать через конвертер
USB COM простейшие программаторы не могут.
Более того, стандартная аппаратно-программная конфигурация персонального компьютера даже при наличии
быстродействующих процессора и ОЗУ не позволяет точно сформировать интервалы времени, меньше нескольких сотен
миллисекунд. Для программирования же современных контроллеров необходимы импульсы длительностью порядка единиц
микросекунд и менее. Поэтому невозможно гарантировать корректную работу простых программаторов на всех без
исключения компьютерах.
Предлагаемый программатор – это упрощенный и модернизированный аналог выпускаемого и поддерживаемого
компанией Atmel внутрисхемного программатора AVRISP. Упрощение заключается в исключении из схемы
элементов защиты от статического электричества – в серьезных случаях они все равно не помогут –
и замене преобразователей уровня COM-TTL на дискретных элементах специализированной микросхемой MAX232.
В отличие от прототипа этот программатор микроконтроллеров AVR позволяет программировать их не только внутрисхемно,
но также и непосредственно в программаторе.
Схема программатора AVR показана на рисунке. Это универсальный программатор, он программирует
все микроконтроллеры AVR с интерфейсом SPI. Управление осуществляется через COM порт персонального
компьютера. Возможно подключение и через USB COM адаптер.
Управляющая программа является составной частью фирменной интегрированной отладочной среды разработки
AVR Studio от Atmel. Ее последняя версия всегда свободно доступна на http://www.atmel.com.
Дополнение 2018 г.
Прошло более 10 лет с момента разработки этого программатора. Я думал, что
он уже потерял свою актуальность. Сейчас для программирования, например,
Arduino или контроллеров STM32 никакой программатор вообще не нужен, т.к.
они имеют встроенный bootloader. Достаточно простого конвертера USB-COM.
Однако, оказалось, что программатор для AVR еще востребован. Подтверждение
тому - материалы, которые прислал мне один из его пользователей. Он разработал
новую плату для этого варианта AVRISP на которой смонтировал модуль USB-COM,
а также применил панельки с нулевым усилием для программируемых микросхем.
Тактовая частота на программируемый контроллер подается от отдельного
генератора.
Выкладываю схему, фотографии и чертежи плат в том виде, в каком я их получил.
Ссылка ниже.
© 2006-2018г.
|