Як зробити простий програматор для мікроконтролерів pic своїми руками, майстер-клас з фото, самі


Вибір схеми програматора
Початок роботи з мікроконтролерами тісно пов'язане з необхідністю придбання або збірки програматора своїми руками. Ось тільки можливість придбати такий пристрій не завжди представляється можливим: хтось далеко живе від обласного центру, хтось не довіряє інтернет-магазинах.
Зі мною склалася ідентична ситуація - для збірки "справжнього" програматора своїми руками за деталями треба вирушати в обл.центрах, а це 180 км. Саме тому і було вирішено зібрати простенький, "на перший час", JDM програматор, що підключається до COM-порту комп'ютера і звідти ж отримує живлення.
Після кількох невдач нарешті був знайдений варіант, який не відмовився працювати на моєму "залозі", на фото ви бачите його схему. Судячи з написів, цей програматор призначений для роботи з PIC16F84A і 24C16, але з 16F628A він справляється так само легко.
діод 1N4148 - 3 шт. можна замінити на КД521, КД522;
стабілітрон на 5,1 В;
стабілітрон на 12,5-13 В;
електролітичний конденсатор 100,0 мкФ 16 В;
конденсатор 100 н (0,1 мкФ);
резистор 10 К - 2 шт .;
транзистор 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, буде розказано в наступній статті на прикладі виготовлення одноканальній ІК системи дистанційного керування.