AVR JTAG Programmer- є дуже спрощеним варіантом професійного програматора AVR JTAG ICEвід компанії Atmel. І на відміну від свого професійного побратима може бути зібраний буквально на "колінках" і вартість його набагато нижче. А якщо бути ще точніше, то цей програматор не що інше як китайська репліка, що має позначення як AVR JTAGпід брендом LCSOFTта яку можна без проблем купити у зарубіжних інтернет магазинах та аукціонах. Цей програматор з базовою прошивкою призначений для програмування мікроконтролерів фірми Atmel за інтерфейсом JTAG. p align="justify"> Робочим середовищем для програматора є середовище розробки програмного забезпечення AVR Studio v4.xx. В принципі в інтернеті можна зустріти й інші програми сторонніх розробників. Однак варто відзначити, що останні серії мікроконтролерів йому не доступні, такі як серії AT90USB і внаслідок чого ці мікроконтролери запрограмувати не вдасться.

Після невеликого ліричного відступу варто розповісти, чому мій погляд упав на цей програматор. Справа в тому, що коли я робив свій проект Devboard Z80, то програмування мікроконтролера можна було тільки через JTAG інтрефейс. Тому в процесі роботи над проектом девборди я переглянув інтернет на предмет доступності програматора. І мій погляд зупинився на цьому недорогому програматорі. І все б нічого, але коли я зайнявся іншим своїм проектом, а саме розробкою комп'ютера ZXM-Zephyr, то не звернув увагу на те, що застосований мною мікроконтролер AT90USB1287 не підтримується цим програматором. Після невдалих пошуків в інтернеті на предмет можливого оновлення прошивки даного програматора було вирішено спробувати зробити самому прошивку і якусь простеньку програму для програмування мікроконтролера AT90USB1287 хоча б у рамках проекту ZXM-Zephyr.

Першим моїм кроком у вивченні цього програматора стала замальовка його схеми та створення малюнка друкованої плати. Далі пошукавши в інтернеті інформацію про те, як програмувати мікроконтролери через JTAG, знайшов два проекти з прикладами, які лягли в основу моєї прошивки для цього програматора. Після створення прошивки написав невелику утиліту під операційну систему Windows. Всі свої дослідження з цієї теми я вирішив викласти на свою сторінку, можливо вони знадобляться ще комусь.

Наприкінці хочеться додати, що це програматор насправді став деяким конструктором, з допомогою якого можна програмувати як мікроконтролери фірми Atmel, але й інших фірм. Або навіть інші мікросхеми з інтрефейсом JTAG. Потрібно тільки докласти трохи зусиль - написати необхідну під себе прошивку.

Коротка специфікація: Проект:

1. Схема електрична принципова у форматі P-CAD 2002 – скачати
2. Друкована плата у форматі P-CAD 2002 – скачати
3. Електрична та монтажна схеми, перелік елементів у форматі pdf - скачати
4. Бібліотека елементів формату P-CAD 2002 – скачати


Прошивки:

1. Прошивка мікроконтролера ATmega16А штатна, якою зашиваються при виробництві китайських реплік - завантажити
2. Прошивка мікроконтролера ATmega16А, що знаходилася у пакеті AVR Studio v4.17. - завантажити
3. Прошивка мікроконтролера ATmega16А для програмування мікроконтролерів фірми Atmel та які мають інтерфейс JTAG. Важливе зауваження - необхідна зовнішня програма управління! Версія прошивки v01.00 -

Ще одним нескладним, у плані виготовлення, є програматор COM. За умови використання альтернативного режиму COM порту Bitbang, відпадає необхідність перетворення інтерфейсу RS232 COM порту в SPI, необхідний для програмування. Залишається лише привести рівні сигналів COM порту (-12В, +12В) до необхідних (0, +5В). Це і робить
схема COM програматора для AVR мікроконтролерів:

Ця схема програматора досить поширена і відома як програматор Громова. Назва походить від автора програми Геннадія Громова, який і запропонував таку схему.

Щоб зібрати програматор Громова, нам потрібно наступне:

Діоди КД522, КД510, 1N4148 або подібні до них. Резистори можна використати будь-які, які знайдете. Як шлейф можна використовувати IDE шлейф. При підключенні шлейфу, для стійкішої роботи програматора, кожен «сигнальний» провід повинен чергуватись із «земляним» проводом. Це дозволить зменшити рівень перешкод, що наводяться в лініях, і за рахунок цього збільшити довжину програмуючого дроту. Довжина шлейфу повинна бути в межах 50 см. Ще потрібен роз'єм для підключення до програмованого пристрою.
Для внутрішньосхемного програмування Atmel рекомендує стандартні роз'єми:


Якщо Ви плануєте серйозно зайнятися мікроконтролерами, зробіть стандартні роз'єми. Для разового програмування пристрою я рекомендую використовувати на програматорі (такими роз'ємами до материнської плати підключаються кнопки і світлодіоди корпусу комп'ютера - саме їх я і взяв) і штирі PLS тата на платі. Це дозволяє максимально спростити розведення плати пристрою, так як штирі для програматора встановлюються поблизу близько ніжок мікроконтролера. Ніжки MOSI, MISO, SCK у мікроконтролерів AVR завжди розташовані разом, тому для них можна застосувати збудований роз'єм. Окремо робимо підключення для "землі"-GND та "скидання"-Reset.

Зібрати COM програматор не складе труднощів:

Я свідомо не даю друкованої плати під цей програматор, так як схема проста і метушня з розведенням та травленням плати просто себе не виправдовує.

Для того, щоб наш COM програматор запрацювавпотрібна , до якої ми підключимо програматор для мікроконтролера.

— Так як режим Bitbang нестандартний для порту COM комп'ютера, то можливі збої в роботі (хоча в мене такого не було). Особливо це стосується ноутбуків. Як варіант вирішення цієї проблеми можна рекомендувати "погратися" налаштуваннями COM порту (швидкість, біти даних, варіанти керування потоком, величини буфера...).
- Окремий роз'єм для "землі" бажано підключити першим, щоб зрівняти потенціали "землі" програмованого пристрою та комп'ютера. Для тих, хто не знає, якщо у Вас комп'ютер включений у звичайну розетку, без заземлюючого контакту, то через особливості фільтра блоку живлення комп'ютера, на корпусі комп'ютера завжди присутній потенціал в 110В.

Висновок:

- COM програматор Громова простий та надійний. Я не перестав користуватися ним навіть зібравши USB програматор (якщо якийсь мікроконтролер перестає програмуватися USB програматором я обов'язково перевіряю ще раз його на програматорі Громова).
— Оскільки програматора Громова зібрано на пасивних елементах, він не вимагає для себе харчування. Мало того, через паразитне харчування, мікроконтролер можна запрограмувати взагалі не підключаючи до нього джерела живлення! Хоча так програмувати я не рекомендую, але сам факт цікавий.
- Для користувачів Algorithm Builder є приємний бонус! Цей програматор можна використовувати для внутрішньосхемного налагодження кристала (програмний JTAG).

2019-10-11 Дата останнього оновлення програми: 2019-10-11

Дволикий Янус

Ми вирішили назвати цей програматор Янус".

Чому так? Тому що в римській міфології Янус – це дволикийбог дверей, входів та виходів, а також початку та кінця. Який зв'язок? Чому наш програматор ChipStar-Janus дволикий?

А ось чому:

  • З одного бокуЦей програматор - простий. Поширюється як безкоштовний проект, його можна легко виготовити самому.
  • З іншого боку, він розроблений фірмою, тривалий час професійно займаєтьсярозробкою та виробництвом різної радіоелектронної апаратури, у тому числі програматорами.
  • З одного бокуЦей програматор - простий, з першого погляду має не дуже вражаючі характеристики.
  • З іншого боку, працює спільно з професійною програмою(До речі, такий самий, як і інші професійні програматори ChipStar).
  • З одного боку, ми пропонуємо цей програматор для вільної безкоштовноюзбирання.
  • З одного боку, Ми його продаємо і в готовому вигляді, як звичайний бюджетний продукт.
  • З одного боку, на саморобний програматор не поширюється гарантія (що природно).
  • З одного бокуЯкщо ви його змогли зібрати, то і відремонтувати зможете, та й програматор настільки простий, що ламатися, власне, нема чому.
  • З одного боку, це простий внутрішньосхемнийпрограматор.
  • З одного боку, через прості адаптери розширення він підтримує програмування NAND FLASHта інших мікросхем уже "в панельці".

Таким чином, програматор ChipStar-Janusдля багатьох фахівців може стати справжнім виходом у ситуації, коли різних простих чи аматорських програматорів вже недостатньо, а складніший програматор здається надлишковим чи не вистачає виділеного бюджету.

Що нас спонукало розробити програматор.

Є безліч простих спеціалізованих програматорів, придатних для самостійного виготовлення.

Є безліч дешевих китайських програматоріву вже готовому вигляді.

Є чимало аматорських розробок, Часто за якістю перевершують останні.

Здавалося б, у чому сенс чергового виробу?

Ми тривалий час займаємося розробкою виробництвом та підтримкою універсальних програматорів, в основному призначення. У нас багатий досвід роботи з різними мікросхемами. Часто до нас звертаються люди, що вже зібрали, а часто й купили, якийсь із вище названих "виробів". Нашим спеціалістам часто без сміху/сліз/жаху (потрібне підкреслити) неможливо дивитися на схемні рішення, якість складання та, особливо, на програмне забезпечення цих приладів. Гаразд, коли програматор коштує "три копійки", купив, щось працює, щось не працює, зате гроші не великі. Але часто співвідношення ціна/можливості таких приладів у нас викликають здивування, м'яко кажучи. Хочеться вигукнути: це стільки не варте!

Крім всього вище названого є особлива категорія програматорів, придатних для самостійного виготовлення – це програматори (точніше, схеми програматорів та програмне забезпечення), розроблені фахівцями фірм, що виробляють мікросхеми (в основному мікроконтролери). Такі програматори спроектовані цілком професійно, в їхній схемотехніці немає "ляпів". Вони підтримують усі заявлені мікросхеми. Але є два "маленьких" недоліки: перелік програмованих мікросхем дуже обмежений (що цілком зрозуміло) і програмне забезпечення дуже спартанське - ніяких зайвих функцій, як правило - тільки стерти, записати, верифікувати. Часто навіть функції читаннямікросхеми немає.

Отже, програматор ChipStar-Janusу початковій конфігурації - це внутрісхемний програматор. У такому режимі він підтримує мікроконтролери PICі AVRфірми Microchipдеякі мікроконтролери архітектури MCS51, мікроконтролери фірми STMicroelectronicsта ще ряд інших, а також мікросхеми послідовної пам'яті з інтерфейсом I2C(в основному серія 24). До роз'єму розширення програматора можна підключити найпростіші адаптери та почати програмувати мікросхеми пам'яті "на панелі".

Наразі реалізовано програмування "в панельці":

  1. EPROM) з інтерфейсом I2C(серія 24xx);
  2. мікросхеми послідовної флеш пам'яті (Serial FLASH) з інтерфейсом SPI (SPI Flash);
  3. мікросхеми послідовної пам'яті (Serial EPROM) з інтерфейсом MW (серія 93xx);
  4. мікросхеми NAND FLASH;

Програматор та програмне забезпечення підтримує технологію самостійного додавання мікросхем у три кліки. Поки що реалізовано додавання мікросхем NANDі I2C. Найближчим часом планується реалізувати цю технологію для мікросхем MW ( серія 93xx) та AVR. Таким чином, ви отримуєте не просто програматор, а потужний інструмент для самостійної роботи.

Три способи отримати програматор ChipStar-Janus

1-й спосіб:
Зібрати програматор самому повністю

Спосіб підходить тим, хто має час, досвід і бажання, але обмежені фінансові можливості. Або просто цікаво.

Алгоритм дій:

2-й спосіб:
Зібрати програматор самому, купивши готову друковану плату та прошитий мікроконтролер

Спосіб аналогічний попередньому, тільки ви позбавите себе від найбільш складних операцій: виготовлення друкованих плат і прошивки мікроконтролера без програматора.

Алгоритм дій:

  1. Прочитати умови використання самостійно збирається програматора.
  2. Прочитати інструкцію зі збирання програматора.
  3. Завантажити повну документацію на програматор.
  4. Купити набір для складання (готову друковану плату та мікроконтролер із вже записаною прошивкою).
  5. Закупити необхідну комплектацію для складання програматора згідно

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

Основою програматора є мікросхема FT2232D. Являє вона собою перетворювач USB у два порти UART. Особливість полягає в тому, що «верхній» канал може працювати в режимах JTAG, SPI і I 2 C, що і потрібно для програмування мікроконтролерів, різних мікросхем пам'яті і т.п.

Розробка USB-програматора ведеться на комп'ютері з використанням бібліотек від фірми FTDI Chip.

Живиться пристрій від інтерфейсу USB. При правильному складанні схема не потребує налаштування. Функціонування пристрою залежить від майстерності розробника програмного забезпечення. Резистори R8, R9, R12, R13, R14, R15, R16 є струмообмежуючими при неправильному з'єднанні з пристроєм, відповідно, висновки програмованого пристрою не повинні з'єднуватися з іншими елементами у схемі, або мати такі підтяжки, які при утворенні дільників напруги не спотворювали б логічні рівні. Мікросхема U1 використовується для збереження налаштувань користувача.

Висновки U2 (канал А):
24 - ADBUS0 - вихід-в режимі JTAG TCK, в режимі SPI SK;
23 - ADBUS1 – вихід- у режимі JTAG TDI, у режимі SPI DO;
22 - ADBUS2 – вхід у режимі JTAG TDO, в режимі SPI DI;
21 - ADBUS3 – вихід- в режимі JTAG TMS, в режимі SPI як допоміжний сигнал (CS);
20 - ADBUS4 – у режимі JTAG вхід\вихід, у режимі SPI допоміжний вихід. Цей висновок використовується для подачі сигналу RESET мікроконтролер;
15 - AСBUS0 – вільно програмований вхід\вихід у всіх режимах (опційно використовується для подачі живлення в програмований пристрій);
13 - AСBUS1 – вільно програмований вхід/вихід у всіх режимах.

У принципі ці висновки багатофункціональні. Їх поведінка визначається вибраним режимом під час відкриття порту.

Канал використовується для налагодження програмованого пристрою. Для цього потрібно лише мати незадіяний порт UART у мікроконтролері. Далі справа техніки. У програмі мікроконтролера у потрібних місцях використовуємо функцію форматованого виводу printf().

40 -BDBUS0 – вихід- у режимі UART TXD;
39 -BDBUS1 – вхід- у режимі UART RXD;
28 - BСBUS2 – вихід- в режимі UART LED-індикатор (запалюється при передачі даних через USB);
27 - BСBUS3 – вихід у режимі UART LED-індикатор (запалюється при прийомі даних через USB).

Нижче наведено друковану плату програматора

На сьогоднішній день цей універсальний програматор підтримує мікроконтролери AVR за інтерфейсами JTAG та SPI. Причому швидкість прошивки Atmega64 по JTAG не більше 5 секунд, по SPI не більше 8 секунд. Важливо, прошивать можна будь-які мікроконтролери, до яких поширюється специфікація для програматора. Зараз, наприклад, ведеться розробка підтримки мікроконтролерів NEC.

Робоча форма поділена на дві частини: ліворуч таблиці для роботи з FLASH (зверху) та EEPROM (знизу), сюди можна відкривати файли або завантажувати прошивки з мікроконтролера, робити верифікацію, правити вміст осередків пам'яті; праворуч текстове поле для налагодження, сюди виводяться дані з каналу, також можна там вводити текст, який відправиться в порт (функціонально це аналог HyperTerminal). Розробка ведеться на платформі Visual C# під Windows. Також є можливість розробляти іншими мовами. Програматор може працювати і під Linux.

Використовувана література:
1. А.В. Євстигнєєв «Мікроконтролери AVR сімейств Tiny та Mega фірми ATMEL», М. Видавничий дім «Додека-ХХI», 2005.
2. Future Technology Devices International Ltd. “FT2232D Dual USB UART/FIFO I.C.” , Datasheet, 2006.
3. Future Technology Devices International Ltd. "Software Application Development D2XX Programmer"s Guide", Document, 2009.
4. Future Technology Devices International Ltd. “Programmers Guide for High Speed ​​FTCJTAG DLL”, Application note AN_110, 2009.
5. Future Technology Devices International Ltd. “Programmers Guide for High Speed ​​FTCSPI DLL”, Application note AN_111, 2009.
6. Ендрю Троелсен "С# і платформа.NET" М., С-П. Пітер, 2007.

Завантажити вихідні програми та друковану плату у форматі ви можете нижче

Борисов Олексій () м.Сизрань, Самарська обл.

Список радіоелементів

Позначення Тип Номінал Кількість ПриміткаМагазинМій блокнот
U1 МікросхемаAT93C46D-8S1 До блокноту
U2 МікросхемаFT2232D1 До блокноту
VT1 MOSFET-транзистор

BSS84

1 До блокноту
З 1 Конденсатор0.01 мкф1 До блокноту
С2, С3 Конденсатор27 пФ2 До блокноту
С4, С5, С7, С9, С10 Конденсатор0.1 мкФ5 До блокноту
С6 Конденсатор0.033 мкф1 До блокноту
С8 Електролітичний конденсатор10 мкФ1 До блокноту
R1 Резистор

2.2 ком

1 0.05Вт До блокноту
R2 Резистор

10 ком

1 0.05Вт До блокноту
R3, R4 Резистор

27 Ом

2 0.05Вт До блокноту
R5 Резистор

470 Ом

1 0.05Вт До блокноту
R6, R7 Резистор

1.5 ком

2 0.05Вт До блокноту
R8-R16 Резистор

Які перші кроки має зробити радіоаматор, котрий вирішив зібрати схему на мікроконтролері? Природно, необхідна програма, що управляє - "прошивка", а також програматор.

І якщо з першим пунктом немає проблем - готову "прошивку" зазвичай викладають автори схем, то ось із програматором справи складніші.

Ціна готових 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". При програмуванні мікроконтролерів висновок AUX зазвичай не використовується, хоча він і потрібен для програмування МК в режимі LVP.

Також доданий "підтягуючий" резистор на 2 ком, який включається між виведенням SDA та Vcc мікросхем пам'яті.

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

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

У РК-телевізорах застосовується інший тип пам'яті (Flash-память). Про те, як прошити пам'ять РК-телевізора я вже розповідав. Кому цікаво, загляньте.

У зв'язку з необхідністю роботи з мікросхемами серії 24Cxx мені і довелося "допилювати" програматор. Труїти нову друковану плату я не став, просто додав необхідні елементи на друкованій платі. Ось що вийшло.

Ядром пристрою є мікроконтролер PIC18F2550-I/SP.

Це єдина мікросхема у пристрої. МК PIC18F2550 необхідно "прошити". Ця проста операція у багатьох викликає ступор, оскільки виникає так звана проблема "курки та яйця". Як її вирішив я, розповім трохи згодом.

Список деталей для збирання програматора. У мобільній версії потягніть таблицю вліво (свайп вліво-вправо), щоб побачити її стовпці.

Назва Позначення Номінал/Параметри Марка або тип елемента
Для основної частини програматора
Мікроконтролер DD1 8-ми бітний мікроконтролер PIC18F2550-I/SP
Біполярні транзистори VT1, VT2, VT3 КТ3102
VT4 КТ361
Діод VD1 КД522, 1N4148
Діод Шоттки 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 будь-якого типу "джампер"
Для панелі встановлення мікроконтролерів (МК)
ZIF-панель XS1 будь-яка 40 контактна ZIF-панель
Резистори R1 2 ком МЛТ, МОН (потужністю від 0,125 Вт та вище), імпортні аналоги
R2, R3, R4, R5, R6 10 ком

Тепер трохи про деталі та їх призначення.

Зеленийсвітлодіод 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 – з нульовим зусиллям установки).

Завдяки їй можна "зашити" МК практично у будь-якому корпусі 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). Я скористався 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-файл оновленої прошивки. Далі відбудеться процес оновлення програмного забезпечення програматора.

Після оновлення потрібно вимкнути програматор від ПК та зняти перемичку 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, я розповів в окремій статті. Наступний крок .

Необхідні файли:

    Посібник користувача PICkit2 (рус.) беремо або .