http://poradumo.pp.ua

Online Журнал-Світ порад.
Головна сторінка

Що таке JTAG-програматор?

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

Чим є JTAG-програматор?

Що таке JTAG-програматор?
Він являє собою спрощений варіант професійного AVR JTAG ICE, який, як можна здогадатися з його назви, призначений для програмування мікроконтролерів сімейства AVR. Його головна відмінність в тому, що зібрати його може навіть непрофесіонал, і кінцева вартість буде набагато нижчою, ніж при купівлі заводського. По суті, представлений у статті механізм – китайська репліка, тому цей програматор AVR ще й можна купити. Тому не кривлячи душею, можна сказати, що існує ще і варіант покупки. Але збірка своїми руками дозволить уникнути можливих негативних наслідків внаслідок дешевизни і низької якості купованих деталей при виробництві.




Чому обирають саме програматор JTAG?

Що таке JTAG-програматор?
Головне – його низька вартість і легкість в збірці. JTAG-програматор може програмувати всі пристрої, що мають інтерфейс JTAG. Для роботи через комп'ютер необхідна середовище розробки AVR Studio 4-й або більше версії. З ними цей програматор AVR зможе працювати.

Недоліки програматора

Самі останні версії сімейств мікроконтролерів, без додаткової роботи, не програмуються. Також існують значні проблеми з тими представниками, у яких менше 40 ніг і 16 Кб пам'яті. Як можна помітити, коло потенційних клієнтів досить обмежений. Але кілька популярних моделей якраз підпадають під нього, так що він стане в нагоді.




Схема

Що таке JTAG-програматор?
Схема програматора проста, для роботи необхідна ATMega16 і трохи додаткової електроніки. В якості інтерфейсу може бути використано MAX232 (для роботи з COM) і FT232RL (для роботи з USB). Варто обмовитися, що при використанні другого варіанта підключати живлення через USB не рекомендують. В таких випадках із-за помилки або недогляду можуть отримати напруга захисні діоди, і на висновках FT232RL буде висока напруга. Це чревато виходом з ладу або програматора, або об'єкта програмування. Вирішується цей нюанс подачею живлення через плату.

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

Налаштування

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


Що таке JTAG-програматор?

В якості підготовки до роботи слід виставити Fuse біти. Вони залежать від нотації, в якій провадиться робота. Для кращого розуміння представляємо ось таку таблицю:



Біт





Пряма нотація (Даташит, UniProf)





Інверсна нотація (AVR DUDE GUI, PonyProg)





OCDEN





[]





[1]





JTAGEN





[]





[1]





SPIEN





[]





[1]





CKOPT





[1]





[]





EESAVE





[1]





[]





BOOTSZ1





[]





[1]





BOOTSZ0





[]





[1]





BOOTRST





[1]





[]





BODLEVEL





[1]





[]





BODEN





[1]





[]





SUT1





[]





[1]





SUT0





[]





[1]





CKSEL3





[1]





[]





CKSEL2





[1]





[]





CKSEL1





[1]





[]





CKSEL0





[1]





[]



А як зрозуміти, яку вибрати? Відповідь на запитання проста: слід підключитися до мікроконтролера і почати читати ці біти. Зверніть увагу на SPIEN – якщо є галочка навпроти нього, то це означає, що нотація інверсна. Якщо її немає – значить, вона пряма. Якщо все було зроблено правильно, то програматор готовий, щоб прошивати мікроконтролери. Але якщо він в подальшому не зможе зробити прошивку – перечитайте і перевірте всі ще раз.

Робота з програматором

Що таке JTAG-програматор?
Для більшої тями буде наведено приклад програмування мигання світлодіодів. Спочатку слід запустити студію і створити новий проект. Потім вибрати мову програмування (в даному випадку асемблер) і задати ім'я проекту. Програма сама зможе визначити, що ви використовуєте JTAG-програматор. В якості платформи слід вибрати його, а у віконечку поруч – програмований їм мікроконтролер. Далі все досить звичайно – слід тільки вбити текст програми. Щоб читачі могли перевірити працездатність, пропонуємо випробувати JTAG-програматор зазначеним у статті кодом. Можна побачити, що діоди почали блимати дуже швидко, що не дивно, адже тут не передбачена затримка. Отже, програматор, інструкція його створення і використання є. Вам залишається тільки втілити політ своєї фантазії.

Трохи про практику. Для перевірки підключіть до порту А 3 світлодіода. Потім підключається до плати: чотири дроти інтерфейсу (TCK, TDI, TMS, TDO) і 2 силових Vcc йдуть на плюс, а GND підключається до землі. Все, харчування є, можна йти далі. У студії необхідно провести компіляцію коду і його запуск. Проект швидко відбудеться створення, тут же буде прошитий і почне працювати. Щоб стежити за процесом виконання, можна натиснути F11 і тоді можна спостерігати, на якому ряду коду зараз програма. Для цього достатньо піднести курсор до ряду, який включає світлодіод, і він загориться. Існує ще багато експериментів. Пам'ятайте, що для того щоб щось зробити, потрібно працювати. Нехай просування буде повільним, але з часом ви зможете отримати саме те, що хочете, головне - не опускати руки і продовжувати експериментування з упором на теоретичну базу (без неї ніяк).

of your page -->

Популярні поради

загрузка...