На данной странице представлена необходимая и достаточная информация для самостоятельной сборки внутрисхемного программатора микроконтроллеров Atmel AVR, предназначенного для работы из под среды программированияAlgorithm Builder. Программатор подключается к персональному компьютеру посредством интерфейса USB.
Algorithm Builder - среда разработки микропрограмм для микроконтроллеров корпорации Atmel семейства AVR. Среда является отечественным аналогом Ассемблера, позволяющим, однако, не "писать" программы, а "рисовать" их в очень удобной графической форме:
С некоторых пор эта среда стала полностью бесплатна для любых объемов программы! Скачать ее можно со страницы разработчика здесь. Создал и поддерживает эту программу русский умелец Геннадий Громов.
В файле справки для этой среды, открыть который можно выбрав соответствующий пункт меню...
...или просто нажав кнопку "F1" клавиатуры, ближе к концу представлена схема программатора на микроконтроллере, собрав которую можно программировать и даже отлаживать различные устройства прямо из самой среды Algorithm Builder:
Данная схема является лишь принципиальной и собрать по ней готовое устройство невозможно. Кроме того, схема имеет существенный недостаток - собранный по ней программатор способен работать только через COM-порт, который нынче стал редкостью.
Тем не менее, эта схема была взята за основу, дополнена необходимыми компонентами, а вместо "TTL to RS232" конвертора применена микросхема FT232RL, производимая корпорацией FTDI.
Микросхема FT232RL является конвертором интерфейса USB в интерфейс RS-232 (СОМ-порт), определяется в Windows-е как виртуальный COM-порт, и позволяет создавать устройства с физическим интерфейсом USB, несмотря на то, что изначально эти устройства были предназначены для работы лишь с СОМ-портом.
Кроме того, в схему добавлена гальваническая развязка цепей программирования от цепей интерфейса USB, с допустимым пиковым напряжением до 400В. Таким образом, программатором можно программировать устройства, находящиеся под фазным напряжением сети 220/380В не боясь повредить устройство или персональный компьютер.
Итак, чтобы внести окончательную ясность, перечислим достоинства и недостатки предлагаемого программатора.
Достоинства:
- Интерфейс USB - можно использовать как со стационарным настольным компьютером, так и с ноутбуком;
- Имеет гальваническую развязку цепей программирования от цепей интерфейса USB с допустимым пиковым напряжением до 400В;
- Питается через USB, поэтому не требует внешнего питания;
- Имеет достаточно сильноточные выходы цепей программирования, благодаря чему можно программировать даже микроконтроллеры, на цепях программирования которых находится достаточно большая нагрузка (например, светодиодный индикатор);
- Процесс программирования происходит достаточно быстро. Во много раз быстрее, чем, например, у программатора AVR910;
- После завершения процедуры программирования, цЕпи программатора переводятся в высокоимпедансное состояние и не влияют на работу программируемого устройства. Это особенно удобно во время отладки микропрограмм, т. к. становится не обязательным отключать программатор от налаживаемого устройства после завершения процедуры программирования;
- Имеет встроенную функцию отладки устройства с мониторингом состояния программируемого микроконтроллера (средствами среды программирования Algorithm Builder). Данная функция позволяет в реальном времени наблюдать состояние внутренних регистров микроконтроллера и изменять их значения (подробнее об этом в инструкции на Algorithm Builder).
Недостатки:
- Работает только со средой программирования Algorithm Builder;
- Содержит в своем составе микроконтроллер, который изначально будет необходимо чем-то запрограммировать (другим программатором).
Полная схема USB-программатора для Algorithm Builder с учетом описанных особенностей выглядит так:
AB_USB.SCH.rar (54.5кБ) - схема USB-программатора для Algorithm Builder в формате P-CAD 2006:
Конструктивно программатор представляет собой печатную плату. Плата двусторонняя, изготовлена по моим чертежам заводом Резонит:
АВ_USB.PCB.rar (61.1кБ) - файл трассировки печатной платы программатора в формате P-CAD 2006:
Исполнение программатора безкорпусное, а для защиты схемы от внешних воздействий, плата программатора с двух сторон была залита эпоксидным компаундом:
Для подключения кабеля программирования на программаторе предусмотрен разъем DRB9M:
Внимание! Это НЕ СОМ-порт, как может показаться с первого взгляда - этот разъем предназначен для подключения только кабеля программирования:
В своих разработках в качестве разъема для программирования микроконтроллеров я обычно применяю вот такой тип разъемов:
Поэтому кабель программирования заканчивается соответствующим "разъемом программирования":
Кабель программирования подключается к программируемому устройству и может оставаться подключенным на все время отладки программы - как мы помним, работе устройства после завершения процедуры программирования наш USB-программатор не мешает:
В серийных изделиях разъем программирования можно вообще не устанавливать, а вместо него делать лишь контактные площадки:
В этом случае программатор необходимо дополнить специальным переходником,
а процесс программирования можно производить просто прижимая эти "иголки" к контактным площадкам на плате:
Обратите внимание, что и на плате нашего USB-программатора для "прошивки" его собственного микроконтроллера предусмотрены такие же контактные площадки программирования:
Если необходимо воспользоваться функцией отладки микропрограммы с мониторингом состояния программируемого микроконтроллера (средствами среды программирования Algorithm Builder), необходимо будет обзавестись дополнительным кабелем, наподобие кабеля программирования, но содержащим не только цепи программирования, но и цепи отладки микропрограммы. Цепь отладки микропрограммы выведена на разъем DB9 программатора, но в описанном выше кабеле программирования не задействована.
Сам я функцией отладки микропрограмм с мониторингом состояния программируемого микроконтроллера ни разу не воспользовался, поэтому и кабеля для реализации этой функции никогда не делал.
После сборки программатора, при первом подключении его к персональному компьютеру, Windows запросит драйверы к вновь обнаруженному устройству (точнее к чипу FTDI, входящему в состав программатора). Последние версии драйверов к этой микросхеме можно всегда скачать с официального сайта FTDI, а можно взять и на данном сайте по ссылке ниже (возможно, они будут не самой последней версии, но зато опробованные мною лично):
Когда драйверы будут установлены, необходимо сконфигурировать чип FT232RL для правильной работы, с учетом особенностей схемы нашего USB-программатора.
Специальную утилиту для конфигурирования микросхемы FT232RL можно скачать с официального сайта FTDI, а можно взять и с данного сайта по ссылке ниже (возможно, она будет не самой последней версии, но зато опробована мною лично):
FTDI_MProg_3.5.rar (1.48МБ)
В данном архиве находится (в том числе) файл нужных настроек для чипа FTDI USB-программатора, путь к нему:
...\УТИЛИТА FTDI MProg 3.5\Templates\ПРОГРАММАТОР AB USB.ept
После запуска утилиты необходимо в ней открыть этот файл настроек. Вы должны увидеть следующее:
Убедившись что наш программатор все еще подключен к USB-порту компьютера, а также убедившись в том, что к компьютеру более не подключены какие-либо иные устройства с чипами FTDI, нажимаем кнопку с изображением "молнии", и через несколько мгновений утилита в нижнем окне должна сообщить что-то типа такого:
Programmed Serial Number : FTU3VXNP
Теперь, если отключить и подключить заново наш программатор к компьютеру, Windows найдет новое устройство с названием "ALGORITHM BUILDER PROGRAMMER", драйвера к нему теперь будут определены автоматически.
Настройка чипа FTDI FT232RL, входящего в состав USB-программатора для Алгоритм Билдер, на этом завершена.
Теперь нам необходимо запрограммировать микроконтроллер USB-программатора. Микропрограмма микроконтроллера для программатора разработана самим Геннадием Громовым - разработчиком Algorithm Builder-а, и после установки на компьютере среды Algorithm Builder находится по умолчанию по следующему пути:
C:\Program Files\Algorithm Builder\V543\COMM ADAPTER\ALG\CommAdapter.alp
Однако, моя схема программатора немного отличается от предложенной Геннадием Громовым в части подключения светодиода индикации обращения к программируемому микроконтроллеру, а также в части нескольких, ранее незадействованных ног микроконтроллера, теперь подключенных к общей цепи схемы программатора и используемых в микропрограмме как дополнительные выводы питания "GND". Скачать эту доработанную микропрограмму можно по ссылке ниже:
AB_USB.PROG.rar (19.3кБ)
Запрограммировать микроконтроллер нашего USB-программатора можно и нужно с помощью все той же среды программирования Algorithm Builder, однако потребуется сторонний программатор. В этом случае, можно собрать схему простого программатора, работающего через COM-порт. Эта схема также приведена в инструкции на Algorithm Builder. В применении к программированию микроконтроллера нашего USB-программатора она будет выглядеть так:
Данное устройство понадобится только один раз, чтобы запрограммировать микроконтроллер USB-программатора, затем оно станет не нужным, так что собрать его можно просто "на коленке" из подручных материалов в "одноразовом" исполнении.
Кроме того, для правильной работы микроконтроллера программатора необходимо запрограммировать его Fuse Bits в соответствие с рисунком ниже:
БУДЬТЕ ВНИМАТЕЛЬНЫ! Установка галок должна в точности соответствовать этому рисунку. Неверная установка Fuse Bits может привести к полной неработоспособности микроконтроллера программатора.
Начиная с этого момента, если все было сделано правильно и в соответствие с описанием выше, наш USB-программатор для Algorithm Builder начинает работать должным образом.
После проверки его полной работоспособности, плату программатора следует залить с обоих сторон эпоксидным компаундом для защиты от внешних воздействий.
Для удобства монтажа компонентов на печатную плату USB-программатора, предоставляю перечень компонентов с позиционными обозначениями (куда какой) (в формате Excel 2003):
АВ_USB.CK.rar (5.39кБ)
Для удобства закупки компонентов для сборки USB-программатора предоставляю перечень компонентов для заказа (чего и сколько) (в формате Excel 2003):
АВ_USB.ZK.rar (4.96кБ)
Напоминаю, что в соответствие с законодательством об авторском праве, материалы с этой страницы могут быть использованы лишь для частного использования. Для коммерческого применения этих материалов необходимо получить мое разрешение.
На данной странице представлена вся необходимая информация и проектная документация для самостоятельного повторения данной конструкции. Тем не менее, если Вы не желаете собирать USB-программатор для Алгоритм Билдер-а самостоятельно, но все же хотите его иметь, Вы можете обратиться ко мне и я с удовольствием соберу для Вас точно такой же.
Его цена составит 5 тыс. руб.
Комментариев нет:
Отправить комментарий
Создайте свой комментарий.