Программатор Extra-PIC+

49407 3
Rev 2.0

(Авторский вариант)

Программатор Extra-PIC+


Один из главных вопросов, встающих перед радиолюбителем, начинающим осваивать микроконтроллеры, это – выбор программатора. Когда автор занялся освоением микроконтроллеров PICmicro фирмы "Microchip Technology Incorporated", и у него возникла данная проблема, были рассмотрены несколько вариантов. Хотелось найти оптимальный, по показателю универсальность - простота схемы - надёжность. "Фирменные" программаторы и их аналоги были "вычеркнуты" в связи с довольно сложной схемой, включающей в себя те же микроконтроллеры, которые необходимо программировать. То есть получается "замкнутый круг": что бы изготовить программатор, необходим программатор. К тому же, "прошивки" к таким устройствам, как правило, не лежат в открытом доступе. Получивший широкое распространение программатор "Pony-prog", представляет очень простую схему, с питанием от ком-порта компьютера, в связи с чем, на форумах, в Интернете, очень часто появляются вопросы по сбоям при программировании того, или иного микроконтроллера. От так называемых "параллельных" программаторов было решено отказаться в связи с недостатком информации. В результате, выбор был остановлен на модели "Extra-PIC", распространяемой сайтом "5 Вольт".

Напомню, что данный программатор питается от внешнего источника, содержит буферный узел для согласования с ком-портом на микросхеме MAX232, и предназначен, не только для программирования микроконтроллеров PICmicro, но и некоторых микросхем "последовательной памяти". Работает он под управлением программы "IC-Prog" (а также "PonyProg" и "WinPic800"), которая распространяется совершенно бесплатно, что имело немаловажное значение, при выборе модели программатора (о настройке программы рассказано на том же "5 Вольт").

Однако, при более детальном изучении схемы, был выявлен и недостаток. Хочу привести цитату из статьи Н. Хлюпина "Два универсальных программатора", опубликованную в журнале "Радио" 2006-6-28:
"… известны два способа перевода микроконтроллеров PICmicro в режим программирования:
- при включённом напряжении питания Vcc поднять напряжение Vpp (на выводе -MCLR) от нуля до 12В
- при выключенном напряжении Vcc поднять напряжение Vpp от нуля до 12В, затем включить напряжение Vcc…
… Первый - в основном для приборов ранних разработок…
… во-вторых, он накладывает ограничения на конфигурацию вывода -MCLR, который в этом случае может служить только входом сигнала начальной установки…
… так как во многих микроконтроллерах предусмотрена возможность превратить этот вывод в обычную линию одного из портов…"


Оригинал в/у программатора работает только в первом режиме. Что бы иметь возможность работы во втором режиме, в устройство добавлен узел на транзисторах Q3, Q4 (нумерация элементов продолжает нумерацию оригинала).

Программатор Extra-PIC+


Он аналогичен узлу на транзисторах Q1, Q2, и включается в разрыв линии связи вывода IN стабилизатора U2 и источника питания (вывод "+" C1, вход IN стабилизатора U1, эмиттер Q1, резистор R2). Благодаря наличию конденсатора C10, открытие транзистора Q3, а, следовательно, и Q4 происходит с задержкой, относительно Q1-Q2. Соответственно и напряжение Vcc будет подано позже Vpp. Диод D6 служит для быстрой разрядки конденсатора C10, при низком уровне сигнала на 3-м контакте разъёма X1. Номинал C9 уменьшен до 47 пФ, для уменьшения влияния на процесс включения-выключения Vcc. Светодиод D7 индицирует подачу напряжения Vcc.
Кроме того, в доработанный вариант программатора добавлен блок питания, включающий в себя: трансформатор T1 (ТПГ-2, с напряжением вторичной обмотки 15 вольт), предохранитель FU1, четыре диода выпрямительного моста D8-D11 (типа КД241) и выключатель SA1, во вторичной цепи трансформатора. В связи с чем, за ненадобностью, из схемы удалены элементы: X2, J1, D1, C7, C8, J2 (постоянно в положении 2-3). Номинал C1 увеличен до 470 мкФ, так как он теперь является сглаживающим фильтром блока питания.

Программатор Extra-PIC+


Печатная плата разработана, для бескорпусного исполнения программатора, и предназначена для крепления на жёсткой подставке-основании (в авторском варианте – фанера толщиной 4 мм).
ВНИМАНИЕ! Если не планируется изготавливать какой-то защитный корпус, то, при сборке деталей блока питания, следует уделить особое внимание требованиям электробезопасности, что бы максимально исключить случайное прикосновение, в процессе эксплуатации, к высоковольтным цепям.
Удалён разъём D-SUB, для связи с ком-портом компьютера. Кабель припаивается непосредственно на плату программатора. Диоды 1N4148 заменены на КД522.

Программатор Extra-PIC+


Версия для печати:
Программатор Extra-PIC+


Скачать Оригинал (в формате Abacom, Sprint-LayOut 4.0) - extrapic1.lay [522,78 Kb] (cкачиваний: 2519)

Программатор Extra-PIC+


Программатор Extra-PIC+


Разъём ICSP (X3) – IDC-10M, аналогичный применяемым на компьютерных "материнских" платах. Назначение выводов:

Программатор Extra-PIC+


На основании обобщённых данных, было сделано несколько вариантов подключения программируемых микросхем, в зависимости от исполнения корпуса (адрес для микросхем EEPROM – 0). Однако не исключены и другие варианты "распиновок", для данных корпусов. Поэтому, перед программированием обязательно уточните назначение выводов конкретно используемой микросхемы!

Программатор Extra-PIC+


Для экономии места, панельки, под программируемые микросхемы, скомбинированы.

Программатор Extra-PIC+


Переключение режимов программирования производится джампером J3.

Программатор Extra-PIC+



Rev 3.1

(Авторский вариант)


Дальнейшая доработка позволила помимо МК PIC-micro, программировать и МК фирмы "Atmel", использующие интерфейс ISP.

Программатор Extra-PIC+


Для этого, в программатор добавлен узел на транзисторе Q5, формирующий сигнал RESET, переводящий МК в режим программирования. Обмен данными с программатором, в МК "Atmel", в режиме программирования, в отличие от PIC’ов осуществляется по двум различным линиям. MOSI – от программатора к МК, и MISO – от МК к программатору. Для формирования первого использован ранее не задействованный элемент U5.3 микросхемы кр1533ЛА3, а второй формируется идентично сигналу DATA, для PIC-micro. Все сигналы заведены на разъём X3, в связи с чем, назначение некоторых выводов не совпадает с предыдущей версией.

Программатор Extra-PIC+


МК можно программировать прямо в схеме (если она это позволяет), или изготовить специальный адаптер с установочными панельками.
Программирование МК "Atmel" осуществляется под управлением распространённой программы "PonyProg" (а также "WinPic800"). В настройках надо выбрать программатор "SI Prog I/O", а все "галочки" инверсий сигналов должны быть сняты. Перемычка J3 программатора должна находиться в положении 1-2.

Данная доработка позволяет также программировать микросхемы последовательной памяти серии 93xx, использующие интерфейс 3-wire. Соответствие сигналов следующее:

Программатор Extra-PIC+


Сигнал CS должен быть проинвертирован. Это достигается либо программно, установкой соответствующих чекбоксов ("Invert MCLR" в "IC-Prog’е", или "Invert Reset" в "PonyProg’е"), либо простейшим дополнительным инверсным каскадом на транзисторе КТ3102, с нагрузочным резистором 10кОм в коллекторной цепи. Второй вариант имеет смысл выбирать, при изготовлении специального адаптера под данные микросхемы. Тогда это позволит исключить необходимость смены настроек, при переходе с программирования одного типа микросхем, к примеру, PIC’ов, на 93xx серию, и обратно. При внутрисхемном программировании, целесообразно использовать первый вариант совместно с кабелем для внутрисхемного программирования микроконтроллеров фирмы "Atmel".
Программирование может осуществляться, как под управлением "IC-Prog", так и "PonyProg" (а также "WinPic800").
Разница между ними в следующем:
"PonyProg" умеет программировать данные микросхемы в 8-ми битном режиме (если чип поддерживает такой режим, и если это вообще кому-то надо), а также производить "очистку" посредством стирания.
"IC-Prog" работает только в 16-ти битном режиме. Зато имеет пять независимых буферов загрузки дампов, с возможностью сравнения содержимого, а также режим непосредственной верификации содержимого чипа с буфером. Кроме того, правильно отображает адреса ячеек.

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

Программатор Extra-PIC+


Версия для печати:
Программатор Extra-PIC+


Скачать оригинал (в формате Abacom, Sprint-LayOut 4.0) - extrapic1.lay [522,78 Kb] (cкачиваний: 2519)


Дополнения


Прислал Александр Любаев:

"Печатная плата вычерчена в программе Splan 4.0.
Большинство пассивных элементов монтажа выполнено по SMD исполнении, что позволило уменьшить габариты платы. Был выбран односторонний печатный монтаж (на момент изготовления был односторонний стеклотекстолит и проще изготавливать).
Ключи питания выполнены на транзисторах 2SC945P И 2SA1270Y. 2SC945P выбран по причине широкой доступности (имеется практически в любом блоке ATX), 2SA1270Y выбран из-за очень малого напряжения насыщения КЭ. Каскад сигнала сброса для ATMEL AVR также выполнен на 2SC945P."

Программатор Extra-PIC+


Программатор Extra-PIC+


Печатная плата (в формате Abacom, Sprint-LayOut 4.0) - extrapic_alub.lay [131,71 Kb] (cкачиваний: 628)


Rev 3.2


Отличается от Rev 3.1 только наличием дополнительного джампера J4, позволяющего полностью "развязать" линии MISO и MOSI.

Программатор Extra-PIC+


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

Программатор Extra-PIC+


Версия для печати:
Программатор Extra-PIC+


Скачать оригинал (в формате Abacom, Sprint-LayOut 4.0) - extrapic1.lay [522,78 Kb] (cкачиваний: 2519)

Замечания.
На элементах U1, U2, R3, R5, R10 выделяется значительная мощность, в связи с чем, они довольно сильно нагреваются. Хотя данный нагрев не выходит за рамки допустимого, всё же, при очень длительном непрерывном использовании программатора, рекомендуется ватность резисторов увеличить, а стабилизаторы 78L05 заменить на 7805, в корпусе TO-220.




Адаптеры

(Все адаптеры и кабели выполнены под Rev 3.1, и выше)


Адаптер "PIC-SOIC"


Программатор Extra-PIC+


Данный адаптер предназначен для программирования МК PIC-micro и последовательной памяти в корпусах SOIC.
Применены две ZIF-панельки, под разную ширину корпусов.
Выбор необходимой коммутации сигналов осуществляется DIP-переключателями:

Программатор Extra-PIC+


Как видите, некоторые затруднения может вызвать только последовательная память.

Программатор Extra-PIC+


Версия для печати:
Программатор Extra-PIC+


Скачать оригинал (в формате Abacom, Sprint-LayOut 4.0) - extrapic1.lay [522,78 Kb] (cкачиваний: 2519)


Адаптер "Atmel-DIP"


Программатор Extra-PIC+


Данный адаптер предназначен для программирования МК Atmel в корпусах DIP, с использованием одной ZIF-панельки. Применён кварцевый резонатор на 4MHz и два конденсатора по 30pF.
Первый вывод МК должен всегда соответствовать первому контакту панельки.
Выбор необходимой коммутации сигналов осуществляется DIP-переключателями:

Программатор Extra-PIC+


Программатор Extra-PIC+


Программатор Extra-PIC+


Программатор Extra-PIC+


Программатор Extra-PIC+


Версия для печати:
Программатор Extra-PIC+


Скачать оригинал (в формате Abacom, Sprint-LayOut 4.0) - extrapic1.lay [522,78 Kb] (cкачиваний: 2519)


Адаптер "93Cxx"


Программатор Extra-PIC+


Данный адаптер предназначен для программирования чипов с интерфейсом 3-Wire в корпусах DIP и SOIC. Применён транзистор кт315д, и резисторы 2,4k и 10k. Переключение режимов работы 8/16 bit, если чип их поддерживает, осуществляется джампером. Также разрабатывались, но не были изготовлены отдельные платы для корпусов DIP, и для корпусов SOIC. Для программирования на плате SOIC, необходимо положить чип на плату, аккуратно совместив выводы с контактными площадками, и прижать небольшим грузиком (например, канцелярской стирательной резинкой). Контакты должны быть одинаково ровными и хорошо зачищенными. Такой способ требует внимательности и аккуратности, но зато позволяет обойтись без ZIF-панельки (чертежи плат в общем файле).

Программатор Extra-PIC+


Версия для печати:
Программатор Extra-PIC+


Скачать оригинал (в формате Abacom, Sprint-LayOut 4.0) - extrapic1.lay [522,78 Kb] (cкачиваний: 2519)


Кабели для внутрисхемного программирования


Программатор Extra-PIC+


Программатор Extra-PIC+


Разъём кабеля для PIC-micro:
Программатор Extra-PIC+


Программатор Extra-PIC+



Реально опробованные микросхемы:

Программатор Extra-PIC+




Вариант реализации режима 2 прислал Юрий Сиривля:


Программатор Extra-PIC+


"Теперь собственно по самому программатору, в его конструкции применена панель с нулевым усилием на 20 контактов для корпусов МК с 8, 14 и 18 выводами. При чём МК с 8 и 14 выводами имеют одинаково конструктивно расположенные выводы для программирования, коммутация контактов панельки для 8,14 выводных и для 18 выводных корпусов осуществляется 8 секционным переключателем SA3, на фото переключатель находится в положении программирования 8 и 14 выводных корпусов. Что касается переключения режимов программирования, то переключение осуществляется подобным переключателем только на 4 секции. В положении переключателя показанном на фото программирование осуществляется в основном режиме: Vpp после Vcc, для перехода в режим Vcc после Vpp нужно соответственно поменять местами два левых и два правых переключателя.
Ниже (на фото) имеется разъём ICSP, переходник для корпусов с 28 и 40 выводами находится на стадии разработки, основой переходника будет подобная панель, но на 40 выводов и подобного переключателя на 3 секции.
Печатная плата для переходника уже разработана в лайауте.
Вот пожалуй и все особенности моего варианта программатора Extra Pic."

Программатор Extra-PIC+


Программатор Extra-PIC+


Печатная плата (в формате Abacom, Sprint-LayOut 5) - extrapic_ysirivlya.lay [84,68 Kb] (cкачиваний: 458)

Источник: www.pirpk.narod.ru

Комментарии пользователей (3)

Фото юзера бум
бум 06.03.2011
паяю, думаю сгодится.

_ _ _ _ _09.03.2011_ _ _ _ _ _
спаял, прелестно.
Фото юзера вова
вова 13.03.2011
и что ....., работает всё? winked
Фото юзера бум
бум 13.03.2011
да Вова, прошил PIC16F628A. если делать из нормальных деталей с тщательной проверкой их, то все работает с первого запуска. как говориться из говна конфетку не трудно слепить но она потом чего-то не съедобная окажется. транзисторы 345Б заменил кт502, а кт3102 заменил на кт503