Вход на сайт

Зарегистрировавшись на сайте Вы сможете добавлять свои материалы






Программатор самодельный


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

Самодельный программатор для 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 будет невозможна. Чтобы записать программу в контроллер другого типа, достаточно перекинуть провода программатора в соответствии с рисунком №2, который приведён ниже.



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

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



Фото №3 - печатная плата программатора
Скачать исходник печатной платы для программы SprintLayout можно по этой ссылке:
pp_programmator.zip [17.67 Kb] (скачиваний: 1317)
При желании его можно изменить под свой тип PIC-контроллера. Для тех, кто решил оставить плату без изменений, выкладываю вид со стороны деталей для облегчения монтажа (рисунок №4).

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

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



Фото №5 - программатор в сборе
С этого момента, первый этап на пути к прошивке PIC-контроллера, подошёл к концу. Второй этап будет включать в себя подключение программатора к компьютеру и работу с программой IC-Prog.
К сожалению, не все современные компьютеры и ноутбуки способны работать с данным программатором ввиду банального отсутствия на них COM-портов, а те что установлены на ноутбуках не выдают необходимые для программирования 12В. Так что я решил обратится к своему первому ПК, который давным-давно пылился и ждал своего звёздного часа (и таки дождался).
Итак включаем компьютер и первым делом устанавливаем программу IC-Prog. Скачать её можно с сайта автора или по этой ссылке:
icprog105d.zip [432.25 Kb] (скачиваний: 1591)
Подключаем программатор к COM-порту и запускаем только что установленное приложение. Для корректной работы необходимо выполнить ряд манипуляций. Изначально необходимо выбрать тот тип контроллера, который собираемся шить. У меня это PIC12F675. На скриншоте №6 поле для выбора контроллера выделено красным цветом.

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

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



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

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



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

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



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

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



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

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



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

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



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

Повторюсь, что значение уникальное для каждой микросхемы и не обязательно должно совпадать с тем, что на рисунке. Многие по неопытности затирают эту константу и в последствии 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 - прошивка прошла успешно, можно расслабиться

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

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

Лучший самодельный программатор Скачать бесплатно для Windows

MyPlayCity.com 7

Загрузите самодельные поздравительные открытки бесплатно!

15 Прозрачная корпорация 556 Условно-бесплатное ПО

Нейропрограммист может изменять мозговую волну, используя захват мозговых волн.

5 Cypress MicroSystems 1,684 Бесплатное ПО

PSoC Programmer - это гибкое интегрированное приложение для программирования.

20 Altera Corporation 884 Бесплатное ПО

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

7 Кристиан Стадлер 1 964 Бесплатное ПО

PICPgm - это приложение, предназначенное для программирования микроконтроллеров PIC.

10 Foxpro Inc.504 Бесплатное ПО

FOXPRO Programmer - это утилита для программирования звуков игр.

1 Traxon Technologies Europe GmbH 100 Бесплатное ПО

The e: cue Programmer - это приложение для программирования творческих световых проектов.

6 Решетчатый полупроводник 166 Бесплатное ПО

Diamond Programmer использует интерфейс пользователя Diamond.

5 Инструменты Техаса 757 Бесплатное ПО

Программатор флэш-памяти для ВЧ-устройств на кристалле компании Texas Instruments.

2 Frontline Electronics Pvt Ltd. Салем. Индия. 7 Бесплатное ПО

Дополнительная карта к стандартному персональному компьютеру через последовательный порт.

5 Texas Instruments Incorporated 739 Бесплатное ПО

LM Flash Programmer - бесплатная утилита для программирования флэш-памяти.

1 МикроЭлектроника 93 Коммерческий

При подключении к прототипу устройства программист становится IN-SYSTEM программистом.

CCS 9 Условно-бесплатное ПО

Mach X Programmer - это полнофункциональный программатор устройств.

2 Компания Megawin Technology Co., Ltd. 18 Бесплатное ПО

Megawin 8051 ISP-ICP Programmer - это бесплатный программатор.

Equinox Technologies 5 Бесплатное ПО

- это программное обеспечение для программиста Micro-Pro (PLUS).

KDI 31 год Бесплатное ПО

KDI Universal Programmer 3.0 - это профессиональный недорогой программатор параллельных вычислений.

2 Батроникс 5 Бесплатное ПО

Flash MC Programmer I - это быстрый программатор параллельного порта.

10 Uc Micro Systems 52 Бесплатное ПО

Программатор ucFlashUSB - доступный, надежный и быстрый программатор.

7 РОБОКИТЫ ИНДИЯ Бесплатное ПО

8051 USB Programmer - это недорогой полнофункциональный программатор.

Transtronics, Inc. 1 Бесплатное ПО

Карманный программатор начинается с программатора - в зависимости от типа микросхемы.

70 Команда HandBrake 82 132 Открытый источник

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

.

Самодельный программатор Скачать бесплатно для Windows

MyPlayCity.com 7

Загрузите самодельные поздравительные открытки бесплатно!

15 Прозрачная корпорация 556 Условно-бесплатное ПО

Нейропрограммист может изменять мозговую волну, используя захват мозговых волн.

5 Cypress MicroSystems 1,684 Бесплатное ПО

PSoC Programmer - это гибкое интегрированное приложение для программирования.

20 Altera Corporation 884 Бесплатное ПО

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

7 Кристиан Стадлер 1 964 Бесплатное ПО

PICPgm - это приложение, предназначенное для программирования микроконтроллеров PIC.

10 Foxpro Inc.504 Бесплатное ПО

FOXPRO Programmer - это утилита для программирования звуков игр.

1 Traxon Technologies Europe GmbH 100 Бесплатное ПО

The e: cue Programmer - это приложение для программирования творческих световых проектов.

6 Решетчатый полупроводник 166 Бесплатное ПО

Diamond Programmer использует интерфейс пользователя Diamond.

5 Инструменты Техаса 757 Бесплатное ПО

Программатор флэш-памяти для ВЧ-устройств на кристалле компании Texas Instruments.

2 Frontline Electronics Pvt Ltd. Салем. Индия. 7 Бесплатное ПО

Дополнительная карта к стандартному персональному компьютеру через последовательный порт.

5 Texas Instruments Incorporated 739 Бесплатное ПО

LM Flash Programmer - бесплатная утилита для программирования флэш-памяти.

1 МикроЭлектроника 93 Коммерческий

При подключении к прототипу устройства программист становится IN-SYSTEM программистом.

CCS 9 Условно-бесплатное ПО

Mach X Programmer - это полнофункциональный программатор устройств.

2 Компания Megawin Technology Co., Ltd. 18 Бесплатное ПО

Megawin 8051 ISP-ICP Programmer - это бесплатный программатор.

Equinox Technologies 5 Бесплатное ПО

- это программное обеспечение для программиста Micro-Pro (PLUS).

KDI 31 год Бесплатное ПО

KDI Universal Programmer 3.0 - это профессиональный недорогой программатор параллельных вычислений.

2 Батроникс 5 Бесплатное ПО

Flash MC Programmer I - это быстрый программатор параллельного порта.

10 Uc Micro Systems 52 Бесплатное ПО

Программатор ucFlashUSB - доступный, надежный и быстрый программатор.

7 РОБОКИТЫ ИНДИЯ Бесплатное ПО

8051 USB Programmer - это недорогой полнофункциональный программатор.

Transtronics, Inc. 1 Бесплатное ПО

Карманный программатор начинается с программатора - в зависимости от типа микросхемы.

70 Команда HandBrake 82 132 Открытый источник

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

.

Самодельный программатор isp Скачать бесплатно для Windows

2 Компания Megawin Technology Co., Ltd. 18 Бесплатное ПО

Megawin 8051 ISP-ICP Programmer - это бесплатный программатор.

6 Nuvoton Technology Corp. 2 Бесплатное ПО

Nuvoton 8051 ISP-ICP Programmer - это программное обеспечение для настройки.

2 Frontline Electronics Pvt Ltd. Салем. Индия. 7 Бесплатное ПО

Дополнительная карта к стандартному персональному компьютеру через последовательный порт.

4 Uc Micro Systems 9 Бесплатное ПО

Программатор для флэш-памяти серий PIC 12, 16 и 18, микроконтроллеров OTP и т. Д.

67 MCS Electronics 7,551 Демо

BASCOM AVR - очень мощный компилятор для микроконтроллеров AVR.

1 Канда 3 Бесплатное ПО

Этот программный пакет предназначен для программистов AVR ISP для параллельного порта Atmel и Kanda.

50 Клаудио Ланконелли 8 210 Открытый источник

Ponyprog - очень мощный программатор микрочипов и микроконтроллеров.

3 Камани 87 Бесплатное ПО

KamPROG for AVR - программист разработки / производства, поддерживающий большинство интернет-провайдеров.

1 МикроЭлектроника 93 Коммерческий

При подключении к прототипу устройства программист становится IN-SYSTEM программистом.

CCS 9 Условно-бесплатное ПО

Mach X Programmer - это полнофункциональный программатор устройств.

Equinox Technologies 5 Бесплатное ПО

- это программное обеспечение для программиста Micro-Pro (PLUS).

KDI 31 год Бесплатное ПО

Универсальный программатор KDI 3.0 - профессиональный недорогой параллельный программист.

2 Батроникс 5 Бесплатное ПО

Flash MC Programmer I - это быстрый программатор параллельного порта.

10 Uc Micro Systems 52 Бесплатное ПО

Программатор ucFlashUSB - доступный, надежный и быстрый программатор.

7 РОБОКИТЫ ИНДИЯ Бесплатное ПО

8051 USB Programmer - это недорогой полнофункциональный программатор.

Transtronics, Inc. 1 Бесплатное ПО

Карманный программатор начинается с программатора - в зависимости от типа микросхемы.

70 Команда HandBrake 82 132 Открытый источник

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

17 Алекс Тюринг 12,663 Открытый источник

Превратите свои домашние видеоролики в DVD-диски профессионального качества.

.

Лучший программатор самоделок Скачать бесплатно для Windows

Лучший программист Самоделка

в Software Informer

Programmer's Notepad - текстовый редактор, специально разработанный для программистов.

Блокнот программиста

- это ...полезно для программистов, тестировщиков ПО

MyPlayCity.com 7

Загрузите самодельные поздравительные открытки бесплатно!

15 Прозрачная корпорация 556 Условно-бесплатное ПО

Нейропрограммист может изменять мозговую волну, используя захват мозговых волн.

5 Cypress MicroSystems 1,684 Бесплатное ПО

PSoC Programmer - это гибкое интегрированное приложение для программирования.

20 Altera Corporation 884 Бесплатное ПО

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

7 Кристиан Стадлер 1 964 Бесплатное ПО

PICPgm - это приложение, предназначенное для программирования микроконтроллеров PIC.

Подробнее Лучший программатор Самоделка

Лучший программист Самоделка во введении

10 Foxpro Inc. 504 Бесплатное ПО

FOXPRO Programmer - это утилита для программирования звуков игр.

1 Traxon Technologies Europe GmbH 100 Бесплатное ПО

The e: cue Programmer - это приложение для программирования творческих световых проектов.

6 Решетчатый полупроводник 166 Бесплатное ПО

Diamond Programmer использует интерфейс пользователя Diamond.

5 Инструменты Техаса 757 Бесплатное ПО

Программатор флэш-памяти для ВЧ-устройств на кристалле компании Texas Instruments.

2 Frontline Electronics Pvt Ltd.Салем. Индия. 7 Бесплатное ПО

Дополнительная карта к стандартному персональному компьютеру через последовательный порт.

5 Texas Instruments Incorporated 739 Бесплатное ПО

LM Flash Programmer - бесплатная утилита для программирования флэш-памяти.

Дополнительные заголовки, содержащие лучшие самодельные программаторы

1 МикроЭлектроника 93 Коммерческий

При подключении к прототипу устройства программист становится IN-SYSTEM программистом.

CCS 9 Условно-бесплатное ПО

Mach X Programmer - это полнофункциональный программатор устройств.

2 Компания Megawin Technology Co., Ltd. 18 Бесплатное ПО

Megawin 8051 ISP-ICP Programmer - это бесплатный программатор.

Equinox Technologies 5 Бесплатное ПО

- это программное обеспечение для программиста Micro-Pro (PLUS).

KDI 31 год Бесплатное ПО

KDI Universal Programmer 3.0 - это профессиональный недорогой программатор параллельных вычислений.

2 Батроникс 5 Бесплатное ПО

Flash MC Programmer I - это быстрый программатор параллельного порта.

10 Uc Micro Systems 52 Бесплатное ПО

Программатор ucFlashUSB - доступный, надежный и быстрый программатор.

7 РОБОКИТЫ ИНДИЯ Бесплатное ПО

8051 USB Programmer - это недорогой полнофункциональный программатор.

Transtronics, Inc. 1 Бесплатное ПО

Карманный программатор начинается с программатора - в зависимости от типа микросхемы.

70 Команда HandBrake 82 132 Открытый источник

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

Massoth Elektronik GmbH

1 Whisper Technology Limited 232 Условно-бесплатное ПО

1 ECI Telecom 138

.

Смотрите также