- Вход / Регистрация
EXTRA-PIC+ v.3.2 | Универсальные Программаторы |
Недавно мне понадобилось запрограммировать PIC и EEPROM. Походил по просторам Интернет, почитав статьи, решил, что делать нужно программатор, и не простой, а универсальный программатор (зачем под каждую серию делать отдельный?). Различия между несложными моделями универсальных программаторов для меня были порты (COM-port или LPT), через которые они работаю. Так как у меня LPT занят ЧПУ (CNC) станком, мне нужно было отталкиваться от схемы универсального программатора с COM-port`ом.
Для меня оптимальным выбором универсального программатора стал EXTRA-PIC (EXTRA-PIC+) v.3.2. Его схема (вариации схем) распространяется свободно в Интернете. Также можно скачать варианты печатных плат под него, достаточно просто правильно отправить запрос в поисковик «универсальный программатор EXTRA-PIC».

Просмотрев все варианты универсального программатора EXTRA-PIC, решил остановиться на версии EXTRA-PIC+ v.3.2. внеся, конечно же, свои коррективы. Печатная плата тоже потерпела изменений. Предоставляю ее Вам.
Скачать бесплатно схему печатной платы универсального программатора EXTRA-PIC+ v.3.2 в формате *.lay.
https://best-chart.ru/download/Joliat_best-chart.ru.lay
Меня очень порадовало, что этот универсальный программатор универсален не только количеством и разновидностью программируемых микросхем, но и универсален в качестве используемых деталей для изготовления его, т.к. не все комплектующие из «стандартного» набора мне удалось найти на радио рынке.
Итак, для начала расскажу перечень деталей, которые можно использовать для изготовления универсального программатора EXTRA-PIC+ v.3.2:
1) Текстолит;
2) DRB9F, разъём COM-порта ("мама");
3) Контактные штырьки (X3), джамперы;
4) Панельки DIP40, DIP20, DIP16, DIP14, DIP8;
5) Стабилизаторы 78L05, 78L12;
6) MAX232 или аналоги ST232/ADM232/SP232;
7) 74xx00 или аналоги КР1533ЛА3/КР15xxЛА3;
8) Диоды 1N4007, 1N4148 или аналог КД522/КД258Д;
9) P-n-p транзисторы КТ345б или аналоги КТ3107/ КТ502/ 2N3906/ 2N3249/ 2N3702/ 2N5447/ 2SA781K. При выборе аналога нужно обращать внимание на Ik.max.;
10) N-p-n транзисторы КТ3102 или аналоги BC547C/ КТ315;
11) Светодиоды (желательно разного цвета);
12) Конденсаторы 470μF на 25v, 10μF на 16v электролитические, 100nF и 47pF;
13) Резисторы на 1кОм и 4.7кОм;
14) Разъем питания.

Теперь расскажу о преимуществе данного универсального программатора EXTRA-PIC+ v.3.2. С помощью EXTRA-PIC+ v.3.2 можно программировать чипы:
10F серии: PIC10F206 PIC10F204 PIC10F202 PIC10F200
12F серии: PIC12F683 PIC12F675 PIC12F635 PIC12F635 PIC12F629 PIC12F510 PIC12F509 PIC12F508
16F/С серии: PIC16F627 PIC16F627A PIC16F628 PIC16F628A PIC16F630 PIC16F636 PIC16F639 PIC16F648A PIC16F676 PIC16F684 PIC16F685 PIC16F687 PIC16F688 PIC16F689 PIC16F690 PIC16F73 PIC16F74 PIC16F76 PIC16F77 PIC16F716 PIC16F737 PIC16F747 PIC16F767 PIC16F777 PIC16F83 PIC16F84 PIC16F84A PIC16F87 PIC16F88 PIC16F818 PIC16F819 PIC16F870 PIC16F871 PIC16F872 PIC16F873 PIC16F873A PIC16F874 PIC16F874A PIC16F876 PIC16F876A PIC16F877 PIC16F877A PIC16C61 PIC16C62 PIC16C62A/B PIC16C63 PIC16C63A PIC16C64 PIC16C64A PIC16C65 PIC16C65A/B PIC16C66 PIC16C67 PIC16C620/A PIC16C621/A PIC16C622/A PIC16CE623 PIC16CE624 PIC16CE625 PIC16C71 PIC16C72 PIC16C72A PIC16C73 PIC16C73A/B PIC16C74 PIC16C74A/B PIC16C76 PIC16C77 PIC16C710 PIC16C711 PIC16C712 PIC16C716 PIC16C745 PIC16C765 PIC16C773 PIC16C774 PIC16C923 PIC16C924 PIC16C925 PIC16C926
18F серии: PIC18F1220 PIC18F2220 PIC18F2320 PIC18F2331 PIC18F2410 PIC18F242-2439 PIC18F2420 PIC18F2431 PIC18F2455 PIC18F248 PIC18F2480 PIC18F2510 PIC18F2515 PIC18F252-2539 PIC18F2520 PIC18F2525 PIC18F2550 PIC18F258 PIC18F2580 PIC18F2585 PIC18F2610 PIC18F2620 PIC18F2680 PIC18F4220 PIC18F4320 PIC18F4331 PIC18F4410 PIC18F442-4439 PIC18F4420 PIC18F4431 PIC18F4455 PIC18F448 PIC18F4480 PIC18F4510 PIC18F4515 PIC18F452-4539 PIC18F4520 PIC18F4525 PIC18F4550 PIC18F458 PIC18F4580 PIC18F4585 PIC18F4610 PIC18F4620 PIC18F4680
EEPROM 24C серии: 24C512 24C256 24C128 24C64 24C32 24C16 24C08 24C04 24C02 24C01
EEPROM 93хх серии

Данный перечень программируемых микросхем постоянно расширяется, их можно без труда программировать, только перед программированием, обязательно найдите datasheet на чип и проверьте расположение выводов.
Теперь немного о значении джамперов и выключателя. Выключатель, как это и должно быть по логике, управляет питанием. Контактные штырьки J3 отвечают за возможность повторного программирования некоторых микроконтроллеров (т.к. после подачи напряжения на запрограммированный чип, он сразу же начинает выполнять свою программу, и из-за чего не поддается перепрограммированию). J3 – положение: 1-2 – режим первого программирования, 2-3 –режим повторного программирования (если первый выдает ошибки). Контактные штырьки J4 переключение между MISO и MOSI. Десятипиновый разъем предназначен для подключения адаптеров.
Кстати, чуть не забыл. Для пользованием универсального программатора EXTRA-PIC+ v.3.2 нужен софт. Можно использовать: IC-PROG, WinPic800 и PonyProg.
Вот фотография моего EXTRA-PIC+ v.3.2 программатора, пусть не так красиво, зато работает!

Вот и все. Удачных изготовлений универсального программатора EXTRA-PIC+ v.3.2.
Для того, чтобы уменьшить скачки напряжения при включении программатора.
Уважаемый admin. Меня тоже интересует третий вывод кнопки , посаженный на минус через резистор.Если можно поподробнее.
Maxim72, читайте сообщение над Вашим.
Спасибо за подсказку.Я его читал. Я в электронике новичек и мне не понятно откуда здесь может взяться скачек напряжения , да потом при замыкании такого типа кнопок замыкаются только два контакта и контакт с резистором на минус остается не задействованным т.е. бесполезным. Это мои рассуждения. Могу ошибаться, поэтому и попросил Вашего более подробного объяснения.
Как я понял, это то, что когда подтыкаешь кабель от блока питания к разъёму питания схемы, то этим резистором нагружается блок питания через нормально сомкнутые контакты кнопки. И когда происходит включение нажатием кнопки, то нет того сАмого скачка напряжения, при резкой подачи нагрузки. Если не прав, поправьте.
Доборый день. Заканчиваю сборку программатора. Меня волнует один вопрос. Процесс прошивки состоит из следующих этапов: включение компа, запуск программы, подключение программатора, к компу, включение программатора, установка контроллера в панельку, прошивка, затем выключение программатора, программы, и компа, извлечение микрухи из панельки, может что то пропустил. Так вот, в какой последовательности все это следует выполнять, чтобы не сжечь программатор,COMпорт и микроконтроллер.
Я делаю так:
1) Включаю ноут, запускаю программу;
2) Вставляю МК в программатор;
3) Подключаю программатор к ноуту, включаю питание;
4) Программирую, выключаю программатор, отсоединяю от ноута, достаю МК.
admin, резистор R14 точно номиналом 10 КОм ?
Не опечатка?
И ещё. Впаял КТ3102В в цилиндрическом корпусе ещё такие.
А позже нашёл КТ3102БМ в корпусе ТО-92.
Оставить или перепаять?
R14 - 10 kOm. Все верно, а что Вас смутило?
Из-за корпуса нет смыла перепаивать. Оставляйте прежние.
Да я уточнил просто 🙂
Не, про корпус это я к слову.
Меня буква больше интересует.
Но пусть стоЯт какие впаял. Дальше при испытании видно будет.
Транзисторы можно практически любые маломощные, главное с переходами не напутать.
Ещё уточню один момент...
Конденсаторы С6 и С10 каким номиналом всё-таки? 100 Пикофарад или 100 Нанофарад. Обозначение 0,1 на схеме соответствует именно 100 нФ = 0,1 мкФ. А в описании сказано про 100 Пикофарад.
И конденсатор С каким номиналом? Его нет на схеме, но есть на печатке, он параллельный С1.
А то я что-то все по 100 пикушек запаял. Начал разбираться заметил расхождение по обозначениям.
Пункт из описания
12) Конденсаторы 470μF на 25v, 10μF на 16v электролитические, 100pF и 47pF
По-всей видимости не 100 pF, 100nF = 0,1mkF
Пункт из описания
12) Конденсаторы 470μF на 25v, 10μF на 16v электролитические, 100pF и 47pF
По-всей видимости не 100 pF, а должно быть 100nF = 0,1mkF
Доделал 🙂 Конденсаторы С6, С10 и С запаял на 0,1mkF = 100nF.
Обозначение на корпусе конденсатора "104".
Вот фото. На фото на программатор подано питание и он включен. Но не подсоединён к com-порту. При данном положении перемычек светятся зелёный и жёлтый светодиоды.

Блок питания выдаёт "на холостую" 22,1 Вольт. При подключении к программатору (без включения кнопки) 22,0 Вольт. При включении кнопки 19,6 Вольт. Конечно, при таком входном напряжении стабилизатор U1 греется, но не сгорает. Но, видимо, надо уменьшить входное напряжение используя другой блок питания.
Далее, буду тестить с подключением к com-порту и прошивание.
Кстати, если водишь пальцами по дорожкам при включенной программаторе, то зажигается красный светодиод. Это к вопросу о "соплях" и непромытой плате после монтажа. Видимо, через мегаоомное сопротивление кожи (флюса и тд.) светодиод и начинает светиться.
Подаю на 3-ю ячейку разъёма com-порта 5 вольт с кренки. На выходе U3 (78L12) 14 Вольт... Почему-то. Это нормально?
Конденсатор 104, все верно.
Хоть в схеме и написано, что можно использовать питание до 24в, то исходя из характеристик стабилизаторов, но при этом они должны иметь как минимум - радиаторы для охлаждения. Тем более, что сейчас всё "Китай" сплошной и о верхнем пределе характеристик можно забыть. Для стабильной работы лучше использовать питание в районе 13-15v.
Найдите питание в пределах, что я указал, и проверьте показания еще раз. Кстати, замер идет на ногах стабилизатора или через общий минус?
Замер через общий минус...
Так нога стабилизатора тоже на общий минус подпаяна.
Вообще, меня смущает светодиод в ноге U3. Он по-моему как-то влияет на выходное напряжение крена. А если его на выход этой кренки посадить?
Конечно, я согласен с тем, что 22 вольта входного это много. Вообще, изначально хотел поставить крены в корпусе ТО-220. Попробую с меньшим питанием запустить.
И на принципиальной схеме на U3 стоИт жёлтый (ЖМ) светодиод, а должен быть красный. И наоборот, на U2 должен быть жёлтый, а стоИт красный (КМ). Именно на принципиалке.
Светодиоды можно вообще ставить одного цвета, это же не светофор, главное знать, что каждый из них означает. А при стабильной работе программатора они вообще не нужны.
Ну, хотя да... 🙂
Так... ну, вроде теперь всё окейно. Попробовал блок питания на 16 вольт. Напруга на U3 11,6 Вольт. На U1 5 Вольт, на U2 4,95 Вольт. Вроде как всё в норме.
Осталось попробовать прошить.
Так, ну вот и начались проблемы 🙂
Не прошивается. pic16F628А. Пробовал разные проги прошивки. Вроде как шьётся, но проходит проверка и говорит "ошибка". Считываешь, - нули.
Пробовал pic12F629 считать. Считывает нули.
При якобы прошивке (красный светодиод светит) замерял Vpp на ноге контроллера, - оно в норме 11,6
Использую удлинитель com-порта.
Вот здесь что выбрать?

напрямую к ком-порту тоже пробовал. Такая же фигня..
Выбирать нужно SI Prog I/O, все "окошки" инверсии сигналов - пусты. Джампер J3 должен быть в положении 2-1.
Удлинитель очень желательно не использовать (по крайней мере во время отладки).
Вчера прошивал pic 16f628a данным программатором , непосредственно подключенным к COM-порту (без шнура) , через айсипрог. При настройке программатора прямой доступ к портам не пошел. Шил используя драйвер виндоус. J3 был 2-3. Пробуйте. До этого пытался шить с шнуром. Не получалось.
Если я правильно понимаю, то если при считывании нули, то стоит бит защиты. Сотрите мк и снова прочитайте. Должно быть 3FFF
Спасибо!
А что за "драйвер виндоус"? Этот момент не понял.
Всмысле, нужна накатить какой-то драйвер в систему?
Вернее так: Когда контролллера в сокете нет, считывает все нули. Когда ставишь контроллер и считываешь, то все FF.
Открываю прошивку в hex и нажимаю прошить контроллер. Прошивка вроде как идёт. Светодиодкрасный светит, индикатор в программе показывает. Но после завершения пишет ошибку. Если после этого считать, то также получается FF
Для pic16F628A выбираю из списка PIC16X84 иначе вообще контроллер не видится.
Причём что новый микр. что якобы прошитый мик. при чтении выводит все F
кстати. У меня есть один микр 12F629 точно зашитый (со сторожевого таймера с автомата) он тоже считывается как FF
Допустим для 12F629 понятно, что все FF. Типа прошивка защищена итп. Но для остальных прошивок мне не понятно...
Попробоую поменять транзисторы...
Питание тоже другое пробовал
поменял цилиндрообразные транзисотры на корпус TO-92. То есть три транзистора заменил КТ3102
То же самое...
Если чтение не нули а FF, это уже означает, что не все так плохо.
При попытке прошить или прочесть он не выдает сообщение о повторении попытки / пропуске ошибке / отмене операции? Если нет, то МК определяется правильно.
Проверьте схему на обрывы и/или наличие "соплей"!
В чём же может быть проблема? Не хочется собирать другой программатор. Нужно этот до ума довести...
Сейчас запускаю только непосредственно подсоединив в ком-порту. Ошибки те же. Может быть прошивки левые какие.
Выложите любую проверенную и прошиваемую прошивку на PIC16F628A, чтобы без защиты и прочего.
--Если чтение не нули а FF, это уже означает, что не все так плохо.
Да, FF считывает в понирог.
--При попытке прошить или прочесть он не выдает сообщение о повторении попытки / пропуске ошибке / отмене операции? Если нет, то МК определяется правильно.
Нет, не выдаёт. Только после окончания прошивки пишет Врайт Файлед...
У меня стоИт max232 с индексом N
На выходе U2, то есть на выводе "1" разъёма Х3 у меня 4,92 Вольта. Это не мало? Каким образом его можно поднять, например, до 5,2 Вольта
В двташите max232 с индексом N в обвязке кондёры по 1Мкф. попробовать чтоли...
Да, и вообще, тразисторы смысла нет менять. Они там просто как ключи работают. Ну, что же попробовать ЛА3-ю заменить и мах. Да, на другом компьютере попробовать.
Биты конфигурации тоже считываются без ошибок.
В общем теперь ничего не понятно. Пустые сокеты в понипрог считывает как FF
Здесь в комментах есть такая фраза:
"Для прошивки PIC16F628A нужно чтобы Vpp (12v) было подано чуть раньше Vcc (5v)."
А каким образом это реализовать в данном программаторе?
Перемычку J3 вытащить чтоли, а при прошивании воткнуть 🙂
Нет, перемычку переставьте с 1-2 в позицию 2-3.
Попробуйте прошить другой МК. Они у Вас новые?
Всё удалось. Прошилось. Программой IC-PROG. Программу нужно настроить по методике http://www.5v.ru/ic-prog.htm
Там же можно и скачать её.
Прошил PIC16F628А на com-удлинителе. Перемычка J3 в положении 1-2, перемычка J4 включена.
Программа записалась и проверилась ОК. Теперь она считывается из микроконтроллера.
Программатор рабочий, ничего не перепаивал (за исключением транзисторов для профилактики)
admin спасибо большое за помощь.
Щас буду разбираться дальше, и попробую разобраться с ПониПрог. Всё-таки проблема с софтом, а не с железом была.
При положении перемычки J3 в 2-3 тоже нормально программирует. Перемычка J4 также включена.
Maxim72, спасибо что про драйвер сказали. Это меня в поисковике вывело на нормальную версию айсипрога (с фалом драйвером icprog.sys) см. по ссылке выше.