Предлагаемая вашему вниманию статья рассказывает о том, как изготовить несложный JDM программатор для программирования
микроконтроллеров PIC серий 16F и 12F.
 | Выбор схемы программатораНачало работы с
микроконтроллерами тесно связано с необходимостью приобретения или сборки программатора своими руками. Вот только возможность приобрести такое
устройство не всегда представляется возможным: кто-то далеко живёт от
областного центра, кто-то не доверяет интернет-магазинам...
Со мною сложилась
идентичная ситуация - для сборки "настоящего" программатора своими руками за
деталями надо отправляться в обл.центр, а это 180 км. Именно поэтому и было
решено собрать простенький, "на первое время", JDM программатор, подключаемый к COM-порту компьютера и оттуда же получающий питание.
После нескольких неудач
наконец был найден вариант, который не отказался работать на моём
"железе", на фото вы видите его схему. Судя по надписям, этот
программатор предназначен для работы с PIC16F84A и 24C16, но с 16F628A он
справляется так же легко.
О деталях:
диод 1N4148 - 3 шт.,
можно заменить на КД521, КД522;
стабилитрон на 5,1 В;
стабилитрон на 12,5-13
В;
электролитический
конденсатор 100,0 мкФ 16 В;
конденсатор 100 н (0,1
мкФ);
резистор 10 К - 2 шт.;
резистор 1,5 К;
транзистор BC547, можно
заменить на КТ 315, КТ 3102 и т.д.;
панелька для микросхем
на 18 выводов;
текстолитовая плата
35x40 мм; разъём DB-9F (розетка, или
"мама").
|
 | Разработка печатной платыПри разработке платы не
стоит располагать панель вблизи габаритных деталей, чтобы не затруднять процесс
установки-снятия корпуса программируемой микросхемы.
Если в наличии не
нашлось стабилитрона на 13 В, его можно составить из двух параллельно
включённых - на рисунке это D1.1 и D1.2.
Распечатываем плату и
проверяем, не мешают ли друг другу реальные радиодетали. |
 | Отзеркалив изображение и убрав маски с контурами деталей, распечатываем
шаблоны и изготавливаем плату. |
 | Сборка программатораДля
того, чтобы при работе не мешались "лишние" детали, используем
SMD-шные резисторы и диоды. Для сравнения: в 3-мм отверстия по краям платы
входит только палочка от спички, а на месте её головки помещаются 3-4
чип-резистора. |
 | Устанавливаем оставшиеся
детали.
После завершения
окончательной сборки плату тщательно моем растворителем, ацетоном или иными
средствами - если этого не сделать, программатор может не заработать (проверено
на собственном опыте). |
 | Итак, JDM программатор
готов, можно приступать к работе.
Обращаем ваше внимание:
микросхема вставляется ключом к краю платы, т.е. влево. |
 | Как уже было сказано
выше, с прошивкой микроконтроллеров серии 16F проблем не возникло - одна из них
изображена на фото. Но возникла необходимость прошить микроконтроллер 12F675, а
разводка платы, заявленная в схеме, её не поддерживает.
После сотни часов поиска
схем и сборки-разборки нескольких вариантов программаторов именно для этого
микроконтроллера уже было опустились руки (вместе с настроением и утерей желания
вообще что-то делать), как в голову пришла одна идея - я просто сравнил используемые при программировании выводы
обеих микросхем. Оказалось, что в данном случае можно изготовить переходник, и,
может быть, возможность работы с PIC12F675 всё-таки появится. |
 | В общем, сравнив данные,
получаем такую картину:
MCLR
- 4 pin (PIC16F84A) - 4 pin (PIC12F675)
CLOCK
-12 pin (PIC16F84A) - 6 pin (PIC12F675)
DATA-
13 pin (PIC16F84A) - 7 pin (PIC12F675)
OSC1
- 16 pin (PIC16F84A) - 2 pin (PIC12F675)
VSS
- 5 pin (PIC16F84A) - 8 pin (PIC12F675)
VDD
- 14 pin (PIC16F84A) - 1 pin (PIC12F675).
Исходя из этих данных,
делаем плату-переходник. |
 | Устанавливаем PIC в
гнездо и подсоединяем программатор к 9-штырьковому разъёму RS-232 на тыльной стороне
компьютера.
Запускаем программу
прошивки - всё работает. |
 | Для тех, кто с
микроконтроллерами столкнулся впервые, немного информации о работе с программой
WinPic800 и особенностях обращения с PIC12F675 ( а также PIC12F629) не помешает :)
Вставляем программатор с
установленным микроконтроллером в гнездо и запускаем программу. Открываем
Настройки и выбираем Адаптер. |
 | В
появившемся окне выбираем порт - в нашем случае COM1, JDM Programmer и нажимаем
Применить. |
 | Теперь
там же выбираем Программа. |
 | Отмечаем
галочками Проверка после программирования, Спрашивать подтверждение для
стирания и программирования, нажимаем Применить. |
 | Нажимаем на кнопку,
обозначенной как "1" и проверяем связь компьютера с программатором.
Затем нажимаем кнопку
"2" и определяем тип микросхемы - данные появятся в обозначенном
красным прямоугольником окне. |
 | Тип микроконтроллера
определился, нажимаем кнопку Читать всё. |
 | Поскольку проверяемый микропроцессор
новый, то на экране мы видим только одни нули, за исключением... |
 | ...самой последней записи. Эти четыре знака - калибровочная константа,
её утеря карается неадекватностью поведения микроконтроллера или даже полной
его неработоспособностью - правда, только в случаях работы с применением
встроенного кварцевого резонатора; в схемах с внешним кварцем микроконтроллеры
с утерянной константой вполне работоспособны. |
 | Чтобы не потерять
значение константы, можно записать её в компьютере, на бумаге, но вот так -
приклеить скотчем этикетку с цифрами - будет надёжнее, особенно, если запас
этих PICов не ограничивается двумя-тремя экземплярами.
О том, как
программировать микроконтроллер с помощью программы WinPic800, будет рассказано
в следующей статье на примере изготовления одноканальной ИК системы
дистанционного управления. |