Программатор JDM Clone надежность программатора простыми средствами.
JDM программатор это простая конструкция известная практически всем радиолюбителям, сталкивающимися когда-либо с проблемой прошивки PIC контроллеров. На форумах сказано уже немало о его преимуществах и недостатках и, как правило, рано или поздно большинство радиолюбителей сталкивается с проблемами прошивки контроллеров при использовании данного адаптера.Как правило, пользуются им новички для разовой прошивки контроллера для какого либо проекта, ремонта бытовой аппаратуры и пр. При всех своих преимуществах (это, прежде всего простота, компактность, питание без внешнего источника) классическая схема программатора обладала значительными недостатками, скажем, контроллер прошивался один раз, затем перезапись уже не работала, на многих компьютерах схема отказывалась работать, происходили непонятные ошибки при записи типа ошибка записи по адресу XXX.
Начнем с того, что посмотрим на реальные возможности данного программатора. На чем основаны все разговоры о неустойчивой работе классического JDM адаптера. Тут ситуация такая: данный программатор работает неустойчиво в большинстве случаев по причине того, что параметры COM порта ПК и зависимость их от платы к плате делают проблематичным соблюдение точных временных параметров обмена данными с контроллером. Проблема при прошивке, как правило, упирается в тайминги обмена данными. Параметры обмена жестко завязаны производителями контроллеров, к этому привязаны протоколы обмена, которые поддерживают профессиональные платы.
Это значит, что такой программатор должен, как правило, содержать контроллер который обеспечивает правильную рабату протокола обмена и выдерживает временные интервалы. Если вы можете позволить себе такие средства программирования, то лучше купите такой адаптер — сэкономите нервы и контроллеры J, для тех же, кто решил усовершенствовать старый JDM программатор, рекомендую читать эту статью дальше.Для низковольтного режима программирования LVP достаточно 5в, однако не всегда возможно им воспользоваться могут быть не доступны все опции для изменения (фьюзы), возникают часто проблемы с перепрограммированием ранее записанных контроллеров, обычно просто не получается достучаться до микросхем со снятой опции программирование в режиме LVP .
Вот моя модификация JDM. Для увелечения
шелкните мышкой по кактинке.
Для программирования будем использовать софт WinPic800 на мой взгляд, самый лучший продукт для программирования PIC контроллеров простыми адаптерами. Данная программа имеет очень удобный и простой русифицированный пользовательский интерфейс. Программа позволяет выполнять операции для микроконтроллеров семейства PIC: чтения, записи, стирания, верификации FLASH и EEPROM памяти, установку битов конфигураций, а так же выполнять операции сравнения с записанным содержимым памяти. Программатор работает с любыми версиями программы WinPic800. Поддерживает большое количество современных контроллеров и регулярно обновляется, кроме того, имеет обширный список используемых адаптеров, можно менять ножки линий программирования в оболочке и пр.
После успешного завершения теста аппаратной части программатора, можно приступать к выполнению операций программирования.
Здравствуйте, ниже рассмотрим простые и простейшие программаторы, которые легко можно спаять.
Программатор для PIC12F629
Программатор для PIC16f630
Программатор для AVR AtTiny13 / 25
Программатор для микроконтроллера PIC16F84
Сложные:
Программатор для ATMEGA8 и ATtiny2313.
Про программирование AVR написал отдельную статью – прочитать можно здесь.
Для PIC есть среда разработки IDE MPLAB X – её можно установить или воспользоваться онлайн сервисом по следующей ссылке:
“https://www.mplab-xpresside.microchip.com/”
Как пользоваться онлай сервисом писал здесь: “https://gameforstreet.ru/prostye-i-prostejshie-programmatory-chast-2/”
Программатор для PIC12F629
Начинаем собирать следующую схему:Схема не сложная, за час соберёте. Несколько советов:
Для справки: аналоги транзистора 2n7000 – bs170, КП501, BSS138. При пайке транзисторов можно прогреть паяльник и непосредственно перед самой пайкой выключить его и припаять транзистор.
• длинная нога у светодиода это +.
• разводку ног транзистора можно найти в Интернете.
• провода к COM разъему припаивайте по цифрам. 1 это 1, 8 это 8. На картинке нарисован «папа», т.е. изображение зеркальное.
• + 5 вольт снимайте с USB порта. У USB разъема питание идет по крайним контактам. Где что ищите в Интернете. При подпайке не перепутайте местами провода, а то сожжете и всю свою схему, и COM порт.
• Перед подключением ещё раз всё тщательно проверьте.
Надеюсь всё у вас получилось и вы подсоединили программатор к компьютеру. У вас зажегся светодиод, ничего не задымилось, и компьютер не отключился. Если так, то всё вы собрали правильно и теперь надо запрограммировать микроконтроллер.
ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРА.
И так, вы спаяли программатор, и полны решимости, закончить начатое дело. Следующий шаг программирование микроконтроллера. Для программирования микроконтроллера вам необходимы:
• программа, с помощью которой вы будете заливать код прошивки в микроконтроллер.
• сама прошивка.
Скачать программу IC-Prog Software вместе с драйвером для windows XP можно с моего сайта – здесь. Просто распаковываем и запускаем прогу .
Или с официального сайта: сначала заходим на этот сайт http://www. ic-prog.com/ и из раздела DOWNLOAD скачиваем: IC-Prog Software 1.05E Multi-Lingual и не забываем скачать IC-Prog NT/2000 driver, который обеспечивает правильную работу программы под Win XP. Скачали, создаём на вашем жестком диске папку IC-Prog и распаковываем в неё оба архива. Запускаем IC-Prog.
При первом запуске, появится сообщение об ошибке, игнорируем его и переходим к конфигурации программы.
Выберите “Settings” >> “Options” >> вкладку “Language” >> установите язык “Russian” и нажмите “Ok”.
Согласитесь с утверждением “You need to restart IC-Prog now” (нажмите “Ok”).
Оболочка программатора перезапустится.
Заходим в “Settings” (Настройки) -> “Options” (Опции), далее делаем активной закладку “Общие” (“Misc”). В активном окне, выставляем галочки опциям “Enable NT/2000/XP Driver” и “Enable VCC control for JDM”.
Жмём ОК и программа должна перезапуститься. Если она не перезапустилась, выходите из программы и запускаете её заново. При повторном запуске сообщение об ошибке должно исчезнуть. Далее переходим к установкам самого программатора. Тип программатора выбираете как JDM
Programmer, интерфейсом указываете Windows API, ну и не забудьте правильно указать номер COM порта, к которому вы подключили спаянный программатор.
Всё, все подготовительные процедуры закончены, и можно переходить непосредственно к программированию. Вставляйте в панельку вашу микросхему(PIC 12F629), в верхнем правом углу, в ниспадающем меню выбирайте тип программируемого микроконтроллера ” PIC 12F629″ и нажимайте на кнопку “Прочитать схему” “Read All”(кнопка с изображением микросхемы и большой зелёной стрелки). Если вы спаяли схему с двумя светодиодами (один горит при включении питания, второй срабатывает при чтении/записи в микроконтроллер), то один из светодиодов должен заморгать, что говорит о правильности работы всей вашей схемы. По завершении считывания данных, вы увидите на экране код состоящий из сплошных “3FFF”. Перематываем на последнюю строчку и записываем (или запоминаем) последние четыре знака. Они должны отличаться от “3FFF” и в разных контроллерах это значение будет разным. Если же последние четыре знакоместа не отличны от “3FFF”, то значит у вас проблемы с программатором или даже с PIC-ом.
Если с этим всё в порядке, то продолжим процедуру. Заходим в “File” -> “Open” и загружаем нужную вам прошивку (файл должен быть с расширением HEX). Далее жмём кнопку “Program All”(находится рядом с кнопкой “Read All” и выглядит как микросхема с жёлтой молнией).
Программа поинтересуется у вас, действительно ли вы хотите запрограммировать устройство? Смело отвечайте “YES”.
Далее произойдёт считывание данных с вашего PIC-а, и программа снова задаст вопрос:
хотите ли вы использовать данные из файла с прошивкой? ВНИМАНИЕ!!! Тут надо ответить “NO”, ибо, дав положительный ответ(“YES”), вы перезапишите те самые последние четыре знакоместа(OSCCAL) и выведите микроконтроллер из строя. (Конечно это не большая беда, и всё можно вернуть обратно, ведь вы записали эти важные четыре символа. ) Но вы же ответили “NO”, и программа начала записывать в ваш PIC прошивку. По завершении записи обязательно идёт проверка, и если по её завершении, никаких сообщений об ошибках не последовало, то можете поздравить себя. Вы всё сделали как надо и запрограммировали микроконтроллер. Теперь нужно запаять его в правильное место и наслаждаться проделанной работой.
Вот что получилось у меня, использовал вместо резисторов – подстроечные резисторы (потенциометры) 103,473,2к2:
Выше мы научились создавать и прошивать микроконтроллер, а где раздобыть Hex файл и, что простенького можно сделать – читайте ниже:
Микросхемы PIC12F675 и PIC12F629 очень похожи, поэтому прошивки для них одинаковые.
Hex-файл и схема мигающий светодиод на PIC12F629:
Скачать hex файл можно – здесь.
Или здесь:
http://arduinokit.ru/wp-content/uploads/2014/03/PIC12F675_Blinking_LED.zip
Hex файл и схема Светофор на PIC12F629:
Скачать pdf файл со схемой сборки светофора и принципом работы можно – здесь.
Скачать hex файл можно – здесь.
Программатор для микроконтроллера PIC16F320:
Вынес отдельной статьей – прочитать можно здесь.
Программирование контроллеров и программатор для AVR AtTiny13 / 25
Ниже рассмотренно программирование AVR AtTiny13.
Для начала вам понадобится программа.
Можно использовать. Устанавливаем PonyProg скачать её можно с моего сайта – здесь.
Теперь понадобится программатор
Я использовал так называемые “Пять проводов”.
Макет выглядит так.
Как работать с ПО
После установки и запуска возникнет такое окно.
Далее программатор сообщит, что надо выполнить калибровку и установить тип адаптера.
Калибровка выполняется автоматически и там показывать нечего.
Чтобы произвести калибровку, заходим в пункт Setup и подпунк Colibrovca.
Далее заходим в пункт Setup и подпункт I/O port setup и выставляем тип адаптера и др параметры.
Далее открываем HEX файл.
Для этого выбираем пункт File, подпункт Open program (Flash) content file.
Скачать hex файл мигающий светодиод можно – здесь.
Схема соединения следующая:
Фьюзы менять не обязательно и ненужно.
Порт светодиода: PB2
Резистор: 220 Ом
Ещё одна схема с AVR AtTiny13.
Скачать hex файл дверной звонок можно – здесь.
Жмем кнопку Write Program Memory (пятая слева кнопка)
И радуемся, что микросхема удачно зашилась.
Программатор для микроконтроллера PIC16F84:
Для прошивки микроконтроллера PIC16F84 можно собрать простейший JDM программатор.
БОЛЕЕ СЛОЖНЫЕ:
Программатор для ATMEGA8 и ATtiny2313.
Для самых ходовых у радиолюбителей микроконтроллеров семейства AVR есть простой для сборки программатор.
Схема программатора очень проста, для питания микроконтроллера требуется дополнительный источник питания. Для себя я спаял небольшой длинны провод, подключающий программатор к порту USB.
Номера выводов для подключения линий программатора отображены на рисунке
Ps: Скачать звук.
Программатор PIC на базе JDM2Четверг, 20 октября 2022 г. / Ибрар Айюб
Схема и компоновка обновленного программатора JDM2 PIC. Включает фильтр часов и данных, делитель напряжения Vpp для современных микроконтроллеров PIC (например, USB PIC 18F2455/4455).
До посещения таких сайтов, как www.hackaday.com и www.makezine.com/blog, я работал только с линейкой микроконтроллеров Amtel/AVR. Увидев все крутые проекты, которые люди делали с PIC от Microchip, я ДОЛЖЕН был иметь программатор для PIC. Около года назад я сделал свой первый программатор PIC на основе дизайна uJDM (http://www.jdm.homepage.dk/newpic3.htm). Этот программатор использует 6 общих компонентов. Хотя по ссылке написано только «16F84(a)», я без проблем использовал его для более современных (и более дешевых) процессоров 16F628(a). Этот программатор служил мне очень хорошо, но он ограничен (менее) 18-контактными PIC с программным напряжением Vpp 13 вольт.
Это руководство описывает мой новый дизайн, который программирует 8/14/18/28/40-контактные PIC. Схема основана на программаторе JDM2 (http://jdm.homepage.dk/newpic.htm) с двумя улучшениями: фильтрация тактовой частоты и линии данных и выбор напряжения программирования.
ZIP-архив содержит все файлы проекта. Схема и макет uJDM также включены.
Часы и фильтр данных:
Новые PIC программируются так быстро, что линии часов и данных могут испытывать перекрестные помехи. По словам автора программного обеспечения для программирования WinPic (http://www.qsl.net/dl4yhf/winpic/):
«На форуме Microchip была заметка (от Olin Lathrop) о программировании dsPIC30F201, предлагающая поставить 22..47 pF на линии PGD и PGC на землю рядом с целевым чипом. Кроме того, подключите резистор на 100 Ом последовательно с линией PGD между целевым чипом и крышкой. Резистор и колпачок на линии PGD фильтруют фильтр нижних частот сигнала PGD, когда он управляется целевым чипом. Это снижает высокие частоты, которые могут попасть в линию PGC. Колпачок на линии PGC делает ее менее восприимчивой к сопутствующим шумам. Позже мы узнали, что это важное замечание относится и к семейству PIC18Fxxxx. Пользователь PIC-программатора Velleman сообщил об успешном использовании PIC18F4520 после добавления 2 конденсаторов по 33 пФ и последовательного резистора на 100 Ом». (ССЫЛКА: http://www.qsl.net/dl4yhf/winpic/#pgd_pgc_filtering)
Это примечание относится в первую очередь к программированию PIC через кабель, когда они впаяны в схему. При использовании этого типа программирования лишние конденсаторы и резистор должны находиться рядом с целевой микросхемой – наличие их на программаторе не помогает:
«Это означает, что эта проблема не может быть решена на конце кабеля программатора. Никакие умные схемы у программиста не могут решить эту проблему. Это должно быть обработано на целевой цепи. (ССЫЛКА: см. перекрестные помехи PGD-PGC на http://www.embedinc.com/picprg/icsp.htm)
Я подчеркиваю это, чтобы было ясно, что вы НЕ МОЖЕТЕ подключить заголовок ICSP к этой плате без проблем. Я включил фильтры в свой новый программатор, потому что трассировки данных/часов длинные. Конденсаторы расположены в цепи так, что их можно исключить без ослабления дорожки. Резистор можно заменить перемычкой.
Подробнее: Программист PIC на базе JDM2
Категории: Программатор микроконтроллеров Проекты, Проекты
Метки: jdm2, фото
Содержание
|