Простой программатор для программирования микроконтроллеров AVR через COM порт

Рейтинг пользователей: / 10
ХудшийЛучший 
Проекты - Электроника

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

Выбор мой пал на микросхему GD75232, часть элементов которой, при соответствующем включении я задействовал для данного программатора.Обязательно 10-я и 11 ножки микросхемы должны соединяться с землёй.(общим проводом)

Микросхема gd75232Эта микросхема стоит на материнских платах, её роль - как раз согласование сигналов внешних устройств с COM портом. На иллюстрации из даташита видно, какие элементы как подсоединены, (не стану расписывать, что как и зачем, об этом можно прочитать в описании микросхемы). Я её специально не покупал, а снял с "убитой" материнки.

Печатную плату не привожу, так как отрезал ножницами по металлу кусок платы вместе с микросхемой, в итоге размеры платы получились 20х30 мм, проводники припаял к 3-м разъёмам

1- питание +5в

2- разъём com порта

3- разъём ISP для программирования

Использовать программатор можно с известной программой Pony Prog, в установках выбрать интерфейс (Serial, COM1) для COM-порта и любой из 3-х видов интерфейсов , которые там перечисляются, без разницы, работает со всеми (JDM API, SI Prog I/0, Si Prog API), картинки это поясняют. Остальные установки в настройке порта остаются в программе по умолчанию.

Настройки PonyProgНастройки PonyProgНастройки PonyProgПрограмматор на столько прост, что не содержит ни резисторов ни конденсаторов, только одна единственная микросхема. Цепляете питание +5в, подключаете к панельке, в которую вставлен микроконтроллер AVR, приготовленный для программирования и программируете, как обычно в ISP режиме.

Схема проверена и испытана.

Буфферизация

Простые программаторы эффективны пока речь идёт о программировании микроконтроллеров либо в DIP корпусе (удобно, когда можно микросхему вынуть из панельки на рабочей плате и воткнуть в панельку на программаторе, а потом, запрограммировав, поставить на место), либо когда на рабочей плате выводы микроконтроллеров не сильно нагружены внешними элементами схемы.

Есть отработанные хорошие схемы простых программаторов с буфферизированными шинами типа STK200 / 300, собраные на микросхемах серии 244, 245, но они предназначены для подключения к LPT порту, который в последнее время уже редкость на современных материнских платах. Теперь чаще встречаются лишь USB и COM порты, а программаторы USB более сложны для начинающих радиолюбителей в повторении.

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

В последнее время всё чаще применяются SMD компоненты, и микроконтроллеры применяют уже в корпусах типа SOIC и впаивает непосредственно в плату, без панелек. В этом случае для повторного перепрограммирования надо уже либо программировать его прямо на плате, либо выпаивать чип, а в некоторых случаях приходится предварительно отключать нагрузку на его выводах в схеме, если получается, что внешние элементы «сажают» импульсы программатора, если только его шины не были буфферизированы (умощнены по току для работы с повышенной нагрузкой).

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

В данном случае я взял, что у меня было под руками - микросхему 561ПУ4 (или можно её западный аналог CD4050). В составе этой микросхемы содержится шесть буфферных неинвертирующих элемента, которые повторяют входной сигнал на выходе, не внося в него изменений. Каждый такой элемент обладает определённой нагрузочной способностью, из иллюстрации, взятой в даташите, видно структуру тех дискретных элементов, содержащихся внутри буффера.

Подсоединив к нашему программатору такое дополнение между выводами программатора и разъёмом для программирования, мы получим устройство с повышенной нагрузочной способностью. У нас три сигнала с СОМ порта работают на приём, и один сигнал (MISO) работает на передачу. Припаяв к уже имеющейся схеме посредством коротких проводков ещё одну микросхему буффера, я протестировал работу новой схемы и, сравнив с тем, что было прежде, убедился, что эффект есть. На тех платах, где я прежде сталкивался с подобной проблемой при программировании, мне приходилось отсоединять нагрузку на время программирования, а теперь с новой схемой этого делать уже не потребовалось.

Программатор с буфферизацией

Рекомендую всем обладателям простых программаторов доработать имеющуюся у вас схему таким же образом, если при программировании вы сталкивались с подобными проблемами, добавив микросхему буффера ,не обязательно эту, можно использовать и другие подобные по функциональным свойствам микросхемы типа 74HC125, 74HC126 на базе этих микросхем,можно переводить выходы программатора вообще в высокоимпедансное состояние,что позволит не отключать разъём ICSP от платы ,особенно это удобно при работе с макетной платой, вариаций применения моего программатора в качестве базового модуля очень много,это и программирование микросхем типа 24Схх 93Схх а так же для программирования PIC контроллеров, но эту тему я возможно разовью чуть позже в данной статье.

Z - состояние шин на выходе

Лучшее- враг хорошему (с).

Всё вроде работает,но стоит добавить в схему ,что либо ещё,как она из маленькой превращается в "монстра", а что делать? Иногда в процессе отладки приходится идти на это ради комфорта в работе , ведь порой по нескольку десятков раз надо втыкать разъём ICSP повторно перепрограммируя микроконтроллер, так это занятие надоедает порой, а если оставить программатор постоянно подключенным,к схеме ,то схема программатора будет влиять на работу устройства , но есть решение о котором я упоминал выше, это перевести состояние шин в высокоимпедансное - Z состояние , тогда схема программатора может быть подключена сколь угодно долго и не будет теперь шунтировать шины микроконтроллера ,ради такого случая нашёл эту микросхему и использовал её в качестве буффера .Осуществлять эту процедуру мы будем посредством кнопки S1 которая при замыкании будет переводить выходы программатора в рабочий режим, программирования подсоединяя его сигналы к схеме. На момент программирования, надо кнопку удерживать в нажатом состоянии,а после того, как процедура программирования пройдёт успешно ,отпустить.При разомкнутом состоянии кнопки выходы программатора переводятся в состояние Z

Из даташита 74HC125 ,по схеме и таблице истинности видно ,что если подать на выводы А "единицу" схема переводит выходы в высокоимпедансное состояние ( фактически вообще отключается от нагрузки) и вдобавок у этой микросхемы ещё большая нагрузочная способность ,чем у микросхемы,которую я выбрал в качестве буффера в предыдущей схеме..

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

Владимир Науменко

г. Калининград.

Файлы для загрузки:
ФайлОписаниеРазмер файла
Скачать файл (Программатор AVR.GIF)монтаж 29 Kb
Скачать файл (74HC125_TAB.jpg)Таблица истинности 74HC125 21 Kb
Скачать файл (74HC125.jpg)Buffer_74HC125 27 Kb
Скачать файл (Progr_buf_Z.GIF)Программатор с Z состоянием шин 106 Kb
Скачать файл (Панельки AVR.rar)панельки AVRпанельки AVR19 Kb
 Обсудить на форуме (13 комментариев).

Комментарии  

 
0 #7 x-man91111 02.02.2014 02:45
странно, промучился полдня, а щас скачал другую версию пони (свежее) и всё заработало :o
Цитировать
 
 
0 #6 x-man91111 02.02.2014 02:03
Собрал данную схемку, но понипрог в упор не видит МК((( уже всё перепроверил, но ничего не помогло. Я не силен в тонкостях com-порта, и МК первый раз решил таким способом запрограмить. Импульсы по выводам идут, и вроде даже МК отвечает, а вылазит ошибка (-24), и еще странно, что на reset тоже импульсы. С двумя МК такая фигня, помогите разобраться в чем может быть дело :sad:
Цитировать
 
 
0 #5 nikiev 11.12.2013 21:08
Цитирую ARV:
1. какое отношение ваша панелька имеет к данноу статье?
2. номиналы конденсаторов обычно от 15 до 22 пикофарад, если речь идет об AVR

Панелька не моя, а находится в этой статье, точнее в конце ее, после надписи-
Файлы для загрузки:
монтаж 29 Kb
Таблица истинности 74HC125 21 Kb
Buffer_74HC125 27 Kb
Программатор с Z состоянием шин 106 Kb
панельки AVR
Цитировать
 
 
0 #4 ARV 11.12.2013 18:39
Цитирую nikiev:
Подскажите новичку, на печатке панельки AVR есть место для кварца и 2 конденсатора, а какие номиналы? Если глупость спросил не пинайте...

1. какое отношение ваша панелька имеет к данноу статье?
2. номиналы конденсаторов обычно от 15 до 22 пикофарад, если речь идет об AVR
Цитировать
 
 
0 #3 nikiev 10.12.2013 23:52
Подскажите новичку, на печатке панельки AVR есть место для кварца и 2 конденсатора, а какие номиналы? Если глупость спросил не пинайте...
Цитировать
 
 
0 #2 Andr 28.08.2013 20:13
Огромное спасибо автору! Перерыл в нете кучу схем программаторов, но выбар упал на этот именно из-за буферизации выходного isp разъема. Почему-то мне это показалось более надежным решением, по сравнению с другими простыми схемами из сети.
Схемку спаял на своей плате, применив микросхемы GD75232 и 74F125, которые добыл из старой материнки. Автору респект! 8)
Цитировать
 
 
+2 #1 FDoich 21.08.2012 13:39
Молодца!
Цитировать
 

Добавить комментарий

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

Запрещается вводить оскорбительные тексты, использовать нецензурные выражения, публиковать экстремистские призывы, давать ссылки на сайты, не имеющие отношения к теме обсуждения. Все сообщения, нарушающие данные требования, будут удалены без уведомлений, а их авторы - заблокированы.
Незарегистрированные посетители не могут вводить ссылки, BB-коды и т.п., зарегистрированные - могут. Подробности о возможностях, доступных зарегистрированным посетителям, см. в разделе Помощь.


Защитный код
Обновить

Возможно, вас так же заинтересует:



Темы форума
Комментарии
Статистика
Просмотров:
mod_vvisit_counterСегодня8238
mod_vvisit_counterВчера3318
mod_vvisit_counterНа этой неделе46412
mod_vvisit_counterНа прошлой неделе40507
mod_vvisit_counterВ этом месяце175223
mod_vvisit_counterЗа все время11537444

Ваш IP: 54.224.4.231
 , 
27 Май. 2017