Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC

Как программировать PIC микроконтроллеры или Простой JDM программатор

Так уж сложилось, что знакомство с микроконтроллерами я начал с AVR. PIC микроконтроллеры до поры, до времени — обходил стороной. Но, все же на них тоже ведь есть уникальные, интересные для повторения, конструкции! А ведь эти микроконтроллеры тоже прошивать нужно . Эту статью пишу в основном для себя самого. Чтобы не забыть технологии, как без проблем и бессмысленных потерь времени прошить PIC микроконтроллер.

Для первой схемы — долго и упорно пытался сделать PIC программатор по найденным в интернете схемам — ничего не вышло . Стыдно, но пришлось обращаться к знакомому, чтобы прошил МК. Но ведь это не дело — постоянно бегать по знакомым! Этот же знакомый и посоветовал простенькую схему, работающую от СОМ порта. Но даже и тогда, когда я ее собрал — все равно ничего не получалось . Ведь мало собрать программатор — нужно еще под него настроить программу, которой будем прошивать. А вот как раз это у меня и не получалось. Целая туча инструкций в интернете, и мало какая мне помогла…

Тогда, мне удалось прошить один микроконтроллер. Но так как прошивал в условиях жесткого дефицита времени — не догадался сохранить хотя бы ссылку на инструкцию. И ведь не нашел ее вполедствии. Поэтому повторюсь — пишу статью, чтобы иметь свою собственную инструкцию.

Да, если эту статью будут читать специалисты по PIC микроконтроллерам — просьба не смеяться надо мной (ну во всяком случае сильно не смеяться ).  Но я отвлекся.

Итак, программатор для PIC микроконтроллеров. Простой, хотя и не 5 проводков, как для AVR микроконтроллеров, который я использую до сих пор. Вот схема:

Вот печатная плата (а вот здесь — она в формате Sprint-Layout 5.0).

СОМ разъем припаивается штырьками прямо на контактные площадки (главное — не запутаться с нумерацией). Второй ряд штырьков соединяется с платой маленькими перемычками (очень непонятно сказал, ага). Попробую дать фотографию… хоть она и страшная (нету у меня сейчас нормального фотоаппарата ).Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Самое злобное в том — что для PIC микроконтроллеров для прошивки нужны 12 вольт. А лучше не 12, а чуточку побольше. Скажем, 13. Или 13.5 (кстати, специалисты — поправьте меня в комментариях, если ошибаюсь. Пожалуйста.). 12 вольт еще можно где-то добыть. А 13 где? Я то выходил из положения просто — брал свежезаряженный литий-полимерный аккумулятор, в котором было 12.6 вольт. Ну или вообще четырехбаночный аккумулятор, с его 16 вольтами (прошил так один PIC — без проблем).

Но я опять отвлекся. Итак — инструкция по прошивке PIC микроконтроллеров. Ищем программу WinPIC800 (к сожалению простая и популярная icprog у меня не заработала,) и настраиваем ее так, как показано на скриншоте.

После этого — открываем файл прошивки, подключаем микроконтроллер и прошиваем.

Программатор jdm с внешним питанием от компа. Простейший программатор JDM для PIC на пассивных компонентах. Описание процесса программирования микросхем

Так уж сложилось, что знакомство с микроконтроллерами я начал с AVR. PIC микроконтроллеры до поры, до времени — обходил стороной. Но, все же на них тоже ведь есть уникальные, интересные для повторения, конструкции! А ведь эти микроконтроллеры тоже прошивать нужно . Эту статью пишу в основном для себя самого. Чтобы не забыть технологии, как без проблем и бессмысленных потерь времени прошить PIC микроконтроллер.

Для первой схемы — долго и упорно пытался сделать PIC программатор по найденным в интернете схемам — ничего не вышло . Стыдно, но пришлось обращаться к знакомому, чтобы прошил МК. Но ведь это не дело — постоянно бегать по знакомым! Этот же знакомый и посоветовал простенькую схему, работающую от СОМ порта. Но даже и тогда, когда я ее собрал — все равно ничего не получалось . Ведь мало собрать программатор — нужно еще под него настроить программу, которой будем прошивать. А вот как раз это у меня и не получалось. Целая туча инструкций в интернете, и мало какая мне помогла…

Тогда, мне удалось прошить один микроконтроллер.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Но так как прошивал в условиях жесткого дефицита времени — не догадался сохранить хотя бы ссылку на инструкцию. И ведь не нашел ее вполедствии. Поэтому повторюсь — пишу статью, чтобы иметь свою собственную инструкцию.

Итак, программатор для PIC микроконтроллеров. Простой, хотя и не 5 проводков, как для AVR микроконтроллеров, который я использую до сих пор. Вот схема:

Вот печатная плата ().

СОМ разъем припаивается штырьками прямо на контактные площадки (главное — не запутаться с нумерацией). Второй ряд штырьков соединяется с платой маленькими перемычками (очень непонятно сказал, ага). Попробую дать фотографию… хоть она и страшная (нету у меня сейчас нормального фотоаппарата ).
Самое злобное в том — что для PIC микроконтроллеров для прошивки нужны 12 вольт. А лучше не 12, а чуточку побольше. Скажем, 13. Или 13.5 (кстати, специалисты — поправьте меня в комментариях, если ошибаюсь. Пожалуйста.). 12 вольт еще можно где-то добыть. А 13 где? Я то выходил из положения просто — брал свежезаряженный литий-полимерный аккумулятор, в котором было 12.6 вольт. Ну или вообще четырехбаночный аккумулятор, с его 16 вольтами (прошил так один PIC — без проблем).

Но я опять отвлекся. Итак — инструкция по прошивке PIC микроконтроллеров. Ищем программу WinPIC800 (к сожалению простая и популярная icprog у меня не заработала,) и настраиваем ее так, как показано на скриншоте.

После этого — открываем файл прошивки, подключаем микроконтроллер и прошиваем.

За основу предлагаемого программатора взята публикация из журнала «Радио» №2, 2004г, «Программирование современных PIC16, PIC12 на PonyProg». Это мой первый программатор, который я использовал для прошивки PIC микросхем дома. Программатор представляет собой упрощенный вариант JDM программатора, оригинальная схема имеет преобразователь RS-232 на TTL в виде микросхемы MAX232, она более универсальна, но ее «на коленке» уже не соберешь. Данная схема не имеет вообще ни одного активного компонента, не содержит дефицитных деталей и очень проста, может быть собрана без применения печатной платы.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC

Рис. 1: Принципиальная схема программатора.

Описание работы схемы
Схема программатора представлена на рис. 1. Резисторы по цепям CLK (тактирование), DATA (информационный), Upp (напряжение программирования) служат для ограничения протекающего тока. PIC контроллеры защищены от пробоя встроенными стабилитронами, поэтому получается некоторая совместимость TTL и RS-232 логики. В представленной схеме присутствуют диоды VD1, VD2, которые «отбирают» плюсовое напряжение от COM порта относительно 5 контакта и передают его на питание контроллера, благодаря чему в некоторых случаях удается избавиться от дополнительного источника питания.

Налаживание
На практике не всегда случается, что данный программатор заработает без налаживания, с 1-го раза, т.к. работа данной схемы сильно зависит от параметров COM порта. Однако у меня, на двух материнских платах Gigabyte 8IPE1000 и WinFast под XP все заработало сразу. Если Вам лень разбираться с неработающей, более сложной схемой программатора, то стоит попробовать собрать эту. Вот некоторые вещи, которые могут повлиять:

Чем новее мат. плата, тем разработчики уделяют этим портам меньше внимания, потому что эти порты давно стали морально устаревшими. Избавиться от этого можно, купив переходник USB-COM, правда опять же купленное устройство может не подойти. Нужные параметры таковы: изменяемое напряжение должно меняться не менее -10В до +10В (лог. 0 и 1) относительно 5-го контакта разъема. Отдааваемый ток должен быть хотя бы таким, чтобы при подключеннии резистора 2,7 кОм между 5-м контактом и исследуемым контактом напряжение не падало ниже 10В (сам таких плат не встречал). Также порт должен правильно определять напряжения, поступающие от контроллера, при уровне напряжения близкого к 0В, но не больше 2В определяется нуль, и соответственно при выше 2В определяется единица.

Также проблемы могут возникнуть из за программного обеспечения.
Особенно это касается ОС LINUX, т.к. из за наличия эмуляторов типа wine, VirtualBox порты могут работать неправильно, а возможностей от них требуется много.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Этих проблем я коснусь подробнее в другой статье.

Зная эти особенности, приступим к налаживанию.
Для этого очень желательно иметь программу ICProg 1.05D.
В меню программы нужно во первых выбрать в настройках соотв. порт (COM1. COM2), выбрать JDM программатор. Затем открыть окно «Hardware Check», в меню «Settings». В этом меню нужно по очереди ставить галочки и вольтметром измерять напряжение на контактах подключенного разъема. Если параметры напряжения не соответствуют норме, то к сожалению, это может быть причиной неработоспособности, тогда придется собирать схему с преобразователем RS-232 TTL. Отметив все галочки, нужно убедиться, что на стабилитроне образуется напряжение питания около 5В. Если напряжения в норме и отсутствуют ошибки монтажа, то все должно сработать. Ставим контроллер в панельку, открываем прошивку, программируем. Галочки типа «Invert data out» включать не надо (все сняты). Также не нужно забывать, что некоторые партии контроллеров могут иметь не совсем стандартные параметры, и их прошить не получается, в таких случаях с данным программатором можно попробовать только снизить напряжение питания с 5В до 3-4В, подключив соотв. стабилитрон, посмотреть контроллер на предмет ошибочного включения режима LVP (низковольтное программирование), как предотвратить, можно прочитать в Интернете для конкретного типа контроллера. Повысить напряжение программирования проблеммного контроллера можно, наверное, только усложнив схему введением усилительного каскада с общим эмиттером, запитанного от дополнительного источника питания.

Теперь подробнее о проблеме с питанием устройства. Программатор тестировался с программами ICProg и консольным picprog под Linux, должен работать с любым, который поддерживает JDM, если подключить дополнительный источник питания (он подключается через резистор 1кОм к стабилитрону, диоды с резисторами в этом случае можно вообще исключить). Дело в том, что алгоритмы управления программаторов у отдельного софта разные, программа ICProg, является самой неприхотливой.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Замечено, что в ОС Windows эта программа на неиспользуемом контакте 2 поднимала нужное напряжение питания, эта же программа под эмулятором в Linux на другой мат. плате уже не смогла этого сделать, однако выход был найден, отбирая питание из напряжения программирования. В общем, с ICProg, думаю, можно применять этот программатор без дополнительного питания. С другим софтом это гарантировать врядли получится, например, «родной» из репозиториев Ubuntu picprog без питания просто не определяет программатор, выдавая сообщение «JDM hardware not found». Вероятно, он либо принимает какие-то данные, не подавая напряжение программирования, либо делает это слишком быстро, таким образом что фильтрующий конденсатор еще не успевает зарядиться.

В качестве элементарного программатора предлагаем вам собрать по авторской схеме JDM совместимый программатор, который мы назвали NTV программатор. Ниже схема NTV программатора (используется розетка DB9; не путать с вилкой).

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

Данный программатор НЕ РАБОТАЕТ при подключении к ноутбукам, т.к. уровни сигналов интерфейса RS-232 (COM-порт) в мобильных системах занижены. Также он может не работать на современных ПК, где аппаратно экономится ток на порту. Так что не обессудьте, собирайте и проверяйте на всех попавшихся под руку компьютерах.

Конструктивно плата программатора вставляется между контактами разъема DB-9, которые подпаиваются к контактным площадкам печатной платы. Ниже рисунок платы и фотография собранного программатора.

Для полноты информации следует сказать, что есть еще один подобный программатор, который я собирал под микроконтроллеры в 8 выводном корпусе ( и ). Программатор также великолепно работает и с этими микроконроллерами.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Ниже рисунок платы и фотографии.

Какие первые шаги должен сделать радиолюбитель, решивший собрать схему на микроконтроллере? Естественно, необходима управляющая программа — «прошивка», а также программатор.

И если с первым пунктом нет проблем — готовую «прошивку» обычно выкладывают авторы схем, то вот с программатором дела обстоят сложнее.

Цена готовых USB-программаторов довольно высока и лучшим решением будет собрать его самостоятельно. Вот схема предлагаемого устройства (картинки кликабельны).

Основная часть.

Панель установки МК.

Исходная схема взята с сайта LabKit.ru с разрешения автора, за что ему большое спасибо. Это так называемый клон фирменного программатора PICkit2. Так как вариант устройства является «облегчённой» копией фирменного PICkit2, то автор назвал свою разработку PICkit-2 Lite
, что подчёркивает простоту сборки такого устройства для начинающих радиолюбителей.

Что может программатор? С помощью программатора можно будет прошить большинство легкодоступных и популярных МК серии PIC (PIC16F84A, PIC16F628A, PIC12F629, PIC12F675, PIC16F877A и др.), а также микросхемы памяти EEPROM серии 24LC. Кроме этого программатор может работать в режиме USB-UART преобразователя, имеет часть функций логического анализатора. Особо важная функция, которой обладает программатор — это расчёт калибровочной константы встроенного RC-генератора некоторых МК (например, таких как PIC12F629 и PIC12F675).

Необходимые изменения.

В схеме есть некоторые изменения, которые необходимы для того, чтобы с помощью программатора PICkit-2 Lite была возможность записывать/стирать/считывать данные у микросхем памяти EEPROM серии 24Cxx.

Из изменений, которые были внесены в схему. Добавлено соединение от 6 вывода DD1 (RA4) до 21 вывода ZIF-панели. Вывод AUX используется исключительно для работы с микросхемами EEPROM-памяти 24LС (24C04, 24WC08 и аналоги). По нему передаются данные, поэтому на схеме панели программирования он помечен словом «Data».Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC При программировании микроконтроллеров вывод AUX обычно не используется, хотя он и нужен при программировании МК в режиме LVP.

Также добавлен «подтягивающий» резистор на 2 кОм, который включается между выводом SDA и Vcc микросхем памяти.

Все эти доработки я уже делал на печатной плате, после сборки PICkit-2 Lite по исходной схеме автора.

Микросхемы памяти 24Cxx (24C08 и др.) широко используются в бытовой радиоаппаратуре, и их иногда приходится прошивать, например, при ремонте кинескопных телевизоров. В них память 24Cxx применяется для хранения настроек.

В ЖК-телевизорах применяется уже другой тип памяти (Flash-память). О том, как прошить память ЖК-телевизора я уже рассказывал . Кому интересно, загляните.

В связи с необходимостью работы с микросхемами серии 24Cxx мне и пришлось «допиливать» программатор. Травить новую печатную плату я не стал, просто добавил необходимые элементы на печатной плате. Вот что получилось.

Ядром устройства является микроконтроллер PIC18F2550-I/SP
.

Это единственная микросхема в устройстве. МК PIC18F2550 необходимо «прошить». Эта простая операция у многих вызывает ступор, так как возникает так называемая проблема «курицы и яйца». Как её решил я, расскажу чуть позднее.

Список деталей для сборки программатора. В мобильной версии потяните таблицу влево (свайп влево-вправо), чтобы увидеть все её столбцы.

Название
Обозначение
Номинал/Параметры
Марка или тип элемента
Для основной части программатора

МикроконтроллерDD18-ми битный микроконтроллерPIC18F2550-I/SP
Биполярные транзисторыVT1, VT2, VT3КТ3102
VT4КТ361
ДиодVD1КД522, 1N4148
Диод ШотткиVD21N5817
СветодиодыHL1, HL2любой на 3 вольта, красного
и зелёного
цвета свечения
РезисторыR1, R2300 Ом
R322 кОм
R41 кОм
R5, R6, R1210 кОм
R7, R8, R14100 Ом
R9, R10, R15, R164,7 кОм
R112,7 кОм
R13100 кОм
КонденсаторыC20,1 мкК10-17 (керамические), импортные аналоги
C30,47 мк
Электролитические конденсаторыC1100 мкф * 6,3 вК50-6, импортные аналоги
C447 мкф * 16 в
Катушка индуктивности (дроссель)L1680 мкГнунифицированный типа EC24, CECL или самодельный
Кварцевый резонаторZQ120 МГц
USB-розеткаXS1типа USB-BF
ПеремычкаXT1любая типа «джампер»
Для панели установки микроконтроллеров (МК)

ZIF-панельXS1любая 40-ка контактная ZIF-панель
РезисторыR12 кОмМЛТ, МОН (мощностью от 0,125 Вт и выше), импортные аналоги
R2, R3, R4, R5, R610 кОм

Теперь немного о деталях и их назначении.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC

Зелёный
светодиод HL1 светится, когда на программатор подано питание, а красный
светодиод HL2 излучает в момент передачи данных между компьютером и программатором.

Для придания устройству универсальности и надёжности используется USB-розетка XS1 типа «B» (квадратная). В компьютере же используется USB-розетка типа «А». Поэтому перепутать гнёзда соединительного кабеля невозможно. Также такое решение способствует надёжности устройства. Если кабель придёт в негодность, то его легко заменить новым не прибегая к пайке и монтажным работам.

В качестве дросселя L1 на 680 мкГн лучше применить готовый (например, типов EC24 или CECL). Но если готовое изделие найти не удастся, то дроссель можно изготовить самостоятельно. Для этого нужно намотать 250 — 300 витков провода ПЭЛ-0,1 на сердечник из феррита от дросселя типа CW68. Стоит учесть, что благодаря наличию ШИМ с обратной связью, заботиться о точности номинала индуктивности не стоит.

Напряжение для высоковольтного программирования (Vpp) от +8,5 до 14 вольт создаётся ключевым стабилизатором. В него входят элементы VT1, VD1, L1, C4, R4, R10, R11. С 12 вывода PIC18F2550 на базу VT1 поступают импульсы ШИМ. Обратная связь осуществляется делителем R10, R11.

Чтобы защитить элементы схемы от обратного напряжения с линий программирования в случае использования USB-программатора в режиме внутрисхемного программирования ICSP (In-Circuit Serial Programming) применён диод VD2. VD2 — это диод Шоттки . Его стоит подобрать с падением напряжения на P-N переходе не более 0,45 вольт. Также диод VD2 защищает элементы от обратного напряжения, когда программатор применяется в режиме USB-UART преобразования и логического анализатора.

При использовании программатора исключительно для программирования микроконтроллеров в панели (без применения ICSP), то можно исключить диод VD2 полностью (так сделано у меня) и установить вместо него перемычку.

Компактность устройству придаёт универсальная ZIF-панель (Zero Insertion Force — с нулевым усилием установки).Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC

Благодаря ей можно «зашить» МК практически в любом корпусе DIP.

На схеме «Панель установки микроконтроллера (МК)» указано, как необходимо устанавливать микроконтроллеры с разными корпусами в панель. При установке МК следует обращать внимание на то, чтобы микроконтроллер в панели позиционируется так, чтобы ключ на микросхеме был со стороны фиксирующего рычага ZIF-панели.

Вот так нужно устанавливать 18-ти выводные микроконтроллеры (PIC16F84A, PIC16F628A и др.).

А вот так 8-ми выводные микроконтроллеры (PIC12F675, PIC12F629 и др.).

Если есть нужда прошить микроконтроллер в корпусе для поверхностного монтажа (SOIC), то можно воспользоваться переходником или просто подпаять к микроконтроллеру 5 выводов, которые обычно требуются для программирования (Vpp, Clock, Data, Vcc, GND).

Готовый рисунок печатной платы со всеми изменениями вы найдёте по ссылке в конце статьи. Открыв файл в программе Sprint Layout 5.0 можно с помощью режима «Печать» не только распечатать слой с рисунком печатных проводников, но и просмотреть позиционирование элементов на печатной плате. Обратите внимание на изолированную перемычку, которая связывает 6 вывод DD1 и 21 вывод ZIF-панели. Печатать рисунок платы необходимо в зеркальном отображении
.

Изготовить печатную плату можно методом ЛУТ, а также маркером для печатных плат , с помощью цапонлака (так делал я) или «карандашным» методом .

Вот рисунок позиционирования элементов на печатной плате (кликабельно).

При монтаже первым делом необходимо запаять перемычки из медного лужёного провода, затем установить низкопрофильные элементы (резисторы, конденсаторы, кварц, штыревой разъём ISCP), затем транзисторы и запрограммированный МК. Последним шагом будет установка ZIF-панели, USB-розетки и запайка провода в изоляции (перемычки).

«Прошивка» микроконтроллера PIC18F2550.

Файл «прошивки» — PK2V023200.hex
необходимо записать в память МК PIC18F2550I-SP при помощи любого программатора, который поддерживает PIC микроконтроллеры (например, Extra-PIC).Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Я воспользовался JDM Programmator’ом JONIC PROG и программой WinPic800
.

Залить «прошивку» в МК PIC18F2550 можно и с помощью всё того же фирменного программатора PICkit2 или его новой версии PICkit3. Естественно, сделать это можно и самодельным PICkit-2 Lite, если кто-либо из друзей успел собрать его раньше вас:).

Также стоит знать, что «прошивка» микроконтроллера PIC18F2550-I/SP (файл PK2V023200.hex
) записывается при установке программы PICkit 2 Programmer в папку вместе с файлами самой программы. Примерный путь расположения файла PK2V023200.hex — «C:\Program Files (x86)\Microchip\PICkit 2 v2\PK2V023200.hex»

. У тех, у кого на ПК установлена 32-битная версия Windows, путь расположения будет другим: «C:\Program Files\Microchip\PICkit 2 v2\PK2V023200.hex»

.

Ну, а если разрешить проблему «курицы и яйца» не удалось предложенными способами, то можно купить уже готовый программатор PICkit3 на сайте AliExpress. Там он стоит гораздо дешевле. О том, как покупать детали и электронные наборы на AliExpress я писал .

Обновление «прошивки» программатора.

Прогресс не стоит на месте и время от времени компания Microchip выпускает обновления для своего ПО, в том числе и для программатора PICkit2, PICkit3. Естественно, и мы можем обновить управляющую программу своего самодельного PICkit-2 Lite. Для этого понадобится программа PICkit2 Programmer. Что это такое и как пользоваться — чуть позднее. А пока пару слов о том, что нужно сделать, чтобы обновить «прошивку».

Для обновления ПО программатора необходимо замкнуть перемычку XT1 на программаторе, когда он отключен от компьютера. Затем подключить программатор к ПК и запустить PICkit2 Programmer. При замкнутой XT1 активируется режим bootloader
для загрузки новой версии прошивки. Затем в PICkit2 Programmer через меню «Tools» — «Download PICkit 2 Operation System» открываем заранее подготовленный hex-файл обновлённой прошивки. Далее произойдёт процесс обновления ПО программатора.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC

После обновления нужно отключить программатор от ПК и снять перемычку XT1. В обычном режиме перемычка разомкнута
. Узнать версию ПО программатора можно через меню «Help» — «About» в программе PICkit2 Programmer.

Это всё по техническим моментам. А теперь о софте.

Работа с программатором. Программа PICkit2 Programmer.

Для работы с USB-программатором нам потребуется установить на компьютер программу PICkit2 Programmer. Это специальная программа обладает простым интерфейсом, легко устанавливается и не требует особой настройки. Стоит отметить, что работать с программатором можно и с помощью среды разработки MPLAB IDE, но для того, чтобы прошить/стереть/считать МК достаточно простой программы — PICkit2 Programmer. Рекомендую.

После установки программы PICkit2 Programmer подключаем к компьютеру собранный USB-программатор. При этом засветится зелёный

светодиод («питание»), а операционная система опознает устройство как «PICkit2 Microcontroller Programmer»

и установит драйвера.

Запускаем программу PICkit2 Programmer. В окне программы должна отобразиться надпись.

Если программатор не подключен, то в окне программы отобразится страшная надпись и краткие инструкции «Что делать?» на английском.

Если же программатор подключить к компьютеру с установленным МК, то программа при запуске определить его и сообщит нам об этом в окне PICkit2 Programmer.

Поздравляю! Первый шаг сделан. А о том, как пользоваться программой PICkit2 Programmer, я рассказал в отдельной статье. Следующий шаг .

Необходимые файлы:

Однажды я решил собрать несложный LC-метр на pic16f628a и естественно его надо было чем-то прошить. Раньше у меня был компьютер с физическим com-портом, но сейчас в моём распоряжении только usb и плата pci-lpt-2com. Для начала я собрал простой JDM программатор, но как оказалось ни с платой pci-lpt-com, ни с usb-com переходником он работать не захотел (низкое напряжение сигналов RS-232).Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Тогда я бросился искать usb программаторы pic, но там, как оказалось всё ограничено использованием дорогих pic18f2550/4550, которых у меня естественно не было, да и жалко такие дорогие МК использовать, если на пиках я очень редко что-то делаю (предпочитаю авр-ы, их прошить проблем не составляет, они намного дешевле, да и программы писать мне кажется, на них проще). Долго копавшись на просторах интернета в одной из множества статей про программатор EXTRA-PIC и его всевозможные варианты один из авторов написал, что extrapic работает с любыми com-портами и даже переходником usb-com.

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

Я подумал, если использовать usb адаптер, то будет очень глупо делать два раза преобразование уровней usb в usart TTL, TTL в RS232, RS232 обратно в TTL, если можно просто взять TTL сигналы порта RS232 из микросхемы usb-usart преобразователя.

Так и сделал. Взял микросхему Ch440G (в которой есть все 8 сигналов com-порта) и подключил её вместо max232. И вот что получилось.

В моей схеме есть перемычка jp1, которой нет в экстрапике, её я поставил потому что, не знал, как себя поведёт вывод TX на ТТЛ уровне, поэтому сделал возможность его инвертировать на оставшемся свободном элементе И-НЕ и не прогадал, как оказалось, напрямую на выводе TX логическая единица, и поэтому на выводе VPP при включении присутствует 12 вольт, а при программировании ничего не будет (хотя можно инвертировать TX программно).

После сборки платы пришло время испытаний. И тут настало главное разочарование. Программатор определился сразу (программой ic-prog) и заработал, но очень медленно! В принципе — ожидаемо. Тогда в настройках com порта я выставил максимальную скорость (128 килобод) начал испытания всех найденных программ для JDM. В итоге, самой быстрой оказалась PicPgm. Мой pic16f628a прошивался полностью (hex, eeprom и config) плюс верификация где-то 4-6 минут (причём чтение идёт медленнее записи).Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC IcProg тоже работает, но медленнее. Ошибок про программировании не возникло. Также я попробовал прошить eeprom 24с08, результат тот же — всё шьёт, но очень медленно.

Выводы: программатор достаточно простой, в нём нет дорогостоящих деталей (Ch440 — 0.3-0.5$ , к1533ла3 можно вообще найти среди радиохлама), работает на любом компьютере, ноутбуке (и даже можно использовать планшеты на windows 8/10). Минусы: он очень медленный. Также он требует внешнее питание для сигнала VPP. В итоге, как мне показалось, для нечастой прошивки пиков — это несложный для повторения и недорогой вариант для тех, у кого нет под рукой древнего компьютера с нужными портами.

Вот фото готового девайса:

Как поётся в песне «я его слепила из того, что было». Набор деталей самый разнообразный: и smd, и DIP.

Для тех, кто рискнёт повторить схему, в качестве usb-uart конвертера подойдёт почти любой (ft232, pl2303, cp2101 и др), вместо к1533ла3 подойдёт к555, думаю даже к155 серия или зарубежный аналог 74als00, возможно даже будет работать с логическими НЕ элементами типа к1533лн1. Прилагаю свою печатную плату, но разводка там под те элементы, что были в наличии, каждый может перерисовать под себя.

Список радиоэлементов
ОбозначениеТипНоминалКоличествоПримечаниеМагазинМой блокнот
IC1МикросхемаCh440G1В блокнот

IC2МикросхемаК1533ЛА31В блокнот

VR1Линейный регулятор

LM7812

1В блокнот

VR2Линейный регулятор

LM7805

1В блокнот

VT1Биполярный транзистор

КТ502Е

1В блокнот

VT2Биполярный транзистор

КТ3102Е

1В блокнот

VD1-VD3Выпрямительный диод

1N4148

2В блокнот

C1, C2, C5-C7Конденсатор100 нФ5В блокнот

C3, C4Конденсатор22 пФ2В блокнот

HL1-HL4СветодиодЛюбой4В блокнот

R1, R3, R4Резистор

1 кОм

3

Самодельный программатор для PIC-контроллеров

Развитие электроники идёт стремительными темпами, и всё чаще главным элементом того или иного устройства является микроконтроллер.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Он выполняет основную работу и освобождает проектировщика от необходимости создания изощрённых схемных решений, тем самым уменьшая размер печатной платы до минимального. Как всем известно, микроконтроллером управляет программа, записанная в его внутреннюю память. И если опытный программист-электронщик не испытывает проблем с использованием микроконтроллеров в своих устройствах, то для начинающего радиолюбителя попытка записать программу в контроллер (особенно PIC) может обернуться большим разочарованием, а иногда и небольшим пиротехническим шоу в виде дымящей микросхемы.

Как ни странно, но при всём величии сети Интернет в нём очень мало информации о прошивке PIC-контроллеров, а тот материал что удаётся найти — очень сомнительного качества. Конечно, можно купить заводской программатор за неадекватную цену и шить сколько душе угодно, но что делать, если человек не занимается серийным производством. Для этих целей можно собрать несложную и не дорогую в реализации самоделку, именуемую JDM-программатором по приведенной ниже схеме (рисунок №1):

Рисунок №1 — схема программатора

Сразу привожу перечень элементов для тех, кому лень всматриваться в схему:

  • R1 — 10 кОм
  • R2 — 10 кОм (подстроченный). Регулировкой сопротивления данного резистора нужно добиться около 13В на выводе №4 (VPP) во время программирования. В моём случае сопротивление составляет 1,2 кОм
  • R3 — 200 Ом
  • R4, R5 — 1,5 кОм
  • VD1, VD2, VD3, VD4, VD6 — 1N4148
  • VD5 — 1N4733A (Напряжение стабилизации 5,1В)
  • VD7 — 1N4743A (Напряжение стабилизации 13В)
  • C1 — 100 нФ (0,1 мкФ)
  • C2 — 470 мкФ х 16 В (электролитический)
  • SUB-D9F — разъём СОМ-порта (МАМА или РОЗЕТКА)
  • Панелька DIP8 — зависит от используемого вами контроллера

В схеме использован пример подключения таких распространённых контроллеров, как PIC12F675 и PIC12F629, но это совсем не значит, что прошивка других серий PIC будет невозможна.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Чтобы записать программу в контроллер другого типа, достаточно перекинуть провода программатора в соответствии с рисунком №2, который приведён ниже.

Рисунок №2 — варианты корпусов PIC-контроллеров с необходимыми выводами
Как можно догадаться, в схеме моего программатора использован корпус DIP8. При большом желании можно изготовить универсальный переходник под каждый тип микросхемы, получив тем самым универсальный программатор. Но так как с PIC-контроллерами работаю редко, для меня хватит и этого.

Хоть сама схема довольно проста и не вызовет трудностей в сборке, но она тоже требует уважения. Поэтому неплохо было бы сделать под неё печатную плату. После некоторых манипуляций с программой SprintLayout, текстолитом, дрелью и утюгом, на свет родилась вот такая заготовка (фото №3).

Фото №3 — печатная плата программатора
Скачать исходник печатной платы для программы SprintLayout можно по этой ссылке:
pp_programmator.zip

[17.67 Kb] (скачиваний: 1568)

При желании его можно изменить под свой тип PIC-контроллера. Для тех, кто решил оставить плату без изменений, выкладываю вид со стороны деталей для облегчения монтажа (рисунок №4).

Рисунок №4 — плата с монтажной стороны

Ещё немного колдовства с паяльником и мы имеем готовое устройство, способное прошить PIC-контроллер через COM-порт вашего компьютера. Ещё тёпленький и не отмытый от флюса результат моих стараний показан на фото №5.

Фото №5 — программатор в сборе
С этого момента, первый этап на пути к прошивке PIC-контроллера, подошёл к концу. Второй этап будет включать в себя подключение программатора к компьютеру и работу с программой IC-Prog.
К сожалению, не все современные компьютеры и ноутбуки способны работать с данным программатором ввиду банального отсутствия на них COM-портов, а те что установлены на ноутбуках не выдают необходимые для программирования 12В.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Так что я решил обратится к своему первому ПК, который давным-давно пылился и ждал своего звёздного часа (и таки дождался).
Итак включаем компьютер и первым делом устанавливаем программу IC-Prog. Скачать её можно с сайта автора или по этой ссылке:
icprog105d.zip

[432.25 Kb] (скачиваний: 1864)

Подключаем программатор к COM-порту и запускаем только что установленное приложение. Для корректной работы необходимо выполнить ряд манипуляций. Изначально необходимо выбрать тот тип контроллера, который собираемся шить. У меня это PIC12F675. На скриншоте №6 поле для выбора контроллера выделено красным цветом.

Скриншот №6 — выбор типа микроконтроллера

Далее переходим в меню «Настройки»->»Опции«, в появившемся окне выбираем вкладку I2C и ставим галочки, как показано на скриншоте №7.

Скриншот №7 — настройка метода записи контроллера

В этом же окне переходим во вкладку «Программирование» и выбираем пункт «Проверка при программировании«. Проверка после программирования может вызвать ошибку, так как в некоторых случаях самой прошивкой устанавливаются фьюзы блокировки считывания СР. Чтобы не морочить себе голову данную проверку лучше отключить. Короче следуем скриншоту №8.

Скриншот №8 — настройка верификации

Продолжаем работу с этим окном и переходим на вкладку «Общие«. Здесь необходимо задать приоритет работы программы и обязательно задействовать NT/2000/XP драйвер (скриншот №9). В некоторых случаях программа может предложить установку данного драйвера и потребуется перезапуск IC-Prog.

Скриншот №9 — общие настройки

Итак, с этим окном работа окончена. Теперь перейдём к настройкам самого программатора. Выбираем в меню «Настройки»->»Настройки программатора» или просто нажимаем клавишу F3. Появляется следующее окно, показанное на скриншоте №10.

Скриншот №10 — окно настроек программатора
Первым делом выбираем тип программатора — JDM Programmer.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Далее выставляем радиокнопку использования драйвера Windows. Следующий шаг подразумевает выбор COM-порта, к которому подключен ваш программатор. Если он один, вопросов вообще нет, а если более одного — посмотрите в диспетчере устройств, какой на данным момент используется. Ползунок задержки ввода/вывода предназначен для регулирования скорости записи и чтения. Это может понадобится на быстрых компьютерах и при возникновении проблем с прошивкой — этот параметр необходимо увеличить. В моём случае он остался по умолчанию равным 10 и всё нормально отработало.

На этом настройка программы IC-Prog окончена и можно переходить к процессу самой прошивки, но для начала считаем данные с микроконтроллера и посмотрим что в него записано. Для этого на панели инструментов нажимаем на значок микросхемы с зелёной стрелкой, как показано на скриншоте №11.

Скриншот №11 — процесс чтения информации с микроконтроллера

Если микроконтроллер новый и до этого не прошивался, то все ячейки его памяти будут заполнены значениями 3FFF, кроме самой последней. В ней будет содержаться значение калибровочной константы. Это очень важное и уникальное для каждого контроллера значение. От него зависит точность тактирования, которая путём подбора и установки этой самой константы закладывается заводом изготовителем. На скриншоте №12 показана та ячейка памяти, в которой будет храниться константа при чтении контроллера.

Скриншот №12 — значение калибровочной константы

Повторюсь, что значение уникальное для каждой микросхемы и не обязательно должно совпадать с тем, что на рисунке. Многие по неопытности затирают эту константу и в последствии PIC-контроллер начинает некорректно работать, если в проекте используется тактирование от внутреннего генератора. Советую записать эту константу и наклеить надпись с её значением прямо на контроллер. Таким образом вы избежите множество неприятностей в будущем. Итак, значение записано — двигаемся дальше.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Открываем файл прошивки, имеющий как правило расширение .hex. Теперь вместо надписей 3FFF, буфер программирования содержит код нашей программы (скриншот №13).

Скриншот №13 — прошивка, загруженная в буфер программирования

Выше я писал, что многие затирают калибровочную константу по неосторожности. Когда же это происходит? Это случается в момент открытия файла прошивки. Значение константы автоматически меняется на 3FFF и если начать процесс программирования, то назад дороги уже нет. На скриншоте №14 выделена та ячейка памяти где ранее была константа 3450 (до открытия hex-файла).

Скриншот №14 — автоматическое изменение калибровочной константы

Теперь нужно очень внимательно выполнить последующие действия. Нажимаем иконку микросхемы с молнией на панели инструментов, тем самым сообщая программе, что мы хотим инициировать процесс прошивки. Программа спросит уверены ли мы, что хотим прошить данное устройство. Соглашаемся и нажимаем «ДА«. После этого получаем предупреждение, показанное на скриншоте №15.

Скриншот №15 — предупреждение о расхождении значений константы тактирования

IC-Prog сообщает нам, что ранее было установлено одно значение калибровочной константы (в моём случае 3450), а теперь другое (3FFF), автоматически подставленное из hex-файла. Также по умолчанию предлагается оставить значение 3FFF. Здесь важно нажать «НЕТ«, чтобы IC-Prog во время программирования вернул нам значение 3450 или то, что будет у вас. В общем жмём «НЕТ» и наблюдаем следующее окно (скриншот №16).

Скриншот №16 — процесс программирования

В этот период советую ничего не нажимать и не грузить компьютер другими задачами. Когда я делал снимок экрана для этой статьи, то при нажатии на кнопку Print Screen вылетела ошибка записи и пришлось проделывать всё заново. По истечении некоторого времени IC-Prog выдаст вам сообщение об успешной проверке вновь записанного кода в ваш PIC-контроллер, так что всем кому понравилась эта статья, желаю увидеть вот это после аналогичных стараний (скриншот №17):

Скриншот №17 — прошивка прошла успешно, можно расслабиться

Если в процессе у вас возникнут какие-либо вопросы, внимательно перечитайте статью заново и всё обязательно получится — проверено лично.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Всем удачи и творческих успехов!!!

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

Схемы лучшего программатора для pic. Простейший программатор JDM для PIC на пассивных компонентах. Заводской программатор от Microchip

1. ПРОГРАММАТОР ДЛЯ PIC-КОНТРОЛЛЕРОВ

Я надеюсь, что моя статья поможет некоторым радиолюбителям перешагнуть порог от цифровой техники к микроконтроллерам. В Интернете и радиолюбительских журналах много программаторов: от самых простых до очень накрученных. Мой не очень сложный, но надежный.

Первый вариант программатора предназначен для программирования 18-ти и 28-ми «пиновых» PIC контроллеров. В основу программатора положена схема из журнала Радио № 10 за 2007 год. Но подбор конденсатора С7, эксперименты с разными вариантами ICprog, PonyProg, WinPic и скоростями чтения-записи не дали желаемого результата: успешное программирование получалось через раз. И это продолжалось до тех пор, пока не сделал питание +5В программируемой микросхемы отдельно, а не после 12-ти вольтного стабилизатора. Получилась такая схема.

Опасаясь сбоев, печатку рисовал так, чтобы плата вставлялась непосредственно в Com-порт, что не очень просто из-за всевозможных «шнурков» и малого расстояния до корпуса. Получилась печатка неправильной формы, но вставляется в СОМ-порт нормально и программирует без ошибок.

Со временем сделал шнур-удлинитель длинной около 1 метра. Теперь программатор лежит рядом с монитором и подключен к COM порту. Работает нормально: многократно программировались микроконтроллеры PIC16F84A, PIC16F628A, PIC16F873A.

Обратите внимание: микросхема Мах и светодиоды установлены со стороны печатных проводников. Панельки — ZIF-28, одна из них служит для 18-ти выводных PIC. На панельках нанесены метки первых ножек и числа «18» и «28».Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC В корпусе вилки-адаптера установлен трансформатор 220 на 15 вольт, 4 ватта. Включать в розетку нужно после установки микроконтроллера в панельку. Транзисторы n-p-n маломощные высокочастотные (300Мгц) в корпусе to-92.

Разъём XP временно не устанавливал, а потом оказалось, что он особо и не нужен. Пришлось как-то программировать впаянный МК, так я провода прямо в ZIF вставил и зафиксировал. Перепрограммирование прошло успешно.

Я работаю c программами ICprog и WinPic-800.

В программе IC-prog 1.05D следующие настройки программатора:

  • Программатор – JDM Programmer
  • Порт –Com1
  • Прямой доступ к портам.
  • Инверсия: ввода, вывода и тактирования (поставить галочки).

В WinPic-800 –v.3.64f всё идентично, только нужно еще поставить “птицу” в использовании MCLR.

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

  • Печатная плата программатора
  • Программа WinPic-800 ( )
  • Программа IC-Prog ()
  • Статья по IC-Prog.

2. ПРОГРАММАТОР-2 ДЛЯ PIC-КОНТРОЛЛЕРОВ

Со временем появилась необходимость в программировании 14-ти и 40-ка «пиновых» пиков. Решил сделать программатор для всего среднего семейства PIC-ов. Схема та же, только добавились две панельки. Всё это разместилось в корпусе от бывшего мультиметра.

В печатную плату 13 февраля 2014 года внесено исправление: от 5-го контакта разъёма RS232 дорожка идет к минусу питания (а на прежней — к 6-ой ножке микросхемы МАХ). Новая печатка в «programer2-2».

Можно сэкономить одну КРЕН-ку. Т.е. подключать от одного 5-ти вольтного стабилизатора всю схему. VR3 и С9 не устанавливать, а поставить перемычку (на схеме указана пунктиром). Но я пока КРЕНку не выпаивал. Многократно программировал PIC16F676, 628А, 84А и 873А.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Но еще не пробовал 877.

Некоторые конденсаторы установлены со стороны печатных проводников. КРЕНки располагаются в горизонтальном положении. Чтобы не прокладывать проводники, я установил С7 – 2шт и R12 – 3шт.

Очень важно: корпус разъёма RS232 должен быть соединен с минусом питания.

Блок питания (15 В) и программы используются те же, что и в первом варианте.

Список радиоэлементов
ОбозначениеТипНоминалКоличествоПримечаниеМагазинМой блокнот
Схема 1

DD1ИС RS-232 интерфейса

MAX232E

1MAX232CPEВ блокнот

VT1-VT4Биполярный транзистор

2N3904

4TO-92В блокнот

VDS1Диодный мост

DB157

1В блокнот

VD1Выпрямительный диод

1N4148

1В блокнот

VR1, VR3Линейный регулятор

L7805AB

1В блокнот

VR2Линейный регулятор

KA78R12C

1В блокнот

С1470 мкФ 35В1В блокнот

С2, С3, С5, С6Электролитический конденсатор10 мкФ 50В4В блокнот

С4, С8Электролитический конденсатор470 мкФ 16В2В блокнот

С7Электролитический конденсатор1 мкФ 25В1В блокнот

С11Конденсатор0.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC 1 мФ1В блокнот

R1, R7Резистор

10 кОм

2В блокнот

R2Резистор

470 Ом

1В блокнот

R3, R5, R11Резистор

4.7 кОм

3В блокнот

R4, R10Резистор

2 кОм

2В блокнот

R6, R8, R9Резистор

1 кОм

3В блокнот

R12Резистор

240 Ом

1В блокнот

HL1Светодиод1КрасныйВ блокнот

HL2Светодиод1ЗеленыйВ блокнот

Схема 2

DD1ИС RS-232 интерфейса

MAX232E

1MAX232CPEВ блокнот

VT1-VT4Биполярный транзистор

2N3904

4TO-92В блокнот

VDS1Диодный мост

DB157

1В блокнот

VD1Выпрямительный диод

1N4148

1В блокнот

VR1, VR3Линейный регулятор

L7805AB

2В блокнот

VR2Линейный регулятор

KA78R12C

1В блокнот

C1, C2, C4, C5Конденсатор10мкФ 50В4В блокнот

C3Электролитический конденсатор470мкФ 35В1В блокнот

C6, C9Электролитический конденсатор470мкФ 16В2В блокнот

C7.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC 1-C7.3Конденсатор0.1 мкФ3

Однажды я решил собрать несложный LC-метр на pic16f628a и естественно его надо было чем-то прошить. Раньше у меня был компьютер с физическим com-портом, но сейчас в моём распоряжении только usb и плата pci-lpt-2com. Для начала я собрал простой JDM программатор, но как оказалось ни с платой pci-lpt-com, ни с usb-com переходником он работать не захотел (низкое напряжение сигналов RS-232). Тогда я бросился искать usb программаторы pic, но там, как оказалось всё ограничено использованием дорогих pic18f2550/4550, которых у меня естественно не было, да и жалко такие дорогие МК использовать, если на пиках я очень редко что-то делаю (предпочитаю авр-ы, их прошить проблем не составляет, они намного дешевле, да и программы писать мне кажется, на них проще). Долго копавшись на просторах интернета в одной из множества статей про программатор EXTRA-PIC и его всевозможные варианты один из авторов написал, что extrapic работает с любыми com-портами и даже переходником usb-com.

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

Я подумал, если использовать usb адаптер, то будет очень глупо делать два раза преобразование уровней usb в usart TTL, TTL в RS232, RS232 обратно в TTL, если можно просто взять TTL сигналы порта RS232 из микросхемы usb-usart преобразователя.

Так и сделал. Взял микросхему Ch440G (в которой есть все 8 сигналов com-порта) и подключил её вместо max232. И вот что получилось.

В моей схеме есть перемычка jp1, которой нет в экстрапике, её я поставил потому что, не знал, как себя поведёт вывод TX на ТТЛ уровне, поэтому сделал возможность его инвертировать на оставшемся свободном элементе И-НЕ и не прогадал, как оказалось, напрямую на выводе TX логическая единица, и поэтому на выводе VPP при включении присутствует 12 вольт, а при программировании ничего не будет (хотя можно инвертировать TX программно).Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC

После сборки платы пришло время испытаний. И тут настало главное разочарование. Программатор определился сразу (программой ic-prog) и заработал, но очень медленно! В принципе — ожидаемо. Тогда в настройках com порта я выставил максимальную скорость (128 килобод) начал испытания всех найденных программ для JDM. В итоге, самой быстрой оказалась PicPgm. Мой pic16f628a прошивался полностью (hex, eeprom и config) плюс верификация где-то 4-6 минут (причём чтение идёт медленнее записи). IcProg тоже работает, но медленнее. Ошибок про программировании не возникло. Также я попробовал прошить eeprom 24с08, результат тот же — всё шьёт, но очень медленно.

Выводы: программатор достаточно простой, в нём нет дорогостоящих деталей (Ch440 — 0.3-0.5$ , к1533ла3 можно вообще найти среди радиохлама), работает на любом компьютере, ноутбуке (и даже можно использовать планшеты на windows 8/10). Минусы: он очень медленный. Также он требует внешнее питание для сигнала VPP. В итоге, как мне показалось, для нечастой прошивки пиков — это несложный для повторения и недорогой вариант для тех, у кого нет под рукой древнего компьютера с нужными портами.

Вот фото готового девайса:

Как поётся в песне «я его слепила из того, что было». Набор деталей самый разнообразный: и smd, и DIP.

Для тех, кто рискнёт повторить схему, в качестве usb-uart конвертера подойдёт почти любой (ft232, pl2303, cp2101 и др), вместо к1533ла3 подойдёт к555, думаю даже к155 серия или зарубежный аналог 74als00, возможно даже будет работать с логическими НЕ элементами типа к1533лн1. Прилагаю свою печатную плату, но разводка там под те элементы, что были в наличии, каждый может перерисовать под себя.

Список радиоэлементов
ОбозначениеТипНоминалКоличествоПримечаниеМагазинМой блокнот
IC1МикросхемаCh440G1В блокнот

IC2МикросхемаК1533ЛА31В блокнот

VR1Линейный регулятор

LM7812

1В блокнот

VR2Линейный регулятор

LM7805

1В блокнот

VT1Биполярный транзистор

КТ502Е

1В блокнот

VT2Биполярный транзистор

КТ3102Е

1В блокнот

VD1-VD3Выпрямительный диод

1N4148

2В блокнот

C1, C2, C5-C7Конденсатор100 нФ5В блокнот

C3, C4Конденсатор22 пФ2В блокнот

HL1-HL4СветодиодЛюбой4В блокнот

R1, R3, R4Резистор

1 кОм

3

Итак, пришло время изучать микроконтроллеры, а потом и их программировать, а так же хотелось собирать устройства на них, схем которых сейчас в интернете ну просто море.Pic jdm программатор: JDM программатор микроконтроллеров Microchip PIC Ну нашли схему, купили контроллер, скачали прошивку….а прошивать то чем??? И тут перед радиолюбителем, начинающим осваивать микроконтроллеры, встает вопрос – выбор программатора! Хотелось бы найти оптимальный вариант, по показателю универсальность — простота схемы — надёжность. «Фирменные» программаторы и их аналоги были сразу исключены в связи с довольно сложной схемой, включающей в себя те же микроконтроллеры, которые необходимо программировать. То есть получается «замкнутый круг»: что бы изготовить программатор, необходим программатор. Вот и начались поиски и эксперименты! В начале выбор пал на PIC JDM. Работает данный программатор от com порта и питается от туда же. Был опробован данный вариант, уверенно запрограммировал 4 из 10 контроллеров, при питании отдельном ситуация улучшилась, но не на много, на некоторых компьютерах он вообще отказался что либо делать да и защиты от «дурака» в нем не предусмотрено. Далее был изучен программатор Pony-Prog. В принципе, почти тоже самое что и JDM.Программатор «Pony-prog», представляет очень простую схему, с питанием от ком-порта компьютера, в связи с чем, на форумах, в Интернете, очень часто появляются вопросы по сбоям при программировании того, или иного микроконтроллера. В результате, выбор был остановлен на модели «Extra-PIC». Посмотрел схему – очень просто, грамотно! На входе стоит MAX 232 преобразующая сигналы последовательного порта RS-232 в сигналы, пригодные для использования в цифровых схемах с уровнями ТТЛ или КМОП, не перегружает по току COM-порт компьютера, так как использует стандарт эксплуатации RS232, не представляет опасности для COM-порта.Вот первый плюс!
Работоспособен с любыми COM-портами, как стандартными (±12v; ±10v) так и с нестандартными COM-портами некоторых моделей современных ноутбуков, имеющих пониженные напряжения сигнальных линий, вплоть до ±5v – еще плюс! Поддерживается распространёнными программами IC-PROG, PonyProg, WinPic 800 (WinPic800) и другими – третий плюс!
И питается это все от своего собственного источника питания!
Было решено – надо собирать! Так в журнале Радио 2007 №8 был найден доработанный вариант этого программатора. Он позволял программировать микроконтроллеры в двух режимах.
Известны два способа перевода микроконтроллеров PICmicro в режим программирования:
1.При включённом напряжении питания Vcc поднять напряжение Vpp (на выводе -MCLR) от нуля до 12В
2.При выключенном напряжении Vcc поднять напряжение Vpp от нуля до 12В, затем включить напряжение Vcc
Первый режим — в основном для приборов ранних разработок, он накладывает ограничения на конфигурацию вывода -MCLR, который в этом случае может служить только входом сигнала начальной установки, а во многих микроконтроллерах предусмотрена возможность превратить этот вывод в обычную линию одного из портов. Это еще один плюс данного программатора. Схема его приведена ниже:

Крупнее
Все было собрано на макетке и опробовано. Все прекрасно и устойчиво работает, глюков замечено небыло!
Была отрисована печатка для этого программатора.
depositfiles.com/files/mk49uejin
все было собрано в открытый корпус, фото которого ниже.

Соединительный кабель был изготовлен самостоятельно из отрезка восьмижильного кабеля и стандартных комовских разьемах, никакие нуль модемные тут не прокатят, предупреждаю сразу! К сборке кабеля следует отнестись внимательно, сразу избавитесь от головной боли в дальнейшем. Длина кабеля должна быть не более полутора метров.
Фото кабеля

Итак, программатор собран, кабель тоже, наступил черед проверки всего этого хозяйства на предмет работоспособности, поиск глюков и ошибок.
Сперва наперво устанавливаем программу IC-prog, которую можно скачать на сайте разработчика www.ic-prog.com, Распакуйте программу в отдельный каталог. В образовавшемся каталое должны находиться три файла:
icprog.exe — файл оболочки программатора.
icprog.sys — драйвер, необходимый для работы под Windows NT, 2000, XP. Этот файл всегда должен находиться в каталоге программы.
icprog.chm — файл помощи (Help file).
Установили, теперь надо бы ее настроить.
Для этого:
1.(Только для Windows XP): Правой кнопкой щёлкните на файле icprog.exe. «Свойства» >> вкладка «Совместимость» >> Установите «галочку» на «Запустить программу в режиме совместимости с:» >>выберите «Windows 2000».
2.Запустите файл icprog.exe. Выберите «Settings» >> «Options» >> вкладку «Language» >> установите язык «Russian» и нажмите «Ok».
Согласитесь с утверждением «You need to restart IC-Prog now» (нажмите «Ok»). Оболочка программатора перезапустится.
Настройки» >> «Программатор

1.Проверьте установки, выберите используемый вами COM-порт, нажмите „Ok“.
2.Далее, „Настройки“ >> „Опции“ >> выберите вкладку „Общие“ >> установите „галочку“ на пункте „Вкл. NT/2000/XP драйвер“ >> Нажмите „Ok“ >> если драйвер до этого не был устновлен на вашей системе, в появившемся окне „Confirm“ нажмите „Ok“. Драйвер установится, и оболочка программатора перезапустится.
Примечание:
Для очень „быстрых“ компьютеров возможно потребуется увеличить параметр „Задержка Ввода/Вывода“. Увеличение этого параметра увеличивает надёжность программирования, однако, увеличивается и время, затрачиваемое на программирование микросхемы.
3.»Настройки» >> «Опции» >> выберите вкладку «I2C» >> установите «галочки» на пунктах: «Включить MCLR как VCC» и «Включить запись блоками». Нажмите «Ok».
4.«Настройки» >> «Опции» >> выберите вкладку «Программирование» >> снимите «галочку» с пункта: «Проверка после программирования» и установите «галочку» на пункте «Проверка при программировании». Нажмите «Ok».
Вот и настроили!
Теперь бы нам протестировать программатор в месте с IC-prog. И тут все просто:
Далее, в программе IC-PROG, в меню, запустите: Настройки >> Тест Программатора

Перед выполнением каждого пункта методики тестирвания, не забывайте устанавливать все «поля» в исходное положение (все «галочки» сняты), как показано на рисунке выше.
1.Установите «галочку» в поле «Вкл. Выход Данных», при этом, в поле «Вход Данных» должна появляться «галочка», а на контакте (DATA) разъёма X2, должен установиться уровень лог. «1» (не менее +3,0 вольт). Теперь, замкните между собой контакт (DATA) и контакт (GND) разъёма X2, при этом, отметка в поле «Вход Данных» должна пропадать, пока контакты замкнуты.
2.При установке «галочки» в поле «Вкл. Тактирования», на контакте (CLOCK) разъёма X2, должен устанавливаться уровень лог. «1». (не менее +3,0 вольт).
3.При установке «галочки» в поле «Вкл. Сброс (MCLR)», на контакте (VPP) разъёма X3, должен устанавливаться уровень +13,0… +14,0 вольт, и светиться светодиод D4 (обычно красного цвета).Если переключатель режимов поставить в положение 1 то будет светится светодиод HL3
Если при тестировании, какой-либо сигнал не проходит, следует тщательно проверить весь путь прохождения этого сигнала, включая кабель соединения с COM-портом компьютера.

Тестирование канала данных программатора EXTRAPIC:
1. 13 вывод микросхемы DA1: напряжение от -5 до -12 вольт. При установке «галочки»: от +5 до +12 вольт.
2. 12 вывод микросхемы Da1: напряжение +5 вольт. При установке «галочки»: 0 вольт.
3. 6 вывод микросхемы DD1: напряжение 0 вольт. При установке «галочки»: +5 вольт.
3. 1 и 2 вывод микросхемы DD1: напряжение 0 вольт. При установке «галочки»: +5 вольт.
4. 3 вывод микросхемы DD1: напряжение +5 вольт. При установке «галочки»: 0 вольт.
5. 14 вывод микросхемы DA1: напряжение от -5 до -12 вольт. При установке «галочки»: от +5 до +12 вольт.
Если все тестирование прошло успешно, то программатор готов к эксплуатации.
Для подключения микроконтроллера к программатору можно использовать подходящие панельки или же сделать адаптер на основе ZIF панельки (с нулевым усилием прижатия), например как здесь radiokot.ru/circuit/digital/pcmod/18/.
Теперь несколько слов про ICSP — Внутрисхемное программирование
PIC-контроллеров.
При использовании ICSP на плате устройства следует предусмотреть возможность подключения программатора. При программировании с использованием ICSP к программатору должны быть подключены 5 сигнальных линий:
1. GND (VSS) — общий провод.
2. VDD (VCC) — плюс напряжение питания
3. MCLR» (VPP)- вход сброса микроконтроллера / вход напряжения программирования
4. RB7 (DATA) — двунаправленная шина данных в режиме программирования
5. RB6 (CLOCK) Вход синхронизации в режиме программирования
Остальные выводы микроконтроллера не используются в режиме внутрисхемного программирования.
Вариант подключения ICSP к микроконтроллеру PIC16F84 в корпусе DIP18:

1.Линия MCLR» развязывается от схемы устройства перемычкой J2, которая в режиме внутрисхемного программирования (ICSP) размыкается, передавая вывод MCLR в монопольное управление программатору.
2.Линия VDD в режиме программирования ICSP отключается от схемы устройства перемычкой J1. Это необходимо для исключения потребления тока от линии VDD схемой устройства.
3.Линия RB7 (двунаправленная шина данных в режиме программирования) изолируется по току от схемы устройства резистором R1 номиналом не менее 1 кОм. В связи с этим максимальный втекающий/стекающий ток, обеспечиваемый этой линией будет ограничен резистором R1. При необходимости обеспечить максимальный ток, резистор R1 необходимо заменить (как в случае c VDD) перемычкой.
4.Линия RB6 (Вход синхронизации PIC в режиме программирования) так же как и RB7 изолируется по току от схемы устройства резистором R2, номиналом не менее 1 кОм. В связи с этим максимальный втекающий/стекающий ток, обеспечиваемый этой линией будет ограничен резистором R2. При необходимости обеспечить максимальный ток, резистор R2 необходимо заменить (как в случае с VDD) перемычкой.
Расположение выводов ICSP у PIC-контроллеров:

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

Теперь рассмотрим прошивку микроконтроллера в программе IC-prog. Будем рассматривать на примере конструкции вот от сюда rgb73.mylivepage.ru/wiki/1952/579
Вот схема устройства

вот прошивка
Прошиваем контроллер PIC12F629. Данный микроконтроллер для своей работы использует константу osccal — представляет собой 16-ти ричное значение калибровки внутреннего генератора МК, с помощью которого МК отчитывает время при выполнении своих программ, которая записана в последней ячейке данных пика. Подключаем данный микроконтроллер к программатору.
Ниже на сриншоте красными цифрами показана последовательность действий в программе IC-prog.

1. Выбрать тип микроконтроллера
2. Нажать кнопку «Читать микросхему»
В окне «Программный код» в самой последней ячейке будет наша константа для данного контроллера. Для каждого контроллера константа своя!

Не сотрите ее, запишите на бумажку и наклейте ее на микросхему!

Идем далее

3. Нажимаем кнопку «Открыть файл…», выбираем нашу прошивку. В окне программного кода появится код прошивки.
4. Спускаемся к концу кода, на последней ячейке жмем правой клавишей мыши и выбираем в меню «править область», в поле «Шестнадцатеричные» вводим значение константы, которую записали, нажимаем «ОК».
5. Нажимаем «программировать микросхему».
Пойдет процесс программирования, если все прошло успешно, то программа выведет соответствующее уведомление.
Вытаскиваем микросхему из программатора и вставляем в собранный макет. Включаем питание. Нажимаем кнопку пуск.Ура работает! Вот видео работы мигалки
video.mail.ru/mail/vanek_rabota/_myvideo/1.html
С этим разобрались. А вот что делать если у нас есть файл исходного кода на ассемблере asm, а нам нужен файл прошивки hex? Тут необходим компилятор. и он есть — это Mplab, в этой программе можно как писать прошивки так и компилировать. Вот окно компилятора

Устанавливаем Mplab
Находим в установленной Mplab программу MPASMWIN.exe, обычно находится в папке — Microchip — MPASM Suite — MPASMWIN.exe
Запускаем ее. В окне (4) Browse находим наш исходник (1) .asm, в окне (5) Processor выбираем наш микроконтроллер, нажимаем Assemble и в той же папке где вы указали исходник появится ваша прошивка.HEX Вот и все готово!
Надеюсь эта статья поможет начинающим в освоении PIC контроллеров! Удачи!

Так уж сложилось, что знакомство с микроконтроллерами я начал с AVR. PIC микроконтроллеры до поры, до времени — обходил стороной. Но, все же на них тоже ведь есть уникальные, интересные для повторения, конструкции! А ведь эти микроконтроллеры тоже прошивать нужно . Эту статью пишу в основном для себя самого. Чтобы не забыть технологии, как без проблем и бессмысленных потерь времени прошить PIC микроконтроллер.

Для первой схемы — долго и упорно пытался сделать PIC программатор по найденным в интернете схемам — ничего не вышло . Стыдно, но пришлось обращаться к знакомому, чтобы прошил МК. Но ведь это не дело — постоянно бегать по знакомым! Этот же знакомый и посоветовал простенькую схему, работающую от СОМ порта. Но даже и тогда, когда я ее собрал — все равно ничего не получалось . Ведь мало собрать программатор — нужно еще под него настроить программу, которой будем прошивать. А вот как раз это у меня и не получалось. Целая туча инструкций в интернете, и мало какая мне помогла…

Тогда, мне удалось прошить один микроконтроллер. Но так как прошивал в условиях жесткого дефицита времени — не догадался сохранить хотя бы ссылку на инструкцию. И ведь не нашел ее вполедствии. Поэтому повторюсь — пишу статью, чтобы иметь свою собственную инструкцию.

Итак, программатор для PIC микроконтроллеров. Простой, хотя и не 5 проводков, как для AVR микроконтроллеров, который я использую до сих пор. Вот схема:

Вот печатная плата ().

СОМ разъем припаивается штырьками прямо на контактные площадки (главное — не запутаться с нумерацией). Второй ряд штырьков соединяется с платой маленькими перемычками (очень непонятно сказал, ага). Попробую дать фотографию… хоть она и страшная (нету у меня сейчас нормального фотоаппарата ).
Самое злобное в том — что для PIC микроконтроллеров для прошивки нужны 12 вольт. А лучше не 12, а чуточку побольше. Скажем, 13. Или 13.5 (кстати, специалисты — поправьте меня в комментариях, если ошибаюсь. Пожалуйста.). 12 вольт еще можно где-то добыть. А 13 где? Я то выходил из положения просто — брал свежезаряженный литий-полимерный аккумулятор, в котором было 12.6 вольт. Ну или вообще четырехбаночный аккумулятор, с его 16 вольтами (прошил так один PIC — без проблем).

Но я опять отвлекся. Итак — инструкция по прошивке PIC микроконтроллеров. Ищем программу WinPIC800 (к сожалению простая и популярная icprog у меня не заработала,) и настраиваем ее так, как показано на скриншоте.

После этого — открываем файл прошивки, подключаем микроконтроллер и прошиваем.

За основу предлагаемого программатора взята публикация из журнала «Радио» №2, 2004г, «Программирование современных PIC16, PIC12 на PonyProg». Это мой первый программатор, который я использовал для прошивки PIC микросхем дома. Программатор представляет собой упрощенный вариант JDM программатора, оригинальная схема имеет преобразователь RS-232 на TTL в виде микросхемы MAX232, она более универсальна, но ее «на коленке» уже не соберешь. Данная схема не имеет вообще ни одного активного компонента, не содержит дефицитных деталей и очень проста, может быть собрана без применения печатной платы.

Рис. 1: Принципиальная схема программатора.

Описание работы схемы
Схема программатора представлена на рис. 1. Резисторы по цепям CLK (тактирование), DATA (информационный), Upp (напряжение программирования) служат для ограничения протекающего тока. PIC контроллеры защищены от пробоя встроенными стабилитронами, поэтому получается некоторая совместимость TTL и RS-232 логики. В представленной схеме присутствуют диоды VD1, VD2, которые «отбирают» плюсовое напряжение от COM порта относительно 5 контакта и передают его на питание контроллера, благодаря чему в некоторых случаях удается избавиться от дополнительного источника питания.

Налаживание
На практике не всегда случается, что данный программатор заработает без налаживания, с 1-го раза, т.к. работа данной схемы сильно зависит от параметров COM порта. Однако у меня, на двух материнских платах Gigabyte 8IPE1000 и WinFast под XP все заработало сразу. Если Вам лень разбираться с неработающей, более сложной схемой программатора, то стоит попробовать собрать эту. Вот некоторые вещи, которые могут повлиять:

Чем новее мат. плата, тем разработчики уделяют этим портам меньше внимания, потому что эти порты давно стали морально устаревшими. Избавиться от этого можно, купив переходник USB-COM, правда опять же купленное устройство может не подойти. Нужные параметры таковы: изменяемое напряжение должно меняться не менее -10В до +10В (лог. 0 и 1) относительно 5-го контакта разъема. Отдааваемый ток должен быть хотя бы таким, чтобы при подключеннии резистора 2,7 кОм между 5-м контактом и исследуемым контактом напряжение не падало ниже 10В (сам таких плат не встречал). Также порт должен правильно определять напряжения, поступающие от контроллера, при уровне напряжения близкого к 0В, но не больше 2В определяется нуль, и соответственно при выше 2В определяется единица.

Также проблемы могут возникнуть из за программного обеспечения.
Особенно это касается ОС LINUX, т.к. из за наличия эмуляторов типа wine, VirtualBox порты могут работать неправильно, а возможностей от них требуется много. Этих проблем я коснусь подробнее в другой статье.

Зная эти особенности, приступим к налаживанию.
Для этого очень желательно иметь программу ICProg 1.05D.
В меню программы нужно во первых выбрать в настройках соотв. порт (COM1. COM2), выбрать JDM программатор. Затем открыть окно «Hardware Check», в меню «Settings». В этом меню нужно по очереди ставить галочки и вольтметром измерять напряжение на контактах подключенного разъема. Если параметры напряжения не соответствуют норме, то к сожалению, это может быть причиной неработоспособности, тогда придется собирать схему с преобразователем RS-232 TTL. Отметив все галочки, нужно убедиться, что на стабилитроне образуется напряжение питания около 5В. Если напряжения в норме и отсутствуют ошибки монтажа, то все должно сработать. Ставим контроллер в панельку, открываем прошивку, программируем. Галочки типа «Invert data out» включать не надо (все сняты). Также не нужно забывать, что некоторые партии контроллеров могут иметь не совсем стандартные параметры, и их прошить не получается, в таких случаях с данным программатором можно попробовать только снизить напряжение питания с 5В до 3-4В, подключив соотв. стабилитрон, посмотреть контроллер на предмет ошибочного включения режима LVP (низковольтное программирование), как предотвратить, можно прочитать в Интернете для конкретного типа контроллера. Повысить напряжение программирования проблеммного контроллера можно, наверное, только усложнив схему введением усилительного каскада с общим эмиттером, запитанного от дополнительного источника питания.

Теперь подробнее о проблеме с питанием устройства. Программатор тестировался с программами ICProg и консольным picprog под Linux, должен работать с любым, который поддерживает JDM, если подключить дополнительный источник питания (он подключается через резистор 1кОм к стабилитрону, диоды с резисторами в этом случае можно вообще исключить). Дело в том, что алгоритмы управления программаторов у отдельного софта разные, программа ICProg, является самой неприхотливой. Замечено, что в ОС Windows эта программа на неиспользуемом контакте 2 поднимала нужное напряжение питания, эта же программа под эмулятором в Linux на другой мат. плате уже не смогла этого сделать, однако выход был найден, отбирая питание из напряжения программирования. В общем, с ICProg, думаю, можно применять этот программатор без дополнительного питания. С другим софтом это гарантировать врядли получится, например, «родной» из репозиториев Ubuntu picprog без питания просто не определяет программатор, выдавая сообщение «JDM hardware not found». Вероятно, он либо принимает какие-то данные, не подавая напряжение программирования, либо делает это слишком быстро, таким образом что фильтрующий конденсатор еще не успевает зарядиться.

RCD-программатор микроконтроллеров PIC — radiohlam.ru

Когда я начал заниматься PIC-контроллерами, то, естественно, первым делом встал вопрос о выборе программатора. Поскольку фирменные программаторы дело не дешевое, да и вообще покупать программатор мне показалось не спортивным, было принято решение собрать его самостоятельно. Облазив просторы Интернета я скачал схему и собрал JDM-программатор. Он работал очень плохо: то заливал какую-то фигню, то не заливал первые несколько байт, то вообще ничего не заливал.

Существенным недостатком JDM-программатора является то, что он не может контролировать линию Vdd и, как следствие, — не может реализовать правильный алгоритм подачи напряжений при программировании. Если контроллер сконфигурирован таким образом: «Internal Oscillator», «MCLR Off», то при неправильной последовательности подачи напряжений он сначала запускается и начинает выполнять ранее зашитую в нем программу, а потом переходит в режим программирования (при этом указатель может указывать куда угодно, а не на начало памяти программ). В связи с этим: то, куда будет залита ваша программа, да и будет ли залита вообще — большой вопрос!

Намучившись с JDM-программатором, на одном из буржуйских сайтов я нашел схему программатора, в котором были исправлены эти недостатки. Этим программатором я пользуюсь по сей день и предлагаю его схему вашему вниманию:

На диодах D1…D4 и стабилитроне D6 выполнен простейший преобразователь уровней RS232->TTL. Когда на линиях DATA, CLOCK напряжение меньше 0В, то они через диоды D1, D2 подтягиваются к земле, а когда напряжение на этих линиях больше 5В, то они через диоды D3, D4 подтягиваются к питанию +5В, которое задается стабилитроном D6.

Питается этот девайс прямо от COM-порта. Стабилитроны и диоды в этой схеме вполне можно заменить отечественными: Д814Д, КС147А и т.д.

Каким образом реализуется правильный алгоритм подачи напряжений и откуда вообще берутся 13 Вольт напряжения программирования? Всё как всегда очень просто.

При инициализации порта на выходе TxD висит -10В. При этом конденсатор С1 заряжается через стабилитрон D7 (который в данном случае оказывается включён в прямом
направлении и работает в качестве диода). Т.е. напряжение на плюсовой ноге С1 относительно GND равно нулю, но относительно TxD=+10В (или сколько там у вас напряжение на выходе COM-порта).

Теперь представим, что происходит при изменении напряжения на выходе TxD с -10В до +10В. Одновременно с ростом напряжения на выводе TxD, начнёт расти и напряжение на плюсовой ноге конденсатора С1. Заряд не может слиться на землю через D7, т.к. теперь D7 включен обратно, единственный путь — утечка через PIC, но ток там мизерный. Итак, напряжение на плюсовой ноге С1 (а, следовательно и на выводе MCLR) начинает расти. В момент, когда на TxD ноль относительно земли, на конденсаторе С1 (на его плюсовой ноге, а следовательно и на MCLR) относительно земли как раз +10В. Когда на TxD +3В, — на С1 уже 3+10=13В. Вот и всё, напряжение Vpp уже подано, а на линии VDD ещё только +3В.

При дальнейшем росте напряжения на TxD, — напряжение на С1 не растёт, так как начинает работать стабилитрон D7. При росте напряжения на TxD выше +5В начинает работать стабилитрон D6.

Чтобы ограничить ток разряда конденсатора C1 через стабилитрон D7, в схему включен резистор R6, соответственно, напряжение на C1 не точно равно напряжению стабилизации, а несколько выше: UC1=Uст+IРАЗР*R6. Для подстройки напряжения программирования служит сопротивление R3. Можно поставить переменное 10КОм или подобрать постоянное, так, чтобы напряжение программирования было примерно 13 В (в устройстве, представленном на рисунке ниже, R3=1,2 кОм).

Я успешно программирую этим программатором контроллеры PIC12F629 и PIC16F628A, однако автор утверждал, что этим программатором (в представленном мной варианте) можно программировать PIC12F508 , PIC12F509 , PIC12F629 , PIC12F635, PIC12F675, PIC12F683 , PIC16F627A , PIC16F628A , PIC16F648A. Кроме этих, на сайте автора feng3.cool.ne.jp есть модификации программатора для других PIC-контроллеров.

Готовые девайсы:

Вариант программатора от Mixer:

Программу IC-prog 1.05D, для прошивки контроллеров, можно скачать в разделе софт. При прошивке выбрать тип программатора JDM. Включить контроль Vcc для JDM. При использовании совместно с операционными системами Windows 2000/NT/XP — выбрать интерфейс Windows API и включить галочку «Enable NT/2000/XP driver», в остальных случаях используйте интерфейс Direct I/O.

Еще одно. Господа, сохраняйте пожалуйста при прошивке калибровочные биты или потом не жалуйтесь, что на внутреннем генераторе нестабильно работает/не работает!!!

Скачать печатную плату (AutoCAD2000i)

Скачать печатную плату от Mixer (DipTrace 2.0)

Как сделать свой вариант JDM-программатора для PIC-контроллеров

Если лень или некогда собирать — Вы можете заказать недорогой универсальный программатор прямо у нас на сайте

JDM программатор PIC · Κυλλήνη

Недавно появилась необходимость прошить один-два контроллера PIC16F84, в связи с чем начаты поиски программатора попроще. И такой был найден, а потом и собран – JDM PIC programmer.

Использовались материалы:

Была использована принципиальная схема

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

Схема программатора JDM PIC

Список компонентов
R11.5KΩ
R210KΩ
C1, C2100µF 16V
LED15mm LED
D1, D2, D5, D61N4148
D36.2V Zener
D45.1V Zener
Q3, Q4BC817-40 NPN transistor
X1DB9 female connector

Схема была повторена в Eagle, разведена в TopoR Lite, после чего импортирована обратно в Eagle для окончательной обработки.

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

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

Сама винда должна еще быть правильно настроена под JDM-программатор. Должен быть отключен буфер FIFO используемого COM-порта:
Диспетчер устройств → Порты(COM и LPT) → N Порт (N-номер используемого с программатором порта) → Параметры порта → Дополнительно — убрать галку «Использовать буферы FIFO» и после перезагрузить компьютер (чтобы изменения вступили в силу).

В качестве памятки при прошивке я использую эту картинку:

Распиновка контроллеров PIC. Изображение с сайта drive2.ru

Скачать архив PIC_JDM.zip.
Внутри файлы проектов для EagleCAD и TopoR, модель для SketchUp. Там же pdf-шаблоны для травления печатной платы, создания паяльной маски и шелкографии.

Платы расширения для программатора jdm. Простейший программатор JDM для PIC на пассивных компонентах

Однажды я решил собрать несложный LC-метр на pic16f628a и естественно его надо было чем-то прошить. Раньше у меня был компьютер с физическим com-портом, но сейчас в моём распоряжении только usb и плата pci-lpt-2com. Для начала я собрал простой JDM программатор, но как оказалось ни с платой pci-lpt-com, ни с usb-com переходником он работать не захотел (низкое напряжение сигналов RS-232). Тогда я бросился искать usb программаторы pic, но там, как оказалось всё ограничено использованием дорогих pic18f2550/4550, которых у меня естественно не было, да и жалко такие дорогие МК использовать, если на пиках я очень редко что-то делаю (предпочитаю авр-ы, их прошить проблем не составляет, они намного дешевле, да и программы писать мне кажется, на них проще). Долго копавшись на просторах интернета в одной из множества статей про программатор EXTRA-PIC и его всевозможные варианты один из авторов написал, что extrapic работает с любыми com-портами и даже переходником usb-com.

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

Я подумал, если использовать usb адаптер, то будет очень глупо делать два раза преобразование уровней usb в usart TTL, TTL в RS232, RS232 обратно в TTL, если можно просто взять TTL сигналы порта RS232 из микросхемы usb-usart преобразователя.

Так и сделал. Взял микросхему Ch440G (в которой есть все 8 сигналов com-порта) и подключил её вместо max232. И вот что получилось.

В моей схеме есть перемычка jp1, которой нет в экстрапике, её я поставил потому что, не знал, как себя поведёт вывод TX на ТТЛ уровне, поэтому сделал возможность его инвертировать на оставшемся свободном элементе И-НЕ и не прогадал, как оказалось, напрямую на выводе TX логическая единица, и поэтому на выводе VPP при включении присутствует 12 вольт, а при программировании ничего не будет (хотя можно инвертировать TX программно).

После сборки платы пришло время испытаний. И тут настало главное разочарование. Программатор определился сразу (программой ic-prog) и заработал, но очень медленно! В принципе — ожидаемо. Тогда в настройках com порта я выставил максимальную скорость (128 килобод) начал испытания всех найденных программ для JDM. В итоге, самой быстрой оказалась PicPgm. Мой pic16f628a прошивался полностью (hex, eeprom и config) плюс верификация где-то 4-6 минут (причём чтение идёт медленнее записи). IcProg тоже работает, но медленнее. Ошибок про программировании не возникло. Также я попробовал прошить eeprom 24с08, результат тот же — всё шьёт, но очень медленно.

Выводы: программатор достаточно простой, в нём нет дорогостоящих деталей (Ch440 — 0.3-0.5$ , к1533ла3 можно вообще найти среди радиохлама), работает на любом компьютере, ноутбуке (и даже можно использовать планшеты на windows 8/10). Минусы: он очень медленный. Также он требует внешнее питание для сигнала VPP. В итоге, как мне показалось, для нечастой прошивки пиков — это несложный для повторения и недорогой вариант для тех, у кого нет под рукой древнего компьютера с нужными портами.

Вот фото готового девайса:

Как поётся в песне «я его слепила из того, что было». Набор деталей самый разнообразный: и smd, и DIP.

Для тех, кто рискнёт повторить схему, в качестве usb-uart конвертера подойдёт почти любой (ft232, pl2303, cp2101 и др), вместо к1533ла3 подойдёт к555, думаю даже к155 серия или зарубежный аналог 74als00, возможно даже будет работать с логическими НЕ элементами типа к1533лн1. Прилагаю свою печатную плату, но разводка там под те элементы, что были в наличии, каждый может перерисовать под себя.

Список радиоэлементов
ОбозначениеТипНоминалКоличествоПримечаниеМагазинМой блокнот
IC1МикросхемаCh440G1В блокнот

IC2МикросхемаК1533ЛА31В блокнот

VR1Линейный регулятор

LM7812

1В блокнот

VR2Линейный регулятор

LM7805

1В блокнот

VT1Биполярный транзистор

КТ502Е

1В блокнот

VT2Биполярный транзистор

КТ3102Е

1В блокнот

VD1-VD3Выпрямительный диод

1N4148

2В блокнот

C1, C2, C5-C7Конденсатор100 нФ5В блокнот

C3, C4Конденсатор22 пФ2В блокнот

HL1-HL4СветодиодЛюбой4В блокнот

R1, R3, R4Резистор

1 кОм

3

В качестве элементарного программатора предлагаем вам собрать по авторской схеме JDM совместимый программатор, который мы назвали NTV программатор. Ниже схема NTV программатора (используется розетка DB9; не путать с вилкой).

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

Данный программатор НЕ РАБОТАЕТ при подключении к ноутбукам, т.к. уровни сигналов интерфейса RS-232 (COM-порт) в мобильных системах занижены. Также он может не работать на современных ПК, где аппаратно экономится ток на порту. Так что не обессудьте, собирайте и проверяйте на всех попавшихся под руку компьютерах.

Конструктивно плата программатора вставляется между контактами разъема DB-9, которые подпаиваются к контактным площадкам печатной платы. Ниже рисунок платы и фотография собранного программатора.

Для полноты информации следует сказать, что есть еще один подобный программатор, который я собирал под микроконтроллеры в 8 выводном корпусе ( и ). Программатор также великолепно работает и с этими микроконроллерами. Ниже рисунок платы и фотографии.

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

Принципиальная схема программатора для pic контроллеров:

Питание на саму схему не требуется, ведь для этого служит COM порт компьютера, через который и осуществляется управление прошивкой микроконтроллера. Для низковольтного режима программирования вполне достаточно 5в, но могут быть не доступны все опции для изменения (фьюзы). Разъем подключения COM-9 порта смонтировал прямо на печатную плату программатора для PIC — получилось очень удобно.

Можно воткнуть плату без лишних шнуров прямо в порт. опробован на различных компьютерах и при программировании МК серий 12F,16F и 18F, показал высокое качество прошивки. Предложенная схема позволяет программировать микроконтроллеры PIC12F509, PIC16F84A, PIC16F628. Например недавно с помощью предложенного программатора успешно был прошит микроконтроллер для .

Для программирования используется WinPic800 — одна из лучших программ для программирования PIC контроллеров. Программа позволяет выполнять операции для микроконтроллеров семейства PIC: чтения, записи, стирания, проверки FLASH и EEPROM памяти и установку битов конфигураций.

Быстро собрать понравившуюся схему на микроконтроллере для многих радиолюбителей — не проблема. Но многие начинающие работать с микроконтроллерами сталкиваются с вопросом — как его запрограммировать. Одним из самых простых вариантов программаторов является JDM программатор.

Программа — программатор ProgCode v 1.0

Эта программа работает в WindowsXP. Позволяет программировать PIC контроллеры среднего семейства(PIC16Fxxx) через COM порт компьютера. Индикатор подключения программатора(в правом верхнем углу окна) при отсутствии программатора на выбранном в настройках порту окрашивается в красный цвет. Если программатор подключен — программа обнаруживает его и индикатор в правом верхнем углу принимает вид, который показан на рисунке 1.

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

Рисунок (скриншот программы ProgCode v1.0)

Если в программу загружается HEX файл, то желательно перед этим выбрать в списке контроллеров тот МК, для которого расчитана загружаемая прошивка. Если этого не сделать, то файл, расчитанный на микроконтроллер с памятью большего размера чем выбран в списке, будет обрезан и части программы потеряна — при таком варианте загрузки файла выводится предупреждение.


Если этого не произошло, то выбрать нужный контроллер можно и после загрузки файла в программу.

Формат файлов SFR

В программаторе ProgCode поддержана работа с собственным форматом файлов. Эти файлы имеют расширение.SFR и позволяют хранить дополнительную информацию о программе, предназначенной для микроконтроллера. В таком файле сохраняется информация о типе микроконтроллера. Это позволяет при загрузке файла формата SFR не беспокоится о предварительном выборе типа МК в настройках.

Настройки порта и протокола при подключении программатора

После установки программы — по умолчанию выставлены все настройки, которые необходимы для работы программатора со схемой JDM, приведённой на этой странице.

Инверсия сигнала в приведённой схеме нужна только для выхода OutData, так как в этой цепи сигнал инвертирован согласующим транзистором. На всех остальных выводах инверсия отключена.

Задержка импульса может быть равна 0. Её регулировка предусмотрена для «особо трудных» экземпляров контроллеров, которые не удаётся прошить. То же самое относится и к надбавке к паузе при записи — по умолчанию она нулевая. Если увеличить значения этих настроек, время программирования контроллера значительно увеличится.

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

Выбор скорости порта — скорость может быть любой. Для JDM программатора этот параметр не имеет значения.

В WindowsXP применяется буферизирование передаваемой через порты COM информации. Это так называемые буфера FIFO. Чтобы избежать ошибок при программировании через JDM этот механизм необходимо отключить. Сделать это можно в диспетчере устройств Windows.

Заходим в панель управления, затем:

Администрирование — управление компьютером — диспетчер устройств

Затем выбираем порт, на который подключен JDM программатор(например COM1) — смотрим свойства — вкладка параметры порта — дополнительно. И снимаем галочку на пункте «Использовать буферы FIFO»

Рисунок — Настройка COM порта для работы с JDM программатором

После этого перезагружаем компьютер.

Обозреватель локальных проектов

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

Любой файл при двойном клике по нему в панели обозревателя откроется в самой программе — это относится к рисункам, html файлам, doc, rtf, djvu(при установленных плагинах), pdf, txt, asm. Файл возможно так-же открыть двойным кликом в обозревателе с помощью внешней программы, установленной на компьютере. Для этого расширение нужного типа файлов необходимо прописать в списке «Ассоциации файлов». Если путь к открывающей программе не указывать — Windows откроет файл в программе по умолчанию(это удобно для открытия архивов, которые не всегда однозначно открываются). Если путь к открывающей программе указан в списке — файл откроется в указанной программе. Удобно просматривать таким образом файлы типа SPL, LAY, DSN.

Рисунок (скриншот обозревателя программы ProgCode v1.0)

Вот так выглядит окно с настройками ассоциаций файлов:

Обозреватель проектов в интернете

Обозреватель проектов в интернете так-же как и локальный обозрватель проектов позволяет быстро перейти на нужный сайт в интернете парой кликов, просмотреть проект и при необходимости сразу прошить программу в МК.


При обзоре проектов в интернете если на странице проекта есть ссылка на файл с расширением SFR(это формат файлов программы ProgCode), то такой файл при клике по нему откроется в новой вкладке программы и сразу готов к прошивке в микроконтроллер.

Список ссылок можно редактировать воспользовавшись кнопкой «Изменить». При этом откроется окно редактирования списка ссылок:

Описание процесса программирования микросхем

Большинство современных микросхем содержит флэш-память, которая программируется посредством протокола I2C или подобных протоколов.

Перезаписываемая память есть в PIC , AVR и других контроллерах, микросхемах памяти типа 24Cxx, и подобных им, различных картах памяти типа MMC и SD, обычных флэш USB картах, которые подключаются к компьютеру через USB разъём.

Рассмотрим запись информации во флэш память микроконтроллера
PIC
16
F
628
A

Есть 2 линии
DATA
и
CLOCK
, по которым передаётся
информация. Линия
CLOCK
служит для подачи тактовых импульсов, а линия
DATA
для передачи информации.

Чтобы передать в микроконтроллер 1 бит информации, необходимо выставить 0 или 1(в зависимости от значения бита) на линии данных(DATA
) и создать спад напряжения (переход от 1 к 0) на линии тактирования(CLOCK
).
Один бит для контроллера – маловато. Он ждёт вдогонку ещё пять, чтобы воспринять эту посылку из 6-ти бит как команду. Контроллеру очень нравятся команды, а состоять они должны именно из 6-ти бит – такова уж природа у PIC
16.
Вот список и значение команд, которые PIC
способен понять. Команд не так уж и много – словарный запас у этого контроллера невелик, но не надо думать, что он совсем глуп – бывают устройства и с меньшим количеством команд

«LoadConfiguration
» 000000 — Загрузка конфигурации

«LoadDataForDataMemory
» — 000011 — Загрузка данных в память данных(EEPROM
)
«IncrementAddress
» 000110 — Увеличение адреса PC
МК
«ReadDataFromProgramMemory
» 000100 — Чтение данных из памяти программ
«ReadDataFromDataMemory
» 000101 — Чтение данных из памяти данных(EEPROM
)
«BeginProgrammingOnlyCycle
» 011000 — Начать цикл программирования
«BulkEraseProgramMemory
» 001001 — Полное стирание памяти программ
«BulkEraseDataMemory
» 001011 — Полное стирание памяти данных(EEPROM
)

Реагирует контроллер на эти команды по-разному. По-разному после выдачи команды нужно и продолжать с ним разговор.
Для того чтобы начать полноценный процесс программирования необходимо ещё подать напряжение 12 вольт на вывод MCLR
контроллера, после этого подать на него напряжение питания. Именно в такой последовательности подачи напряжений есть определённый смысл. После подачи питания, если PIC
сконфигурирован на работу от внутреннего RC
генератора, он может начать выполнение собственной программы, что при программировании вещь недопустимая, так как неизбежен сбой.
Предварительная подача 12-ти вольт на MCLR
позволяет избежать такого развития событий.
При записи информации во флэш память программ МК после команды

«LoadDataForProgramMemory
» 000010 — Загрузка данных в память программ

необходимо отправить в контроллер сами данные — 16 бит,
которые выглядят так:

“0xxxxxxxxxxxxxx
0”.

Крестики в этом слове – это сами данные, а нули по краям отправляются как обрамление – это стандарт для PIC
16. Значащих битов в слове всего 14. У этой серии контроллеров 14-ти битный формат представления команд.
После окончания передачи слова с данными PIC
ждёт следующую команду.
Так как нашей целью является запись слова в память программ МК, следующей командой должна быть команда

«BeginEraseProgrammingCycle» 001000 — Начать цикл программирования

Получив её, контроллер отключается от внешнего мира на 6 миллисекунд, которые нужны ему, чтобы завершить процесс записи.

Сигналы на выводах микроконтроллера формируются компьютером при помощи специальных программ — программаторов. Для передачи сигнала могут служить порты COM, LPT или USB. C JDM программатором работают такие программы как PonyProg, IsProg, WinPic800.


Схема JDM программатора

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

Рисунок (схема JDM программатора)

Одним из вопросов при подключении программатора к компьютеру является вопрос — как обеспечить селективную развязку. Чтобы в случае неисправности в схеме избежать повреждения COM порта. В некоторых схемах применяется микросхема MAX232, которая обеспечивает селективную развязку и согласует уровни сигналов. В этой схеме вопрос решён проще — с помощью применения батарейного питания. Уровень сигнала, поступающего от компьютера ограничивается стабилитронами VD1, VD2, и VD3. Несмотря на простоту схемы JDM программатора с его помощью можно запрограммировать большинство типов PIC микроконтроллеров.

Перемычка между выводами COM6(DSR) и COM7(RTS) предназначена для того, чтобы программа могла определить, что программатор подключен к компьютеру.

Поключение выходов программатора к конкретному МК зависит от типа МК. Часто на плату программатора монтируют несколько панелек, которые расчитаны на определённый тип контроллеров.

В таблице приведено назначение ножек некоторых типов МК при программировании.

Такое же расположение выводов, предназначенных для программирования, имеют МК PIC16F84, PIC16F84A.


Назначение выводов для микроконтроллеров серии PIC16Fxxx в зависимости от типа корпуса в большинстве случаев является стандартным, но если возникает сомнения на этот счёт, то надёжнее всего свериться с даташитом на конкретный экземпляр МК. Часть документации присутствует на русском сайте
http://microchip.ru Полное же собрание даташитов и другой документации находится на сайте производителя PIC микроконтроллеров:
http://microchip.com

Индекс проектов

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

При необходимости прошить контроллер выбранной прошивкой — кликаем мышкой на файл формата SFR, к примеру Timer_a.sfr

Программа загружает файл с сервера в новую вкладку.

После этого остаётся только вставить МК в панельку программатора, если это ещё не сделано, и нажать на кнопку «Записать всё».

Программа записывается в МК. После этого контроллер вставляется в плату устройства и устройство готово к работе.

За основу предлагаемого программатора взята публикация из журнала «Радио» №2, 2004г, «Программирование современных PIC16, PIC12 на PonyProg». Это мой первый программатор, который я использовал для прошивки PIC микросхем дома. Программатор представляет собой упрощенный вариант JDM программатора, оригинальная схема имеет преобразователь RS-232 на TTL в виде микросхемы MAX232, она более универсальна, но ее «на коленке» уже не соберешь. Данная схема не имеет вообще ни одного активного компонента, не содержит дефицитных деталей и очень проста, может быть собрана без применения печатной платы.

Рис. 1: Принципиальная схема программатора.

Описание работы схемы
Схема программатора представлена на рис. 1. Резисторы по цепям CLK (тактирование), DATA (информационный), Upp (напряжение программирования) служат для ограничения протекающего тока. PIC контроллеры защищены от пробоя встроенными стабилитронами, поэтому получается некоторая совместимость TTL и RS-232 логики. В представленной схеме присутствуют диоды VD1, VD2, которые «отбирают» плюсовое напряжение от COM порта относительно 5 контакта и передают его на питание контроллера, благодаря чему в некоторых случаях удается избавиться от дополнительного источника питания.

Налаживание
На практике не всегда случается, что данный программатор заработает без налаживания, с 1-го раза, т.к. работа данной схемы сильно зависит от параметров COM порта. Однако у меня, на двух материнских платах Gigabyte 8IPE1000 и WinFast под XP все заработало сразу. Если Вам лень разбираться с неработающей, более сложной схемой программатора, то стоит попробовать собрать эту. Вот некоторые вещи, которые могут повлиять:

Чем новее мат. плата, тем разработчики уделяют этим портам меньше внимания, потому что эти порты давно стали морально устаревшими. Избавиться от этого можно, купив переходник USB-COM, правда опять же купленное устройство может не подойти. Нужные параметры таковы: изменяемое напряжение должно меняться не менее -10В до +10В (лог. 0 и 1) относительно 5-го контакта разъема. Отдааваемый ток должен быть хотя бы таким, чтобы при подключеннии резистора 2,7 кОм между 5-м контактом и исследуемым контактом напряжение не падало ниже 10В (сам таких плат не встречал). Также порт должен правильно определять напряжения, поступающие от контроллера, при уровне напряжения близкого к 0В, но не больше 2В определяется нуль, и соответственно при выше 2В определяется единица.

Также проблемы могут возникнуть из за программного обеспечения.
Особенно это касается ОС LINUX, т.к. из за наличия эмуляторов типа wine, VirtualBox порты могут работать неправильно, а возможностей от них требуется много. Этих проблем я коснусь подробнее в другой статье.

Зная эти особенности, приступим к налаживанию.
Для этого очень желательно иметь программу ICProg 1.05D.
В меню программы нужно во первых выбрать в настройках соотв. порт (COM1. COM2), выбрать JDM программатор. Затем открыть окно «Hardware Check», в меню «Settings». В этом меню нужно по очереди ставить галочки и вольтметром измерять напряжение на контактах подключенного разъема. Если параметры напряжения не соответствуют норме, то к сожалению, это может быть причиной неработоспособности, тогда придется собирать схему с преобразователем RS-232 TTL. Отметив все галочки, нужно убедиться, что на стабилитроне образуется напряжение питания около 5В. Если напряжения в норме и отсутствуют ошибки монтажа, то все должно сработать. Ставим контроллер в панельку, открываем прошивку, программируем. Галочки типа «Invert data out» включать не надо (все сняты). Также не нужно забывать, что некоторые партии контроллеров могут иметь не совсем стандартные параметры, и их прошить не получается, в таких случаях с данным программатором можно попробовать только снизить напряжение питания с 5В до 3-4В, подключив соотв. стабилитрон, посмотреть контроллер на предмет ошибочного включения режима LVP (низковольтное программирование), как предотвратить, можно прочитать в Интернете для конкретного типа контроллера. Повысить напряжение программирования проблеммного контроллера можно, наверное, только усложнив схему введением усилительного каскада с общим эмиттером, запитанного от дополнительного источника питания.

Теперь подробнее о проблеме с питанием устройства. Программатор тестировался с программами ICProg и консольным picprog под Linux, должен работать с любым, который поддерживает JDM, если подключить дополнительный источник питания (он подключается через резистор 1кОм к стабилитрону, диоды с резисторами в этом случае можно вообще исключить). Дело в том, что алгоритмы управления программаторов у отдельного софта разные, программа ICProg, является самой неприхотливой. Замечено, что в ОС Windows эта программа на неиспользуемом контакте 2 поднимала нужное напряжение питания, эта же программа под эмулятором в Linux на другой мат. плате уже не смогла этого сделать, однако выход был найден, отбирая питание из напряжения программирования. В общем, с ICProg, думаю, можно применять этот программатор без дополнительного питания. С другим софтом это гарантировать врядли получится, например, «родной» из репозиториев Ubuntu picprog без питания просто не определяет программатор, выдавая сообщение «JDM hardware not found». Вероятно, он либо принимает какие-то данные, не подавая напряжение программирования, либо делает это слишком быстро, таким образом что фильтрующий конденсатор еще не успевает зарядиться.

Как программировать микроконтроллеры PIC или простой программатор JDM. Простой программатор JDM для микроконтроллеров PIC — Программаторы микроконтроллеров

Какие первые шаги должен сделать радиолюбитель, решив собрать схему на микроконтроллере? Естественно, вам понадобится управляющая программа — «прошивка», а также программатор.

А если по первому пункту проблем нет — готовая «прошивка» обычно выкладывается авторами схем, а вот с программатором дела обстоят сложнее.

Цена готовых USB-программаторов достаточно высока и лучшее решение соберет их самостоятельно. Вот схема предлагаемого устройства (картинки кликабельны).

Основная часть.

Монтажная панель

МК.

Оригинальная схема взята с сайта LabKit.ru с разрешения автора, за что ему огромное спасибо. Это так называемый клон фирменного программатора PICkit2. Поскольку версия устройства является «облегченной» копией фирменного PICkit2, автор назвал свою разработку PICkit-2 Lite , что подчеркивает простоту сборки такого устройства для начинающих радиолюбителей.

Что умеет программист? С помощью программатора можно будет прошить большинство доступных и популярных МК серии PIC (PIC16F84A, PIC16F628A, PIC12F629, PIC12F675, PIC16F877A и др.), А также микросхемы памяти EEPROM серии 24LC. . Кроме того, программатор может работать в режиме преобразователя USB-UART и имеет некоторые функции логического анализатора. Особенно важной функцией программиста является расчет калибровочной константы встроенного RC-генератора некоторых микроконтроллеров (например, таких как PIC12F629 и PIC12F675).

Необходимые изменения.

В схему внесены некоторые изменения, необходимые для того, чтобы программатор PICkit-2 Lite мог записывать / стирать / читать данные из микросхем EEPROM серии 24Cxx.

Из изменений, внесенных в схему. Добавлено подключение от 6 контактов DD1 (RA4) к 21 контакту ZIF-панели. Вывод AUX используется исключительно для работы с микросхемами памяти 24LC EEPROM (24C04, 24WC08 и аналоги). Данные передаются через него, поэтому на схеме панели программирования он отмечен словом «Данные».При программировании микроконтроллеров вывод AUX обычно не используется, хотя он необходим при программировании микроконтроллера в режиме LVP.

Также добавлен подтягивающий резистор 2K, который подключается между выводом SDA и выводом Vcc микросхем памяти.

Все эти доработки на печатной плате я уже проделал, после сборки PICkit-2 Lite по авторской оригинальной схеме.

Микросхемы памяти

24Cxx (24C08 и др.) Широко используются в бытовой радиоаппаратуре, и иногда их приходится прошивать, например, при ремонте телевизоров cRT… Они используют память 24Cxx для хранения настроек.

ЖК-телевизоры

используют другой тип памяти (флэш-память). О том, как прошить память ЖК телевизора, я уже рассказывал. Для тех, кто заинтересован, посмотрите.

В связи с необходимостью работы с микросхемами серии 24Cxx пришлось «доделать» программатор. Я не травил новую плату, а просто добавил необходимые элементы на плату. Вот что случилось.

Ядром устройства является микроконтроллер PIC18F2550-I / SP .

Это единственная микросхема в приборе. МК PIC18F2550 надо «прошить». Эта простая операция у многих вызывает ступор, так как возникает так называемая проблема «курица и яйцо». Как я это решил, расскажу чуть позже.

Список деталей для сборки программатора. В мобильной версии перетащите таблицу влево (проведите пальцем влево-вправо), чтобы увидеть все ее столбцы.

Имя Обозначение Рейтинг / Параметры Марка или тип позиции
Для основной части программатора
Микроконтроллер DD1 8-битный микроконтроллер PIC18F2550-I / SP
Транзисторы биполярные VT1, VT2, VT3 КТ3102
VT4 КТ361
Диод VD1 КД522, 1Н4148
диод Шоттки VD2 1N5817
Светодиоды HL1, HL2 любой на 3 В, красный и зеленый цветов свечения
Резисторы R1, R2 300 Ом
R3 22 кОм
R4 1 кОм
R5, R6, R12 10 кОм
R7, R8, R14 100 Ом
R9, R10, R15, R16 4.7 кОм
R11 2,7 кОм
R13 100 кОм
Конденсаторы C2 0,1 мкм К10-17 (керамика), импортные аналоги
C3 0,47 мк
Конденсаторы электролитические C1 100 мкФ * 6,3 В К50-6, импортные аналоги
C4 47 мкФ * 16 В
Индуктор (дроссель) L1 680 мкГн унифицированный типа EC24, CECL или самодельный
Кварцевый резонатор ZQ1 20 МГц
USB-разъем XS1 USB-BF тип
Джемпер XT1 любой тип «джемпер»
Для монтажной панели микроконтроллеров (МК)
Панель ЗИФ XS1 любая 40-контактная ЗИФ-панель
Резисторы R1 2 кОм МЛТ, МОН (мощность от 0.125 Вт и выше), импортные аналоги
R2, R3, R4, R5, R6 10 кОм

Теперь немного о деталях и их назначении.

Зеленый светодиод HL1 горит, когда программатор включен, и красный светодиод HL2 горит во время передачи данных между компьютером и программатором.

Для универсальности и надежности устройства используется USB-разъем XS1 типа «B» (квадратный). В компьютере используется USB-разъем типа A.Следовательно, нельзя перепутать гнезда соединительного кабеля. Также это решение способствует надежности устройства. Если кабель пришел в негодность, его легко заменить на новый без пайки и монтажных работ.

В качестве дросселя L1 на 680 мкГн лучше использовать готовый (например, типа EC24 или CECL). Но если готовое изделие найти не удается, то дроссель можно изготовить самостоятельно. Для этого на ферритовый сердечник от дросселя CW68 намотайте 250 — 300 витков провода ПЭЛ-0,1.Стоит учесть, что из-за наличия ШИМ с обратной связью не стоит переживать за точность определения индуктивности.

Напряжение для программирования высокого напряжения (Vpp) от +8,5 до 14 В генерируется ключевым регулятором. В него входят элементы VT1, VD1, L1, C4, R4, R10, R11. Импульсы ШИМ поступают с 12 контактов PIC18F2550 на базу VT1. Обратная связь осуществляется делителем R10, R11.

Для защиты элементов схемы от обратного напряжения на линиях программирования в случае использования USB-программатора в режиме ICSP (In-Circuit Serial Programming) используется диод VD2.VD2 — диод Шоттки. Его следует подбирать при падении напряжения перехода P-N не более 0,45 вольт. Также диод VD2 защищает элементы от обратного напряжения, когда программатор используется в режиме преобразования USB-UART и логического анализатора.

При использовании программатора исключительно для программирования микроконтроллеров в панели (без использования ICSP) можно полностью исключить диод VD2 (это то, что я сделал) и вместо него установить перемычку.

Компактность устройства обеспечивается универсальной ZIF-панелью (Zero Insertion Force — с нулевым усилием установки).

Благодаря ему можно «вшить» МК практически в любой DIP пакет.

Схема «Панель установки микроконтроллера (MC)» показывает, как установить микроконтроллеры с разными корпусами в панель. При установке МК следует обратить внимание на то, что микроконтроллер в панели расположен так, чтобы ключ на микросхеме находился со стороны фиксирующего рычага ЗИФ-панели.

Вот как нужно устанавливать 18-контактные микроконтроллеры (PIC16F84A, PIC16F628A и т. Д.).

А вот так 8-ми контактные микроконтроллеры (PIC12F675, PIC12F629 и др.).

Если есть необходимость прошить микроконтроллер в корпусе для поверхностного монтажа (SOIC), то вы можете использовать переходник или просто припаять к микроконтроллеру 5 контактов, которые обычно требуются для программирования (Vpp, Clock, Data, Vcc, GND ).

Готовый чертеж печатной платы со всеми изменениями вы можете найти по ссылке в конце статьи.Открыв файл в программе Sprint Layout 5.0, вы можете использовать режим «Печать» не только для печати слоя с рисунком печатных проводников, но и для просмотра расположения элементов на печатной плате. Обратите внимание на изолированную перемычку, соединяющую вывод 6 DD1 и вывод 21 панели ZIF. Необходимо распечатать изображение платы в зеркальном отображении .

Печатную плату можно изготовить методом LUT, а также маркер для печатных плат, запонлаком (как это сделал я) или методом «карандаш».

Вот изображение расположения элементов на плате (кликабельно).

При установке первым делом спаяем перемычки из луженой медной проволоки, затем устанавливаем низкопрофильные элементы (резисторы, конденсаторы, кварц, штекер ISCP), затем транзисторы и программируемый МК. Последний шаг — установка ЗИФ-панели, USB-розеток и заделка провода изоляцией (перемычками).

«Прошивка» микроконтроллера PIC18F2550.

Файл «прошивки» — PK2V023200.hex необходимо записать в память МК PIC18F2550I-SP с помощью любого программатора, поддерживающего микроконтроллеры PIC (например, Extra-PIC). Я использовал JDM Programmator JONIC PROG и программу WinPic800 .

Также можно залить «прошивку» в МК PIC18F2550 с помощью того же фирменного программатора PICkit2 или его новой версии PICkit3. Естественно, это можно сделать и с помощью самодельного PICkit-2 Lite, если кто-то из ваших друзей успел собрать его до вас :).

Также стоит знать, что «прошивка» микроконтроллера PIC18F2550-I / SP (файл PK2V023200.hex ) записывается при установке PICkit 2 Programmer в папку вместе с файлами самой программы. Примерный путь к файлу PK2V023200.hex: «C: \ Program Files (x86) \ Microchip \ PICkit 2 v2 \ PK2V023200.hex»
… У тех, у кого на ПК установлена ​​32-битная версия windows, путь к расположению будет другим: «C: \ Program Files \ Microchip \ PICkit 2 v2 \ PK2V023200.шестнадцатеричный «
.

Ну а если проблему «курица и яйца» предложенными способами решить не удалось, то можно купить готовый программатор PICkit3 на сайте AliExpress. Там он стоит намного дешевле. Я писал о том, как покупать запчасти и комплекты электроники на AliExpress.

Обновление «прошивки» программатора.

Progress не стоит на месте и время от времени Microchip выпускает обновления для своего программного обеспечения, включая программатор PICkit2, PICkit3.Естественно, и мы можем обновить управляющую программу своим самодельным PICkit-2 Lite. Для этого требуется программатор PICkit2. Что это такое и как им пользоваться — чуть позже. А пока пару слов о том, что нужно сделать для обновления «прошивки».

Чтобы обновить программное обеспечение программатора, закройте перемычку XT1 на программаторе, когда он отсоединен от компьютера. Затем подключите программатор к ПК и запустите PICkit2 Programmer. При закрытии XT1 активируется режим загрузчика для загрузки новой версии прошивки.Затем в PICkit2 Programmer через меню «Инструменты» — «Загрузить операционную систему PICkit 2» откройте заранее подготовленный шестнадцатеричный файл обновленной прошивки. Далее будет происходить процесс обновления программного обеспечения программатора.

После обновления нужно отключить программатор от ПК и снять перемычку XT1. Перемычка открыта при нормальной работе … Вы можете узнать версию программного обеспечения программатора через меню «Справка» — «О программе» в программе PICkit2 Programmer.

Это все по техническим причинам. А теперь о программном обеспечении.

Работа с программистом. Программист PICkit2.

Для работы с USB-программатором нам необходимо установить на компьютер программу PICkit2 Programmer. Эта специальная программа имеет простой интерфейс, проста в установке и не требует специальной настройки. Стоит отметить, что работать с программистом можно в среде разработки MPLAB IDE, но для того, чтобы прошить / стереть / прочитать МК достаточно простой программы — PICkit2 Programmer.Я рекомендую.

После установки программы PICkit2 Programmer подключите собранный USB-программатор к компьютеру. Загорится зеленый светодиод («питание»), и операционная система распознает устройство как «Программатор микроконтроллера PICkit2»
и установите драйверы.

Запускаем программу PICkit2 Programmer. В окне программы должна появиться надпись.

Если программатор не подключен, то в окне программы будет отображаться жуткая надпись и короткая инструкция «Что делать?» по-английски.

Если программатор подключен к компьютеру с установленным МК, то программа обнаружит его при запуске и сообщит нам об этом в окне PICkit2 Programmer.

Поздравляем! Первый шаг сделан. А как пользоваться PICkit2 Programmer я рассказал в отдельной статье. Следующий шаг .

Необходимые файлы:

Для многих радиолюбителей не проблема быстро собрать понравившуюся схему на микроконтроллере.Но многие новички в работе с микроконтроллерами сталкиваются с вопросом, как это запрограммировать. Один из самых простых вариантов программистов — это JDM-программист.

Программа — программатор ProgCode v 1.0

Эта программа работает в WindowsXP. Позволяет программировать PIC-контроллеры среднего семейства (PIC16Fxxx) через COM-порт компьютера. Индикатор подключения программатора (в правом верхнем углу окна), если на выбранном в настройках порту нет программатора, становится красным.Если программатор подключен, программа его обнаруживает и индикатор в правом верхнем углу принимает вид, показанный на рисунке 1.

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

Рисунок (скриншот программы ProgCode v1.0)

Если в программу загружен HEX-файл, то желательно выбрать в списке контроллеров тот МК, для которого предназначена загружаемая прошивка.Если этого не сделать, то файл, предназначенный для микроконтроллера с объемом памяти больше, чем тот, который выбран в списке, будет обрезан, а части программы будут потеряны — при таком варианте загрузки файла отображается предупреждение.

Если этого не произошло, то выбрать желаемый контроллер вы также сможете после загрузки файла в программу.

Формат файла SFR

Программатор ProgCode поддерживает работу с собственным форматом файла. Эти файлы имеют расширение .sfr и позволяют хранить дополнительную информацию о программе, предназначенной для микроконтроллера.В этом файле хранится информация о типе микроконтроллера. Это позволяет при загрузке файла SFR не беспокоиться о предварительном выборе типа MK в настройках.

Настройки порта и протокола при подключении программатора

После установки программы — по умолчанию выставляются все настройки, которые необходимы программисту для работы со схемой JDM, показанной на этой странице.
Инверсия сигнала в приведенной выше схеме необходима только для выхода OutData, поскольку в этой схеме сигнал инвертируется согласующим транзистором.На всех остальных выводах инверсия отключена.

Задержка импульса может быть равна 0. Ее настройка предусмотрена для «особо сложных» экземпляров контроллеров, которые не могут быть прошиты. То же самое и с накладными расходами на паузу записи — по умолчанию они равны нулю. Если увеличить значения этих настроек, время программирования контроллера значительно увеличится.

Установите флажок check-on-write, если вам нужно на лету проверять все, что записывается в микроконтроллер, на правильность и соответствие исходному файлу.Если этот флажок не установлен, проверка вообще не выполняется и сообщений об ошибках не будет, даже если такие ошибки действительно присутствуют.
Выбор скорости порта — скорость может быть любой. Для программиста JDM этот параметр не имеет значения.

В WindowsXP для передачи информации через порты cOM используется буферизация. Они называются буферами FIFO. Чтобы избежать ошибок при программировании с JDM, этот механизм необходимо отключить. Это можно сделать в диспетчере устройств Windows.

Заходим в панель управления, далее:
Администрирование — Управление компьютером — Диспетчер устройств

Далее выбираем порт, к которому подключен программатор JDM (например COM1) — смотрим свойства — вкладка параметров порта — необязательно .И снимаем галочку с пункта «Использовать буферы FIFO»

Чертеж — Настройка COM-портов для работы с программатором JDM

После этого перезагружаем компьютер.

Local Project Browser

Помимо непосредственного программирования контроллеров, в программе реализован удобный браузер для проектов на МК, находящихся как в локальных папках компьютера, так и в Интернете. Это сделано для удобства работы. Часто нужные вам проекты находятся в разных папках, и вам нужно потратить время на то, чтобы перейти в нужный каталог, чтобы просмотреть проект.Здесь нужные папки легко добавить в список папок и просмотреть любой проект двумя или тремя щелчками мыши.

При двойном щелчке по нему в панели браузера любой файл откроется в самой программе — это относится к изображениям, файлам html, doc, rtf, djvu (для установленных плагинов), pdf, txt, asm. Файл также можно открыть двойным щелчком в браузере с помощью внешней программы, установленной на вашем компьютере. Для этого расширение файлов нужного типа должно быть зарегистрировано в списке «Файловые ассоциации».Если вы не укажете путь к программе открытия, Windows по умолчанию откроет файл в программе (это удобно для открытия архивов, которые не всегда открываются однозначно). Если в списке указан путь к программе открытия, файл откроется в указанной программе. Так удобно просматривать файлы типа SPL, LAY, DSN.

Рисунок (снимок экрана браузера программы ProgCode v1.0)

Так выглядит окно настройки ассоциаций файлов:

Internet Project Browser

Браузер проектов в Интернете, а также локальный браузер проектов, позволяет в пару кликов быстро перейти на нужный сайт в Интернете, просмотреть проект и при необходимости сразу прошить программу в МК.


При просмотре проектов в Интернете, если на странице проекта есть ссылка на файл с расширением SFR (это формат файла программы ProgCode), то такой файл откроется в новой вкладке программы, когда вы нажимаете на нее и сразу готово для прошивки в микроконтроллер.
Список ссылок можно редактировать с помощью кнопки «Редактировать». Откроется окно редактирования списка ссылок:

Описание процесса программирования микросхем

Большинство современных микросхем содержат флеш-память, которая программируется по протоколу I2C или аналогичным протоколам.
Перезаписываемая память находится в PIC, AVR и других контроллерах, микросхемах памяти 24Cxx и т.п., различных картах памяти MMC и SD, обычных USB-флеш-картах, которые подключаются к компьютеру через USB-разъем.

Рассмотрим запись информации во флеш-память микроконтроллера PIC 16 F 628 A

Есть 2 строки DATA и CLOCK, через которые передается информация. LineCLOCK служит для подачи тактовых импульсов, а lineDATA — для передачи информации.

Для передачи 1 бита информации в микроконтроллер необходимо установить 0 или 1 (в зависимости от значения бита) на линии данных (DATA) и создать падение напряжения (переход от 1 к 0) на часах. линия (ЧАСЫ).
Контроллеру недостаточно одного бита. Он ждет еще пять, чтобы принять это 6-битное сообщение как команду. Контроллеру очень нравятся команды, и они должны состоять ровно из 6 бит — такова природа PIC 16.
Вот список и значение команд, которые PIC может понять. Команд не так много — словарь этого контроллера невелик, но не стоит думать, что это совсем глупо — есть устройства с меньшим количеством команд

«LoadConfiguration» 000000 — Загрузить конфигурацию

«LoadDataForDataMemory» — 000011 — Загрузка данных в память данных (EEPROM)
«IncrementAddress» 000110 — Увеличить адрес ПК MK
«ReadDataFromProgramMemory» 000100 — Чтение данных из памяти программ
«ReadDataFromDataMemory» 000101 — Чтение данных из памяти данных (EEPROM)
«BeginCycleOnProgramming 011000 — Начало цикла программирования
«BulkEraseProgramMemory» 001001 — Полное стирание программной памяти
«BulkEraseDataMemory» 001011 — Полное стирание памяти данных (EEPROM)

Контроллер по-разному реагирует на эти команды.По-разному после подачи команды нужно продолжить с ним разговор.
Для запуска полноценного программирования процесса необходимо также подать напряжение 12 вольт на вывод MCLR контроллера, а затем подать на него напряжение питания. Именно в такой последовательности подачи напряжения есть определенный смысл. После включения питания, если PIC настроен на работу от внутреннего RC-генератора, он может начать выполнение своей собственной программы, что недопустимо при программировании, поскольку отказ неизбежен.
Предварительная подача 12 В на MCLR позволяет избежать этого сценария.
При записи информации во флеш-память программ МК после команды

«LoadDataForProgramMemory» 000010 — Загрузка данных в память программ

необходимо отправить сами данные в контроллер — 16 бит,
которые выглядят так:

«0xxxxxxxxxxxxxx 0».

Крестики в этом слове — это сами данные, а нули по краям отправляются в виде кадра — это стандарт для PIC 16.В слове всего 14 значащих битов. Эта серия контроллеров имеет 14-битный формат команд.
После окончания передачи слова данных PIC ожидает следующей команды.
Поскольку наша цель — записать слово в память программы МК, следующей командой должна быть команда

«BeginEraseProgrammingCycle» 001000 — Начать цикл программирования

Получив его, контроллер отключается от внешнего мира на 6 миллисекунд. требуется для завершения процесса записи.

Сигналы на выходах микроконтроллера генерируются компьютером с помощью специальных программ — программаторов. Для передачи сигнала могут использоваться порты COM, LPT или USB. С программатором JDM работают такие программы, как PonyProg, IsProg, WinPic800.


Схема программатора JDM

Очень простая схема программатора показана на рисунке. В этой схеме хоть и не реализовано управление последовательностью подачи напряжения, но оно очень простое и собрать такую ​​схему можно очень быстро, используя минимум деталей.
Рисунок (схема программатора JDM)

Один из вопросов при подключении программатора к компьютеру — как обеспечить избирательную изоляцию. Чтобы избежать поломки в случае неисправности в цепи COM-порта … В некоторых схемах используется микросхема MAX232, которая обеспечивает селективную изоляцию и согласование уровней. В такой схеме вопрос решается проще — с использованием батарейного питания. Уровень сигнала с компьютера ограничен стабилитронами VD1, VD2 и VD3. Несмотря на простоту схемы программатора JDM, с его помощью можно программировать большинство типов микроконтроллеров PIC.

Перемычка между контактами COM6 (DSR) и COM7 (RTS) предназначена для того, чтобы программа могла определить, что программатор подключен к компьютеру.

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

В таблице показано назначение ножек некоторых типов МК при программировании.

Микроконтроллеры PIC16F84, PIC16F84A имеют одинаковое расположение контактов для программирования.


Назначение выводов микроконтроллеров серии PIC16Fxxx, в зависимости от типа корпуса, в большинстве случаев стандартное, но если в этом есть сомнения, то надежнее всего проверить даташит на конкретный экземпляр МК. Часть документации находится на российском сайте http://microchip.ru Полный сборник даташитов и другой документации размещен на сайте производителя микроконтроллера PIC: http: //microchip.com

Указатель проектов

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

При необходимости прошейте контроллер выбранной прошивкой — щелкните файл SFR, например Timer_a.sfr
Программа загружает файл с сервера в новую вкладку.

После этого остается только вставить МК в гнездо программатора, если это еще не было сделано, и нажать на кнопку «Записать все».
Программа записана в МС. После этого контроллер вставляется в плату устройства и устройство готово к работе.

Однажды я решил собрать простой LC-метр на pic16f628a и естественно пришлось его чем-то прошивать. Раньше у меня был компьютер с физическим com-портом, но теперь в моем распоряжении только usb и плата pci-lpt-2com. Для начала собрал простой JDM-программатор, но как оказалось, он не хотел работать ни с платой pci-lpt-com, ни с переходником usb-com (низковольтные сигналы RS-232). Потом бросился искать usb программисты pic, но там, как оказалось, все ограничивается использованием дорогих pic18f2550 / 4550, которых у меня естественно не было, а такие дорогие МК использовать жалко, если уж редко сделать что-нибудь на пиках (предпочитаю avrs, у меня нет проблем есть, они намного дешевле, и мне кажется, что на них проще писать программы).После долгого копания в Интернете в одной из многочисленных статей о программаторе EXTRA-PIC и его различных вариантах, один из авторов написал, что extrapic работает с любыми com-портами и даже адаптером usb-com.

В схеме этого программатора используется преобразователь логического уровня max232.

Я подумал, что если использовать usb-адаптер, было бы очень глупо делать два раза преобразование уровней usb в usart TTL, TTL в RS232, RS232 обратно в TTL, если вы можете просто взять TTL-сигналы порта RS232 с usb- микросхема преобразователя usart.

Так он и сделал. Я взял микросхему Ch440G (в которой есть все 8 сигналов com-порта) и подключил ее вместо max232. И вот что произошло.

В моей схеме есть перемычка jp1, которой нет в extrapic, я поставил ее, потому что не знал, как будет вести себя вывод TX на уровне TTL, поэтому я сделал возможным инвертировать его на оставшейся свободной NAND gate и не прогадал, как оказалось, непосредственно на выводе TX стоит логическая единица, а значит на выводе VPP при включении присутствует 12 вольт, а при программировании ничего не произойдет (хотя можно инвертировать TX программно) .

После сборки платы самое время для тестирования. И тут пришло главное разочарование. Программатор был обнаружен сразу (программой ic-prog) и начал работать, но очень медленно! В принципе ожидаемо. Затем в настройках com-порта выставил максимальную скорость (128 килобод) и начал тестировать все найденные программы на JDM. В результате PicPgm оказался самым быстрым. Мой pic16f628a был полностью прошит (hex, eeprom и config) плюс проверка в течение примерно 4-6 минут (и чтение происходит медленнее, чем запись).IcProg тоже работает, но медленнее. Ошибок программирования не было. Еще пробовал прошить eeprom 24c08, результат тот же — все шьется, но очень медленно.

Выводы: программатор достаточно простой, в нем нет дорогих запчастей (Ch440 — 0,3-0,5 $, k1533la3 вообще можно найти среди радио-барахла), работает на любом компьютере, ноутбуке (и даже можно использовать планшеты на windows 8 / 10). Минусы: очень медленно. Он также требует внешнего источника питания для сигнала VPP. В итоге мне показалось, что для нечастых миганий пиков это простой и недорогой вариант для тех, у кого под рукой нет старинного компьютера с необходимыми портами.

Вот фото готового устройства:

Как говорится в песне: «Я ослепил его от того, что было». Набор деталей очень разнообразен: и smd, и DIP.

Для тех, кто решится повторить схему, в качестве преобразователя usb-uart подойдет практически любой (ft232, pl2303, cp2101 и др.), Вместо k1533la3 подойдет k555, думаю даже серия k155 или зарубежный аналог 74als00, он может работать даже с элементами логического НЕ типа k1533ln1. Прикрепляю свою печатную плату, но макет там те элементы, которые были в наличии, каждый может перерисовать под себя.

Перечень радиоэлементов
Обозначение Тип Номинал сумма Примечание Оценка Моя записная книжка
IC1 Чип Ch440G 1 В блокнот
IC2 Чип K1533LA3 1 В блокнот
VR1 Линейный регулятор

LM7812

1 В блокнот
VR2 Линейный регулятор

LM7805

1 В блокнот
VT1 Транзистор биполярный

KT502E

1 В блокнот
VT2 Транзистор биполярный

KT3102E

1 В блокнот
VD1-VD3 Выпрямительный диод

1N4148

2 В блокнот
C1, C2, C5-C7 Конденсатор100 нФ 5 В блокнот
C3, C4 Конденсатор 22 пФ 2 В блокнот
HL1-HL4 Светодиод Любой 4 В блокнот
R1, R3, R4 Резистор

1 кОм

3

Как элементарный программист, предлагаем собрать совместимый программатор по авторской схеме JDM, которую мы назвали программатором НТВ.Ниже представлена ​​принципиальная схема программатора НТВ (используется разъем DB9, не путать с вилкой).

Скомпилированный по данной схеме программист многократно и точно прошивал контроллеры (и ряд других) и может быть рекомендован для повторения начинающим радиолюбителям.

Этот программатор НЕ РАБОТАЕТ при подключении к ноутбукам. уровни сигналов интерфейса RS-232 (COM-порт) в мобильных системах занижены. Кроме того, он может не работать на современных ПК, где оборудование сохраняет ток в порту.Так что не обвиняйте меня, собирайте и проверяйте все компы, которые попадаются под руку.

Конструктивно плата программатора вставляется между выводами разъема DB-9, припаянными к контактным площадкам печатной платы. Ниже представлен чертеж платы и фотография собранного программатора.

Для полноты картины следует сказать, что есть еще один подобный программатор, который я собрал для микроконтроллеров в 8-выводном корпусе (ах).Программист также отлично работает с этими микроконтроллерами. Ниже представлен чертеж доски и фото.

Подскажите:
Для многих радиолюбителей не проблема быстро собрать понравившуюся схему на микроконтроллере. Но многие новички в работе с микроконтроллерами сталкиваются с вопросом, как это запрограммировать. Один из самых простых вариантов программиста — это программатор JDM.
Программа — программатор ProgCode v 1.0 Эта программа работает в WindowsXP. Позволяет программировать PIC-контроллеры среднего семейства (PIC16Fxxx) через COM-порт компьютера.Индикатор подключения программатора (в правом верхнем углу окна), если на выбранном в настройках порту нет программатора, становится красным. Если программатор подключен, программа его обнаруживает и индикатор в правом верхнем углу принимает вид, показанный на рисунке 1. Панель управления расположена в левой части окна программы. Эту панель можно свернуть, нажав кнопку на панели инструментов или щелкнув левый край окна (это удобно, когда окно программы развернуто на весь экран).

Изображение (скриншот программы ProgCode v1.0)

Если в программу загружен HEX-файл, то желательно выбрать в списке контроллеров тот МК, для которого предназначена загружаемая прошивка. Если этого не сделать, то файл, предназначенный для микроконтроллера с объемом памяти больше, чем тот, который выбран в списке, будет усечен, а части программы будут потеряны — при этом варианте загрузки файла отображается предупреждение.

Если этого не произошло, то вы можете выбрать нужный контроллер после загрузки файла в программу.

Формат файла SFR ProgCode поддерживает работу с собственным форматом файла. Эти файлы имеют расширение .sfr и позволяют хранить дополнительную информацию о программе, предназначенной для микроконтроллера. В этом файле хранится информация о типе микроконтроллера. Это позволяет при загрузке файла SFR не беспокоиться о предварительном выборе типа MK в настройках.

Настройки порта и протокола при подключении программатора После установки программы — по умолчанию устанавливаются все настройки, которые необходимы программисту для работы со схемой JDM, показанной на этой странице.
Инверсия сигнала в приведенной выше схеме необходима только для выхода OutData, поскольку в этой схеме сигнал инвертируется согласующим транзистором. На всех остальных выводах инверсия отключена.

Задержка импульса может быть равна 0. Ее настройка предусмотрена для «особо сложных» экземпляров контроллеров, которые не могут быть прошиты. То же самое и с накладными расходами на паузу записи — по умолчанию они равны нулю. Если увеличить значения этих настроек, время программирования контроллера значительно увеличится.

Установите флажок check-on-write, если вам нужно на лету проверять все, что записывается в микроконтроллер, на правильность и соответствие исходному файлу. Если этот флажок не установлен, проверка не выполняется вообще и сообщений об ошибках не будет, даже если такие ошибки действительно присутствуют.
Выбор скорости порта — скорость может быть любой. Для программиста JDM этот параметр не имеет значения.

WindowsXP использует буферизацию информации, передаваемой через COM-порты.Это так называемые буферы FIFO. Чтобы избежать ошибок при программировании с JDM, этот механизм необходимо отключить. Это можно сделать в диспетчере устройств Windows.

Заходим в панель управления, далее:
Администрирование — Управление компьютером — Диспетчер устройств

Далее выбираем порт, к которому подключен программатор JDM (например COM1) — смотрим свойства — вкладка параметров порта — необязательно . И снимаем галочку «Использовать буферы FIFO»

Рисунок — Настройка COM-порта для работы с программатором JDM

После этого перезагружаем компьютер.

Браузер локальных проектов Помимо прямого программирования контроллеров, в программе реализован удобный браузер проектов на МК, расположенных как в локальных папках компьютера, так и в Интернете. Это сделано для удобства работы. Часто нужные вам проекты находятся в разных папках, и вам нужно потратить время на то, чтобы перейти в нужный каталог, чтобы просмотреть проект. Здесь легко добавить нужные папки в список папок и просмотреть любой проект двумя-тремя щелчками мыши.

Если дважды щелкнуть по нему в панели браузера, любой файл откроется в самой программе — это относится к изображениям, файлам html, doc, rtf, djvu (с установленными плагинами), pdf, txt, asm. Файл также можно открыть двойным щелчком в браузере с помощью внешней программы, установленной на компьютере. Для этого расширение необходимого типа файла должно быть зарегистрировано в списке «Файловые ассоциации». Если вы не укажете путь к программе открытия, Windows по умолчанию откроет файл в программе (это удобно для открытия архивов, которые не всегда открываются однозначно).Если в списке указан путь к программе открытия, файл откроется в указанной программе. Так удобно просматривать файлы типа SPL, LAY, DSN.

Рисунок (снимок экрана браузера программы ProgCode v1.0)

Так выглядит окно настроек ассоциаций файлов:

Браузер проектов в Интернете Браузер проектов в Интернете, а также локальный браузер проектов , позволяет в пару кликов быстро перейти на нужный сайт в Интернете, просмотреть проект и при необходимости сразу прошить программу в МК.

При просмотре проектов в Интернете, если на странице проекта есть ссылка на файл с расширением SFR (это формат файла программы ProgCode), то при нажатии на него откроется такой файл в новой вкладке программы и сразу готов к прошивке в микроконтроллер.
Список ссылок можно редактировать с помощью кнопки «Редактировать». Откроется окно редактирования списка ссылок:

Описание процесса программирования микросхем. Большинство современных микросхем содержат флеш-память, которая программируется по протоколу I2C или аналогичным протоколам.
Перезаписываемая память находится в PIC, AVR и других контроллерах, микросхемах памяти, таких как 24Cxx, и т.п., различных картах памяти, таких как MMC и SD, обычных USB-флеш-картах, которые подключаются к компьютеру через USB-разъем. Рассмотрите возможность записи информации во флеш-память микроконтроллера PIC16F628A. Линии DATA и CLOCK, по которым передается информация. Линия CLOCK используется для подачи тактовых импульсов, а линия DATA используется для передачи информации.
Для передачи 1 бита информации в микроконтроллер необходимо установить 0 или 1 (в зависимости от значения бита) на линии данных (DATA) и создать падение напряжения (переход от 1 к 0) на часах линия (ЧАСЫ).
Контроллеру недостаточно одного бита. Он ждет еще пять, чтобы принять это 6-битное сообщение как команду. Контроллер очень любит команды, и они должны состоять из 6 бит — такова природа PIC16.
Вот список и значение команд, которые PIC может понять. Команд не так много — словарный запас этого контроллера невелик, но не стоит думать, что это совсем глупо — есть устройства с меньшим количеством команд «LoadConfiguration» 000000 — Загрузка конфигурации
«LoadDataForProgramMemory» 000010 — Загрузка данных в память программы
«LoadDataForDataMemory» — 000011 — Загрузка данных в память данных (EEPROM)
«IncrementAddress» 000110 — Увеличение адреса ПК MK
«ReadDataFromProgramMemory» 000100 — Чтение данных из памяти программ
«ReadDataFromDataMemory» 000101 — Чтение данных из памяти данных (EEPROM)
«BeginProgrammingOnlyCycle» 011000 — Начало цикла программирования
«BulkEraseProgramMemory» 001001 — Полное стирание программной памяти
«BulkEraseDataMemory» 001011 — Полное стирание памяти данных (EEPROM)
«BeginEraseProgrammingCycle» отвечает командует по-разному.По-разному после подачи команды нужно продолжить с ним разговор.
Для запуска полноценного процесса программирования необходимо также подать напряжение 12 вольт на выход MCLR контроллера, а затем подать на него напряжение питания. Именно в такой последовательности подачи напряжения есть определенный смысл. После включения питания, если PIC настроен на работу от внутреннего RC-генератора, он может начать выполнение своей собственной программы, что недопустимо при программировании, поскольку отказ неизбежен.
Предварительная подача 12 В на MCLR позволяет избежать этого сценария.
При записи информации во флеш-память программ МК после команды «LoadDataForProgramMemory» 000010 — Загрузка данных в память программ, необходимо отправить сами данные в контроллер — 16 бит,
который выглядит так: «0xxxxxxxxxxxxxx0. ” Крестики в этом слове — это сами данные, а нули по краям отправляются как обрамление — это стандарт PIC16. В слове всего 14 значащих битов.Эта серия контроллеров имеет 14-битный формат команд.
После окончания передачи слова данных PIC ожидает следующей команды.
Поскольку наша цель — записать слово в память программы МК, следующей командой должна быть команда
«BeginEraseProgrammingCycle» 001000 — Начать цикл программирования Получив ее, контроллер отключается от внешнего мира на 6 миллисекунд, что необходимо завершить процесс записи. Сигналы на выходах микроконтроллера генерируются компьютером с помощью специальных программ — программаторов.Для передачи сигнала могут использоваться порты COM, LPT или USB. С программатором JDM работают такие программы, как PonyProg, IsProg, WinPic800.
Схема программатора JDM На рисунке показана очень простая схема программатора. В этой схеме хоть и не реализовано управление последовательностью подачи напряжения, но оно очень простое и собрать такую ​​схему можно очень быстро, используя минимум деталей.
Рисунок (схема программатора JDM)

Один из вопросов при подключении программатора к компьютеру — как обеспечить селективную изоляцию.Во избежание повреждения COM-порта в случае неисправности цепи. В некоторых схемах используется микросхема MAX232, обеспечивающая селективную изоляцию и согласование уровней. В такой схеме вопрос решается проще — с использованием батарейного питания. Уровень сигнала с компьютера ограничен стабилитронами VD1, VD2 и VD3. Несмотря на простоту схемы программатора JDM, ее можно использовать для программирования большинства типов микроконтроллеров PIC. Перемычка между контактами COM6 (DSR) и COM7 (RTS) предназначена для того, чтобы программа могла определить, что программатор подключен к компьютеру.

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

В таблице показано назначение ножек некоторых типов МК при программировании.

Показаны рисунки с назначением выводов наиболее распространенных микроконтроллеров при программировании. Распиновка (распиновка) микроконтроллеров PIC16F876A, PIC16F873A в корпусе DIP28.

Распиновка микроконтроллеров PIC16F874A, PIC16F877A в корпусе DIP40. Распиновка
микроконтроллеров PIC16F627A, PIC16F628A, PIC16F648A в корпусе DIP18.
Микроконтроллеры PIC16F84, PIC16F84A имеют одинаковое расположение контактов для программирования.

Назначение выводов микроконтроллеров серии PIC16Fxxx в зависимости от типа корпуса в большинстве случаев стандартное, но если есть сомнения по этому поводу, то надежнее всего проверить даташит на конкретную копию МК.Часть документации находится на российском сайте http://microchip.ru Полный сборник даташитов и другой документации размещен на сайте производителя микроконтроллера PIC: http://microchip.com
Указатель проектов Программа позволяет вы можете получить прямой доступ к странице указателя, просмотреть описание желаемого проекта за пару кликов и сразу же прошить программу в контроллер.

При необходимости прошейте контроллер выбранной прошивкой — щелкните файл SFR, например Timer_a.sfr
Программа скачивает файл с сервера в новую вкладку.

После этого остается только вставить МК в гнездо программатора, если это еще не было сделано, и нажать на кнопку «Записать все».
Программа записана в МС. После этого контроллер вставляется в плату устройства и устройство готово к работе.

Скачать программу можно на странице загрузки файла: http://cxema.my1.ru/load/proshivki/material_k_state_prostoj_jdm_programmator_dlja_pic_mikrokontrollerov/9-1-0-1613 Раздел:

DL4YHF’s WinPic — программатор PIC для Windows

Программатор PIC для Windows 95/98 / XP / 7/8

Краткое описание
Это простое приложение Windows для программирования прошивки PIC от
HEX-файл (тип, генерируемый Microchip’s
MPLAB TM ) в микроконтроллер PIC.Большинство современных PIC (например, PIC16F84, 16F628, 12F675, dsPIC30Fxxxx) могут быть
перепрограммирован много раз, потому что программу можно стереть электрически (
код хранится во флэш-памяти, а не в простом ПЗУ). Некоторые из «очень простых»
могут использоваться программные интерфейсы, некоторые из них описаны в
руководство.
Изначально я написал эту программу для себя, чтобы получить прошивку PIC-keyer
в PIC16F84, обнаружив, что некогда известная программа DOS вызывала
«ПИП-02» отказался работать под ветром.
Примечание. Между тем в сети есть и другие программы под названием «WinPic».
Если вы ищете обновления, поищите в сети «WinPic» И «DL4YHF», чтобы найти
правый.

Характеристики

  • последовательный интерфейс: совместим с «COM84», «JDM» и определяемый пользователем
    Большинство интерфейсов для COM-порта должны работать без специального доступа к порту.
    драйвер, и теперь может даже работать с адаптерами USB <-> RS-232!
  • параллельный интерфейс: совместим с SM6LKM «PIP84» -интерфейсом, проверьте Johan’s
    домашняя страница
  • многие другие интерфейсы могут управляться с помощью простого файла определения интерфейса
    (см. руководство)
  • экзотические интерфейсы могут поддерживаться через специализированный аппаратный интерфейс
    DLL (плагин)
  • возможность проверки ПОС на разных напряжениях (практически «производственный класс»)
  • требуется ПК с WIN95, Win98, Win XP (Win NT 4.0 и Win2000 не тестировались)
  • Объем памяти кода теперь до 8192 слов, память EEPROM данных до 256 байт.
  • Код и память данных могут быть запрограммированы отдельно
  • Массовое стирание («стереть все») или индивидуальное программирование всех байтов, присутствующих в
    из HEX-файла
  • Встроенный «шестнадцатеричный редактор» для быстрых исправлений в памяти EEPROM кода или данных
  • Возможен вызов с аргументами командной строки, поэтому вы можете запускать WinPic
    из ракушки
  • Дополнительное окно с «Перезагрузить и запрограммировать»
    функция (всегда впереди других)
  • WinPic теперь также поддерживает JDM PIC-programmer 2, Velleman K8048, Hoodmicro,
    интерфейс Виллема, El Cheapo и многие другие.Единственные (?) Интерфейсы
    которые WinPic не поддерживает, это «PicStart plus» от Microchip (слишком дорого)
    и «PicKit2».
  • Благодаря различным сотрудникам, французам, грекам, португальцам,
    Доступен испанский и турецкий перевод пользовательского интерфейса WinPic.
    Все языки теперь содержатся в установщике (не нужно ничего скачивать
    раздельно)
  • Помимо SMPORT, можно использовать драйвер PortTalk. Это оказалось быстрее под
    WinXP, особенно при программировании больших PIC (dsPIC и PIC18F).

Поддерживаемые микроконтроллеры PIC

  • dsPIC30F2010 (теоретически поддерживаются ВСЕ устройства dsPIC30F, несколько проверено)
  • PIC16C61, PIC16C71
  • PIC16C84, PIC16F84
  • PIC16C710, PIC16C711, PIC16C715
  • PIC10F200, PIC10F202, PIC10F204, PIC10F206
  • PIC12F629, PIC12F635, PIC12F675, PIC12F683
  • PIC12F609, PIC16F610, PIC12F615, PIC16F616
  • PIC16F627, PIC16F627A, PIC16F628, PIC16F628A
  • PIC16F630, PIC16F636, PIC16F648A
  • PIC16F676, PIC16F684, PIC16F688
  • PIC16F73, PIC16F737, PIC16F74, PIC16F76, PIC16F77
  • PIC16F818, PIC16F819
  • PIC16F87, PIC16F88
  • PIC16F873A…PIC16F877A
  • PIC16F1782, PIC16F1783 и, возможно, аналогичные устройства
  • PIC16F1827
  • PIC18F242, PIC18F248, PIC18F252, PIC18F258
  • PIC18F442, PIC18F448, PIC18F452, PIC18F458
  • PIC18F2XX0 / 2XX5 / 4XX0 / 4XX5 (проверено: PIC18F2550)
  • и другие «вполне совместимые» устройства, если у вас есть даташит и текст
    редактор !

Ссылки и дополнительная информация:

(Как видите, многие из некогда активных веб-сайтов исчезли..)

(Обратите внимание: перечисленные выше веб-сайты находятся под исключительным контролем,
авторские права и ответственность авторов этих страниц. Я не могу
нести ответственность за содержание веб-сайтов, на которые вы попадаете
эти гиперссылки. Более того, хотя некоторые сайты могут быть «коммерческими», WinPic
есть и остается некоммерческим любительским проектом — см.
отказ от ответственности).

Скачать

  • Установка WinPic Programmer DL4YHF
    архив.
    Содержит все необходимое для запуска WinPic, включая справочную систему.
    С 2005-11 годов WinPic распространяется с установщиком, который содержит все
    переводы (чешский, голландский, английский, французский, немецкий, греческий, итальянский,
    Португальский, русский, испанский и турецкий языки теперь «встроены» — спасибо
    всем соавторам! )
  • Исходные коды для написания собственных
    интерфейс-плагин-DLL (interface_dlls.zip). Содержит образец проекта DLL
    написано на DevC ++ V 4.9.9.2 (прекрасный бесплатный компилятор C / C ++ на основе GCC / MINGW,
    включая простую IDE).

Для некоммерческих целей большая часть
исходные коды тоже доступны (если
ссылка не работает, я специально удалил исходники с сайта.
Если вам нужны исходники, попросите их). WinPic был написан на Borland C ++
Builder V4 для Windows. Драйверы доступа к портам SMPORT (автор A. Weitzman) и
PortTalk (автор Craig Peacock) не включены в исходный код
архив. Обратите внимание на индивидуальные условия использования некоторых модулей,
особенно написанные соавторами (- спасибо! -).Если
исходных кодов нет (что произойдет, если я снова буду работать с WinPic),
или если вам срочно нужен самый последний исходный код , отправьте электронное письмо
мне — .
Разрешено использовать, изменять или распространять это программное обеспечение до тех пор.
поскольку он не продается и не используется для получения прибыли, и если вы укажете, где
вы нашли оригинальные запчасти. Часть старого алгоритма программирования 16C84
а процедура загрузки шестнадцатеричного файла была «вдохновлена» программистом PIC Дэвида Тейта.
для DOS. Подпрограммы программирования PIC18F были написаны Мартином ван дер Верффом,
который также сообщил мне о лучшей производительности драйвера PortTalk.

Примечание для пользователей из Японии

Японская версия WinPic, написанная FENG3, теперь доступна на его веб-сайте:
http://feng3.cool.ne.jp/winpic/.

Заявление об ограничении ответственности

Это программное обеспечение предоставляется «КАК ЕСТЬ», а также любые явные или подразумеваемые гарантии,
включая, но не ограничиваясь, подразумеваемые гарантии
товарность (*) , пригодность для определенной цели,
или ненарушение прав не принимаются.Ни в коем случае автор или участники
нести ответственность за любые прямые, косвенные, случайные, особые, образцовые или
косвенные убытки (включая, но не ограничиваясь, закупки для
замена товара или услуги, потеря возможности использования, данных или прибыли; или бизнес
прерывание) независимо от причин и по любой теории ответственности, будь то по договору,
строгая ответственность или правонарушение (включая халатность или иное), возникшее в
любой выход из использования этого программного обеспечения, даже если он был уведомлен о возможности
такого ущерба.

(*) , чтобы быть более конкретным, это программное обеспечение вообще не предназначено для продажи,
так как я не буду продавать , и никому другому не разрешено … ;-).

Другими словами, весь риск лежит на вас! (чего еще ты ожидал
из бесплатного ПО ..)

Названия продуктов в этом документе, которые являются зарегистрированными товарными знаками, являются
отдельно не отмечены. То же самое относится к материалам, защищенным авторским правом. Следовательно
отсутствующий ® (r) или © (c) не
подразумевают, что это название является свободным торговым наименованием.Кроме того, используемые имена
не указывают патентные права или что-либо подобное.

Программатор PIC FEZ877 JDM для микрочипа MCU

Fez877 ПИК JDM
Программатор для Microchip MCU

  • Питание от последовательного порта вашего ПК; нет
    необходимость во внешнем блоке питания.
  • Совместимость с операционными системами
    включая Windows 98 / ME, Windows 2000 / NT, Windows XP.
  • Пишет очень быстро.
  • Этот программатор Компактный, простой в
    использовать.
  • Подходит для студентов и электронных
    энтузиасты использования
  • 40-контактные разъемы ZIF + 18-контактные разъемы ZIF
    (можно программировать устройства 8pin / 14pin / 18pin / 20pin / 28pin / 40pin)

Программный интерфейс WinPic800:

поддерживаемых устройств:

12F629 12F635 12F675 12F683 12F508 12F509
12F510 16C61 16C62 16C63 16C64

16C64A

16C65

16C66 16C67 16C620 / А 16C621 / A 16C622 / А
16C623 16C624 16C625 16C71 16C72 16C72A
16C73 16C73A / B 16C74 16C74A / B 16C76 16C77
16C710 16C711 16C712 16C716 16C745 16C765
16C773 16C774 16C923 16C924 16C925 16C926
16F627 16F627A 16F628 16F628A 16F630 16F636
16F648A 16F676 16F684 16F688 16F73

16F74

16F76 16F77 16F716 16F737 16F767

16F777

16F83 16F84 16F84A 16F87 16F88

16F818

16F819 16F870 16F871 16F872 16F873

16F873A

16F874 16F874A 16F876 16F876A 16F877

16F877A

18F248 18F252 18F442 18F258 18F448

18F452

18F458 18F1220 18F1320 18F2220 18F2320

18F4220

18F4320 18F2331 18F2431 18F4331 18F4431

18F2410

18F2420 18F2455 18F2480 18F2510 18F2515

18F2520

18F2525 18F2550 18F2580 18F2585 18F2610

18F2620

18F2680 18F4410 18F4420 18F4455 18F4480

18F4510

18F4515 18F4520 18F4525 18F4580 18F4585

18F4610

18F4620 18F4680

В комплект входит следующий товар:

1.1 x FEZ877_JDM Программатор PIC
2.
FEZ877_jdm краткое руководство по эксплуатации + ссылка для скачивания
WinPIC800

Примечание: это внутри не
иметь стандартный кабель RS232, чтобы снизить цены на продукцию и
Стоимость доставки, можно использовать собственный кабель RS232 (последовательный).

Цена:
US $ 9.99
По всему миру
Доставка заказной авиапочтой —-
6 долларов США.99 (около
7-20 рабочих дней) (Отслеживание)

Доставка по всему миру через DHL / UPS / TNT / FedEx Express …—-
25,00 долларов США (около 3-7 дней)
(Есть
Отслеживание)


Инструкции по закупке:

При покупке укажите следующее:
Контактный телефон для доставки

FAQ
Привет, если мы купим сейчас, когда вы мне отправили?
  • Когда мы получим оплату, мы отправим вам товары
    Вам в течении 1-2 рабочих дней!
вы отправили мне товар, у вас есть номер для отслеживания
для меня ?
  • Если доставка осуществляется

    Зарегистрированная Авиапочта,
    Мы отправим вам заказной авиапочтой,
    У этого есть номер для отслеживания, и он может
    занимает
    7-20
    рабочих дней.

  • Если
    Доставка по
    DHL / UPS / TNT / FedEx Экспресс,
    Мы отправим вам
    DHL / UPS / FedEX / TNT / EMS..Express, это есть
    предоставить номер отслеживания! и это может занять

    3-7 рабочих дней!

Если предмет в обмене в транспорте украден, и вы
будет перераспределен к нам?
  • Если вы купили запчасти, в установленный срок сделали
    Не получите товар, мы отправим вам его повторно.

  • Например, если доставка
    авиапочтой или зарегистрированной авиапочтой, если вы покупаете детали
    1 января вы получите детали 30 января.
    раньше, потому что это занимает 7-20 рабочих дней, если вы не
    получил запчасти 30 января, пожалуйста, скажите мне
    мы, мы повторно отправим вам!
  • Например, если доставка
    DHL / UPS / FedEX / TNT / EMS..Express, если вы покупаете детали
    1 января вы получите детали 15 января.
    раньше, потому что это занимает 3-7 рабочих дней, если вы не
    получил запчасти 15 января, пожалуйста, скажите мне
    мы, мы повторно отправим вам!
  • Мы НЕ БУДЕМ повторно отправлять заказы на возврат из-за
    неверный адрес доставки
способ оплаты
  • Принять PayPal
    Кредитная карта через Paypal
    Я отправлю товар по указанному вами адресу. Оплата через PAYPAL.
    уведомление.
    Подтвердите свой адрес доставки в PayPal
    Счет
    или скажите, пожалуйста, вашу доставку
    адрес по электронной почте,
    Скажите, пожалуйста, ваш номер телефона
    Покупатели должны оплатить ВСЮ комиссию за повторную отправку возвращенного товара.
    пакеты
Политика возврата
  • 100% гарантия возврата денег или обмен того же класса
    продуктов.
    Полный возврат будет произведен при получении
    Неисправный элемент.
    Обратите внимание, что стоимость доставки и погрузочно-разгрузочных работ составляет
    не подлежащий возврату.
    Покупателям необходимо вернуть бракованные товары в течение 7 дней.
    дней с даты получения товара.
    Возврат или замена будут отправлены после того, как мы получим
    ваш возвращаемый товар.
    Во всех случаях покупатели оплачивают доставку за свой счет до
    Возврат товаров на обмен или возврат.
График отгрузки
  • Обычно ваш заказ будет отправлен в течение 1-2 часов.
    рабочих дней после подтверждения платежа.
    Время доставки может отличаться, зависит от получателя.
    место расположения.
Объявить товар
  • Ваш товар будет отмечен как «Подарок» или «Образец», а
    ценить.
    Мы НЕ несем ответственности за налоги на импорт, таможенные сборы.
    или таможенная задержка.
    Покупатель не может потребовать отменить аукцион или запрос
    для возврата в этой ситуации. Пожалуйста, свяжитесь со своим
    местные налоговые органы ДО торгов.
    Однако большинство наших товаров могут быть доставлены покупателям без
    любые налоги.

Способы оплаты 1: Прямой перевод на PAYPAL

Метод 2: Вы можете перейти непосредственно на наш купленный EBAY
интернет-магазины, а их веб-сайт:

http: // магазины.ebay.com/QLS-Microchip-pic-mcu-mpu-tools

Метод 3:
БАНК КИТАЯ Международный Бизнес:

Форма перевода: Перевод на
на нашем счете BANK OF CHINA используются доллары США через местные банки.
Стоимость переводов: Общие денежные переводы будут установлены на уровне 25
долларов вычтено, общая сумма переводов: Всего
количество товаров + доставка + 25 у.е.00.
Сообщение, которое отправит в местный банк: (Чтобы избежать
совершая ошибки, Вы можете отправить в банк следующее сообщение
персонал, и попросите его заполнить формы для вас)
A / C NO: 4766938-0188-129144-0
В КОНДИЦИОНЕРАХ С: TANG YAN
BENES BANK: БАНК КИТАЯ SHENZHEN BEI
ПОДРАЗДЕЛЕНИЕ КЛЫКОВ
SWIFT-КОД: BKCHCNBJ45A ДОБАВИТЬ:
1 / F, ЗДАНИЕ BEI FANG, SHEN NAN
ZHONG ROAD, ШЭНЬЧЖЭНЬ, КИТАЙ
ПОЧТОВЫЙ ИНДЕКС:
518033
ЭЛЕКТРОННАЯ ПОЧТА: cxqmcu @ tom.com [email protected] MSN: [email protected]

Программатор макета PIC (JDM) — Justin’s Stuff

Введение

Программатор My Breadboard JDM был разработан для работы с picprog на платформах UNIX. Наверное работает с IC-прогой
на окнах тоже, но я не пробовал. picprog может программировать
большое количество различных PIC, в том числе новых, таких как
желательно PIC18F2550 / 4550 запчасти.

Я разработал только
макет макета, а не схема, на которой он основан, как это сделал Йенс
Мэдсен. См. Принципиальную схему на странице picprog (обратите внимание: разные выводы
предназначены для сокета DB25) и ссылки на оригинальный дизайн JDM.

Как с
любому программисту JDM нужен приличный последовательный порт. Большинство ноутбуков и USB
Ключи не имеют правильного напряжения. Я измерил последовательные порты
(напряжение на GND / TX) на двух настольных ПК с разницей в возрасте ~ 5 лет,
с помощью мультиметра — оба замерили -11В.Они оба отлично работают с этим
программист.

Планировка несложная и требует всего
около 5 минут, чтобы собрать вместе, как только вы припаяете розетку.
Если у вас уже есть макетная плата и запасной кабель CAT5, детали
требуются очень дешево (~ 4 фунта стерлингов от Maplins, намного меньше от Farnell / RS).
Я уверен, что вы могли бы использовать гораздо меньший / более дешевый кусок макета, но я
использовал то, что у меня было.

Согласно странице picprog, эта схема
должен работать с ICSP — вы можете подключить провода к соответствующей IC
булавочные отверстия на макетной плате.Это причина, по которой я решил использовать
макетная плата — это должно быть тривиально для подключения проводов для ICSP к PIC на
другие кусочки макета (плюс у меня был запасной макет). Я не пробовал
что еще.


Изображение

Большая (~ 1 Мб) аннотированная версия находится здесь:


Детали

Все детали поставляются компанией Maplins в Великобритании. Номера деталей (взяты из моей квитанции) следующие:

  • 1 x FZ51F — 18-контактный разъем IC с поворотной ножкой
  • 1 x QQ14 — NPN-транзистор общего назначения (BC547C)
  • 3 x QL80 — диод (IN4148)
  • 1 х QH07 — 5.Стабилитрон 1 В (BZX79C 5V1)
  • 1 x Qh27 — Стабилитрон 13 В (BZX79C 13 В)
  • 1 x Vh47 — 100 мкФ Электролитический конденсатор 25 В
  • 1 x BX03D — 100nF164993? 2 x M10K — резистор 10 кОм
  • 1 x M1K5 — резистор 1,5 кОм
  • 1 x RK61 — 9-контактная розетка D-диапазона
  • 1 x FP27 — D-вытяжка 9-контактная

макет также от Maplins, но вы найдете его дешевле в другом месте.
Электролитический конденсатор на 16 В подойдет, но у них не было
те, что есть в наличии.Maplins не продают PIC16F628a — они только кажутся
сток устаревший PIC16F628. Я предполагаю, что они не меняют много
единицы.

С любыми компонентами, купленными в их отделе запчастей,
всегда дважды проверяйте номера деталей на товарах, которые вам дают. Они
не всегда есть нужные детали в правильных ящиках и
персонал часто не может определить разницу (например, между стабилитроном 13 В
и стабилитрон на 20 В). Мне потребовалось 3 поездки, чтобы получить нужные детали.
— К счастью, я могу дойти до местного магазина.


Примечания

Провода, которые я использовал повсюду, взяты из
одножильный (не многожильный) кабель Ethernet CAT5. Я спаял самку
DE9 на короткую длину CAT5 (~ 30 см) случайным образом, так как
следующие:

  1. (CD) — синий / белый
  2. (RX) — синий
  3. (TX) — оранжевый
  4. (DTR) — оранжевый / белый
  5. (GND) — зеленый / белый
  6. (DSR) — Коричневый
  7. (RTS) — Коричневый / белый
  8. (CTS) — Зеленый
  9. (RI) — Не подключен

Для
перемычки старайтесь использовать как можно более короткий провод, так как
сопротивление разъемов уже достаточно высокое.Я снял
перемычки, чтобы оголить ~ 6 мм провода на каждом конце.


Использование

Установите picprog

Для Debian / Ubuntu вам необходимо установить picprog

$ sudo apt-get install picprog

Теперь протестируем его.

Чтение PIC

Подключиться
PIC к гнезду IC, подключите гнездо IC к макетной плате (контакт 1
в ряду 11, штырь 9 на ряду 19 на моей макетной плате). Дважды проверьте, что PIC
правильный путь! Подключите разъем DE9 к первому последовательному порту.
и проверьте схему, прочитав PIC.

$ picprog -o output.hex -p / dev / ttyS0

Picprog, версия 1.8.3, Авторские права © 2006 Яакко Хиватти

Picprog поставляется с АБСОЛЮТНО БЕЗ ГАРАНТИЙ; для получения подробной информации введите «picprog —warranty». Это бесплатное программное обеспечение, и вы можете распространять его при определенных условиях;

, чтобы узнать подробности, наберите «picprog —copying».

/ dev / ttyS0: id 0x07c0: обнаружена версия pic16f628 0x00
Устройство pic16f628, память программ: 2048, память данных: 128.
Чтение памяти программ,
чтение памяти данных,
чтение идентификационных слов,
чтение предохранителей,
выполнено.

Может быть
у вас есть совершенно новый незапрограммированный PIC. picprog по крайней мере скажет вам
какой тип микросхемы (например, pic16f628), затем выгрузите содержимое
пустую флеш-память в output.hex.

Запись PIC

$ picprog -i input.hex -p / dev / ttyS0 —burn

Picprog версии 1.8.3, Copyright © 2006 Jaakko Hyvätti

Picprog поставляется с АБСОЛЮТНО ОТСУТСТВИЕ ГАРАНТИЙ; для получения подробной информации введите «picprog —warranty».Это бесплатное программное обеспечение, и вы можете распространять его при определенных условиях;

, наберите `picprog —copying ‘для получения подробной информации.

/ dev / ttyS0: id 0x07c0: обнаружена версия pic16f628 0x00
Устройство pic16f628, память программ: 2048, память данных: 128.
Память программ записи, 198 мест,
память данных записи, 0 мест,
слова идентификатора записи, 0 локаций,
горящих взрывателя, 0 локаций,
готово.


Устранение неполадок

Если не работает с первого раза

  • Убедитесь, что PIC установлен правильно.
  • Убедитесь, что у вас правильный последовательный порт устройства (попробуйте / dev / ttyS1).
  • Проверьте правильность установки диодов (см. Изображение в высоком разрешении).
  • Проверьте полярность электролитического конденсатора емкостью 100 мкФ.
  • Чек
    непрерывность между каждой цветной прижимной стойкой и соответствующим
    в гнездо DE9 (воткните в отверстие развернутую скрепку), используя
    мультиметр.

Программатор PIC — PicPgm — eLab

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

Микроконтроллеры играют очень важную роль в электронике, поскольку они могут выполнять задачи в области автоматизации, управления, обработки изображений и т. Д. Их использование огромно. Существуют различные семейства микроконтроллеров, одним из которых является PIC (контроллер периферийного интерфейса) Microchip. PIC очень популярны, поскольку они относительно дешевы и обладают такими характеристиками, как, например, низкое энергопотребление, внутренний генератор и бесплатные инструменты разработки.

Это пример очень простого программатора PIC:

Как показано выше, между разъемом DB9 и PIC подключено только три резистора 4,7 кОм.Согласно схеме, эти резисторы подключены к следующим выводам PIC: MCLR (1), PGC (39) и PGD (40). Контакт № 8 разъема DB9 подключен к контакту PGD (40) в PIC.

Этот программатор работает при 5 В постоянного тока. Поэтому к 2-контактному разъему необходимо подключить внешний источник напряжения.

С помощью программы KiCad был разработан макет печатной платы:

Затем мы приступили к изготовлению печатной платы, сначала распечатали макет на ацетатном листе.Затем мы использовали метод УФ-облучения, чтобы перенести схему на плату, и, наконец, мы корродировали печатную плату перхлоратом железа.

И программатор готов к работе! Вот как это выглядит:

Вот шаги для использования программатора:

1. Подключите через последовательный кабель к компьютеру;
2. Подключите желаемый PIC к плате, например, PIC18F4550;
3. Используя IDE, например MPLAB, напишите, скомпилируйте код и сгенерируйте файл.Файл HEX;
4. Посредством программного обеспечения, такого как PICPgm, отправьте файл .HEX на PIC.

Итак, PIC готов к использованию, и у вас есть новый программатор для 40-контактных микроконтроллеров PIC.

Программатор Multi PIC 5, версия 2

«Multi PIC Programmer 5 Ver.2» — это программатор PIC, который может программировать устройства с 8-контактными на 40-контактные разъемы с использованием одного гнезда ZIF.
Я построил «Multi PIC programmer 5 Ver.1», чтобы позволить ему программировать 40-контактные устройства, такие как PIC16F877, с разъемом ZIF.
Недавно я улучшил этот программатор PIC. Основные улучшения — это приспособление к «VPP перед VDD» и измененная разводка разъема ZIF для приема устройств с режимом LVP (Low Voltage Programming).
Прежде чем вы создадите этот «программатор PIC», я рекомендую проверить, достаточно ли выходного напряжения на последовательном порту вашего персонального компьютера. Если TxD, DTR и RTS не имеют более + 7,5 В (или -7,5 В), этот программатор не будет работать хорошо, особенно с новейшими портативными компьютерами, в которых используются маломощные интерфейсные ИС RS232.

Другие важные вопросы:
1. Линия GND последовательного порта формирует относительный VDD на программаторе PIC. Все символы GND на принципиальной схеме являются GND программатора PIC. Никогда не подключайте их к линии GND последовательного порта.

2. Этот программатор PIC изменяет VPP в соответствии с выбранным устройством (8-18pin) или (28-40pin) с помощью одного ползункового переключателя. Таким образом, если положение установки устройства и ползунковый переключатель установлены неправильно, ваш PIC может быть поврежден из-за перенапряжения.

3. Этот программатор PIC поддерживает не все микроконтроллеры PIC. (PIC16C5x не программируется с помощью этого программатора. Используя адаптер, можно запрограммировать 20-контактный PIC 16C770 / 771.

4. С тех пор я не пробовал все PIC, и у меня нет их всех. PIC, которые я успешно запрограммированы и проверены, являются PIC12F629, PIC12F675, PIC16F627, PIC16F628, PIC16F630, PIC16F676, PIC16F818, PIC16F819, PIC16F84A, PIC16F873, PIC16F877A, PIC18F232000, программное обеспечение для программирования PIC16FZNNY.

6. «Аппаратные настройки» IC-Prog такие же, как и у программатора JDM.

Я публикую эту принципиальную схему и печатную плату впервые для моих друзей из Индии. Итак, эту принципиальную схему и печатную плату можно скачать с сайта Ham Radio India.

Список поддерживаемых и протестированных устройств (добавлено: 2005-02-06 JST)

  • PIC12C508, PIC12C509
  • PIC12C508A, PIC12C509A
  • PIC12CE518, PIC12CE519
  • PIC12C671, PIC12C672, PIC12CE673, PIC12CE674
  • PIC12F508, PIC12F509 Уловка программирования PIC12F508 / 509 с помощью IC-Prog
  • PIC12F629, PIC12F635 (1) (2) , PIC12F675, PIC12F683 (2)
  • PIC16C505
  • PIC16C61, PIC16C62A, 16C62B (3) , PIC16C63, PIC16C63A
  • PIC16C64A, PIC16C65A, PIC16C65B, PIC16C66, PIC16C67
  • PIC16C620, PIC16C620A, PIC16C621, PIC16C621A, PIC16C622, PIC16C622A
  • PIC16CE623, PIC16CE624, PIC16C625
  • PIC16F627, PIC16F628
  • PIC16F627A (2) , PIC16F628A, PIC16F648A
  • PIC16F630, PIC16F636 (2) , PIC16F676, PIC16F684 (2) , PIC16F688 (2)
  • PIC16C710, PIC16C711 (3) , PIC16C715 (6)
  • PIC16C712, PIC16C716 (3)
  • PICPIC16C71, PIC16C72, PIC16C72A, PIC16C73A, PIC16C73B, PIC16C74A, PIC16C74B, PIC16C76, PIC16C77
  • PIC16F72, PIC16F73, PIC16F74, PIC16F76, PIC16F77
  • PIC16C745 (3) , PIC16C765 (3)
  • PIC16C717, PIC16C770, PIC16C771 (7)
  • PIC16C773, PIC16C774
  • PIC16C781 (7) , PIC16C782
  • PIC16C923, PIC16C924
  • PIC16F818, PIC16F819
  • PIC16F83
  • PIC16C84
  • PIC16F84
  • PIC16F84A
  • PIC16F87 (2) , PIC16F88
  • PIC16F870 (8) , PIC16F871 (8) , PIC16F872, PIC16F873, PIC16F874 (4) , PIC16F876 (5) , PIC16F877 (5)
  • PIC16F873A (5) , PIC16F874A (5) , PIC16F876A, PIC16F877A
  • PIC18F1320, PIC18F2320, PIC18F4320
  • PIC18F242, PIC18F252, PIC18F442, PIC18F452
  • PIC18F248, PIC18F258, PIC18F448, PIC18F458 (3)
  • PIC18F4539 (3)

(1) Хотя программирование завершается нормально, после программирования есть случай, когда считывание / проверка с устройства становится невозможным.Пожалуйста, не волнуйтесь. Программный код написан нормально. Причем стирание и перепрограммирование можно нормально.

(2) IC-Prog (1.05D) еще не поддерживает эти устройства. Пожалуйста, используйте WinPic.

(3) Поскольку повышение напряжения программирования «Multi PIC Programmer» меньше требуемого значения, эти устройства не могут войти в режим программирования. Если MOS-FET временно удален, а VDD всегда включен, или он соединяет затвор и исток MOS-FET с помощью тестового провода и т. Д.или подключает переключатель между вентилем и GND, запись программы будет выполняться в обычном режиме.

(4) WinPic не может программировать / проверять / стирать эти устройства с помощью Multi PIC Programmer 5V2. Пожалуйста, используйте IC-Prog.

(5) IC-Prog не может программировать / проверять / стирать эти устройства с помощью Multi PIC Programmer 5V2. Пожалуйста, используйте WinPic.

(6) PIC 16C715 — специальное устройство с памятью программ длиной 16 бит / слово и памятью конфигурации.Хотя это устройство включено в список поддерживаемых устройств WinPic и IC-Prog, они не могут программировать это устройство на практике. Более того, если попытаться программировать, бит защиты кода будет установлен и применен к пустому устройству (если вы собираетесь программировать дорогостоящий тип JW PIC16C715, будет невозможно вечно перепрограммировать, даже если после УФ-стирания!).

(7) Эти 20-контактные устройства имеют разводку выводов, отличную от других устройств. Используйте метод ICSP или используйте адаптер для программирования этих устройств.

(8) Эти устройства можно хорошо запрограммировать, но нельзя стереть. Для стирания этих устройств используйте вышеупомянутый метод (3) . Если программирование идет не так, заранее выполните команду «Стереть все» с помощью IC-Prog.

Я не тестировал эти серые устройства, потому что их у меня нет.

Multi PIC Programmer 5V2 — альтернативная версия (добавлено: 2005-02-06 JST)

Одна из проблем Multi PIC Programmer 5V2 заключается в том, что трудно найти 2SJ377 и его заменители.2SJ377 можно купить в RS Components. IRFR9024 (D-PAK) можно купить в Digi-key. Что касается BSP254A, неясно, хорошо ли он работает, даже если он будет найден.
Поэтому в конце прошлого года я лишь немного улучшил Multi PIC Programmer 5V2. Это схема, которая может использовать PNP-транзистор общего назначения вместо P-канального MOSFET.
SW2 — это заголовок для монтажа на плате (3 или 2 контакта, однорядная вилка) и шунтирующий шунт (закорачивающая перемычка).
Этот программатор Multi PIC работает как обычный программатор JDM.Когда переключатель 2 включен, этот программатор Multi PIC переключается в режим VPP-FIRST.
Переключатель-2 будет использоваться только тогда, когда выбраны опции INTOSC и внутреннего MCLR (PIC12Cxxx, PIC12CExxx, PIC12F629, и PIC12F675 и т. Д. Для получения более подробной информации см. Лист данных каждого PIC).
Я построил его из компонентов, которые можно будет купить даже в вашей стране. Хотя я протестировал несколько устройств, пока он работает хорошо.
На схемах и компоновках печатных плат есть кое-что с другим подключением R5.Не обращайте на это внимания, потому что это не должно быть связано с работой оборудования.

Вышеупомянутое примечание (3) не применяется к этой альтернативной версии программатора.

Схемы и макеты печатных плат для альтернативной версии можно скачать с сайта Ham Radio India.

Загрузить

Поскольку вопрос, который мне часто задают, касался многих вопросов о печатной плате и P-канальном MOS-FET, я нарисовал следующую печатную плату и другие.
Размер печатной платы составляет минимум 100 мм x 37,5 мм. Расстояние между первым выводом и выводом №20 разъема ZIF составляет 48,26 мм.
Если файл PDF печатается меньше или больше, чем ожидалось (например, 90% от исходного размера) из продукта Adobe Acrobat (Adobe Reader или Adobe Acrobat), выполните одно или несколько из следующих действий:

————————————————- ————————————

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

Выберите «Файл»> «Печать» и выполните одно из следующих действий:

— В Acrobat 6.x, выберите «Выбрать источник бумаги по размеру страницы PDF» и нажмите «ОК».

— В продукте Acrobat 5.x:

1. Щелкните Дополнительно.

2. Выберите «Выбрать выходной лоток по размеру страницы PDF».

3. Щелкните OK, чтобы закрыть диалоговое окно Параметры печати, а затем щелкните OK, чтобы напечатать.

—————————————— ———————————————

PIC MCU JDM Programmer для Microchip MCU / PIC Programmer Бизнес и промышленные микроконтроллеры и программаторы ponycobandhorsesaddles.com

Программатор PIC MCU JDM для микроконтроллеров микрочипа / Программатор PIC Бизнес и промышленные микроконтроллеры и программисты ponycobandhorsesaddles.com

Программатор PIC MCU JDM для микроконтроллеров микрочипов / программатор PIC, программист для микрочипов MCU / PIC Программист PIC MCU JDM, без необходимости во внешнем блоке питания, Поддерживает Windows 2000 и XP Может использоваться с программным обеспечением IC. Поддерживает следующие микрочипы: X-075, это совершенно новый и упакованный в штучную упаковку микрочип JDM PIC программатора 16F84 с 40 и 18 гнездами zif. Этот программатор подключается через RS- 232 и получает питание прямо отсюда.для Microchip MCU / PIC Programmer PIC MCU JDM Programmer.

Программатор PIC MCU JDM для программатора Microchip MCU / PIC

Креативный акриловый монитор Доска для заметок Компьютерная карта Блокнот для заметок l, 2 Новый NSK LM501349 LM501310 Подшипник дифференциала колеса / гоночная чашка / конус, Hampton Products International V150BL Черный сверхмощный пневматический дверной доводчик. Динамик для оповещения, 15 Вт, желто-коричневый ZORO SELECT 3AXC8, штепсельная вилка США 21 В, 2 А, адаптер зарядного устройства переменного / постоянного тока для литий-ионных аккумуляторов 5S 18650.8902-0155 СТАНДАРТНЫЙ ИСПЫТАТЕЛЬНЫЙ БЛОК ROCKWELL 35-55HRC. SQUARE D EDB34035 3-ПОЛЮСНЫЙ ВЫКЛЮЧАТЕЛЬ EDB, 35 А, ГАРАНТИЯ 1 ГОД. 8-миллиметровый 3D-принтер ось хромированный гладкий стержень стальной линейный рельс Длина вала случайная. Токарный станок с ЧПУ C32 ER32 200L Цанговый патрон ER32 UM Державка с прямым удлиненным хвостовиком, Nibco 884, латунь, красная, DWV P-Trap, труба 1-1 / 2 дюйма. 10 шт. M3 с шестигранной резьбой, латунная распорная втулка, Стойка с внутренней резьбой, латунная резьба 50 шт. Комплект светодиодных ламп 20 см Предварительно подключенная лампочка 12 В постоянного тока Новинка, никогда не выйдет из строя! HHO и h3 Flashback Arrestor 3-7 LPM.ПАРТИЯ ИЗ 3 44 НЕОПРЕНОВЫХ ЛЕНТЫ ДЛЯ КУРТКИ # 8261 0,75 » X 0,030 » X 30 футов, 5 шт. AM29F040B-90PC AM29F040B ИС с флеш-памятью AMD DIP-32, 50 шт. 330 мкФ 10 В 105 ° C электролитический конденсатор 6×11 мм, полностью латунное настенное крепление для ванной комнаты Designer Rainbow Выход воды из носика для ванны, 7 Вт NOS NEW NTE Electronics NTE1115 Усилитель мощности звука на интегральной схеме, 2 рулона герметизирующей пленки для чашек 2 * 4000 чашек Φ95-105 мм Безвкусный нетоксичный сейф, НОВАЯ КАТУШКА ЗАЖИГАНИЯ НИЗКОГО НАПРЯЖЕНИЯ для зажигалки. На складе США 20 шт. DS-213 Самовосстанавливающийся моментальный красный кнопочный переключатель SPST AC125V 2A.128728A1 Комплект уплотнений гидроцилиндра наклона для корпуса 1845C 1840 1835 1845B 1835C, 10X 1A 125V Роликовый рычажный привод с микропереключателем SPDT Sub Miniature JKHWC, БЕЗОПАСНОСТЬ — МОЯ ОТВЕТСТВЕННОСТЬ НАКЛЕЙКА НА БЕЗОПАСНЫЙ НАКЛЕЙК ДЛЯ ИНСТРУМЕНТОВ ФАКУЛЬТАТИЧЕСКАЯ НАКЛЕЙКА 160060 Вольт, 1 шт. НОВИНКА # A06A LW. Пружина возврата часов шириной 25 мм для импортных мельниц мостового типа для тяжелых условий эксплуатации. Буксировочная цепь V Уздечка 5/16 «x3 ‘ноги 15» J&T Hook Rollback Wrecker Carrier Hauler, 2×3 FRESH EGGS Красный, белый и синий баннер.Scotch Heavy Duty Shipping Packing Движущаяся коробка для диспенсера с прозрачной лентой в рулонах США.