Вічна пам'ять героям

cup Розділи

USB програматор мікроконтролерів AVR и AT89S, сумісний з AVR910

USB програматор мікроконтролерів AVR и AT89S, сумісний з AVR910


Цей програматор підтримує послівний і посторічковий запис, що використовується при програмуванні МК сімейства AVR, і побайтовий запис для МК AT89S53 і AT89S8252 сімейства AT89S. Таким чином, за допомогою даного USB програматора можна програмувати всі нині існуючі МК сімейства AVR і МК AT89S53 і AT89S8252 сімейства AT89S за підтримки цих МК з боку керуючого програмного забезпечення, встановленого на комп'ютері. Програматор виконаний на основі драйвера від Objective Development і повністю сумісний по командах з оригінальним програматором AVR910 від ATMEL.
Видалення "зайвих", на перший погляд, деталей може призвести або до неправильного функціонування програматора, або до виходу з ладу порту USB комп'ютера.

USB програматор мікроконтролерів AVR и AT89S, сумісний з AVR910


Роз'єм Х1 з'єднують стандартним кабелем з одним з наявних у комп'ютері гнізд USB. Запобіжник FU1 служить для захисту ліній живлення цього порту від випадкового замикання. Діоди VD1 і VD2 - звичайні випрямляючі з прямим падінням напруги 0,6 ... 0,7 В - призначені для пониження живлення мікроконтролера DD1 до 3,6 В. Згідно документації, він може працювати при такій напрузі живлення з тактовою частотою аж до 14 МГц та більше.

Роз'єм Х2 з'єднують з роз'ємом ISP програмованого пристрою або з панеллю програмованої мікросхеми. На контакт 3 роз'єму Х2 виведені прямокутні імпульси з частотою 1 МГц для "оживлення" МК, у якого були помилково запрограмовані розряди конфігурації (fuses), що відповідають за тактування. Цей сигнал генерується постійно і не залежить від режиму роботи програматора. Світлодіоди HL1 і HL2 сигналізують про поточні дії програматора - про читанні з пам'яті програмованого мікроконтролера і про її запис. Світлодіод HL3 відображає наявність живлення. Резистори R11-R15 призначені для узгодження рівнів сигналів МК DD1 з діючими в зовнішніх колах.

Перемичку S1 при початковому програмуванні МК DD1 встановлюють в положення "Мод." (Протилежне її положенню на схемі). Підключивши до гнізда Х2 зовнішній програматор, виконують завантаження керуючої програми в МК. Після цього перемичку слід повернути в показане на схемі положення "Норм.". Для нормальної роботи завантаженої програми необхідно, щоб в МК DD1 були запрограмовані (встановлені в 0) розряди конфігурації SPIEN, CKOPT, SUT0 і BODEN, а решта залишені встановленими в 1. Зазвичай в МК АТmega8, отриманих безпосередньо від виробника, розряд SPIEN вже запрограмований.

Встановивши перемичку S2, можливо понизити тактову частоту інтерфейсу SPI МК DD1 приблизно до 20 кГц. Це необхідно для програмування МК сімейства AVR, що тактується від внутрішнього генератора частотою 128 кГц. При відсутності перемички S2 інтерфейс SPI працює з частотою близько 187,5 кГц. Це дозволяє програмувати МК з мінімальною тактовою частотою 570 кГц (сімейств ATtiny і ATmega), 750 кГц (сімейства AT90S) і 7,5 МГц (сімейства AT89S). Знімати та встановлювати перемичку S2 можна "на ходу", тому що при кожному зверненні до інтерфейсу SPI програма МК DD1 перевіряє її наявність. Не рекомендується цього робити лише при запущеному процесі запису/читання програмованого МК, що може призвести до спотворення записуваної або читаємої інформації.

Програмування МК при використанні утиліти AVRProg v.1.4 з пакету AVR Studio займає разом з верифікацією 10 ... 30 с в залежності від обсягу пам'яті і тактовою частоти. Програматор був успішно протестований і з програмами ChipBlasterAVR v.1.07 Evaluation, CodeVisionAVR, AVROSP. Були запрограмовані МК AT89S53, AT89S8252, AT90S2313, AT90S8515, ATtiny13, ATtiny26, ATtiny45, ATtiny2313, ATmega48, ATmega8, ATmega8515, ATmega8535, ATmega16, ATmega32, ATmega64, ATmega128, AT90CAN128.
Програма AVRDUDE несумісна з даними програматором, вона не всі команди протоколу AVR910 відпрацьовує коректно.

При першому підключенні виготовленого USB-програматора з правильно запрограмованим МК DD1 до комп'ютера операційна система знайде новий пристрій - AVR910 USB Programmer. Необхідно зауважити, що цього не відбудеться, якщо номінальна частота резонатора ZQ1 в програматорі відрізняється від 12 МГц. Це пов'язано з особливостями роботи USB і програми МК DD1. Від пропозиції системи автоматично знайти драйвер потрібно відмовитися і вказати їй шлях до файлу prottoss.avr910.usb.inf, драйвер не має цифрового підпису, його слід проігнорувати. У мене виникли проблеми, коли після установки програматора в системі програма AVRProg v. 1.4 не змогла його знайти. Виявилося, що операційна система вибрала для програматора віртуальний порт СОМ9, а програма AVRProg здатна працювати тільки з портами СОМ 1-COM4. Змінити номер порту можна за допомогою "Диспетчера пристроїв" Windows, пройшовши по шляху "AVR910 USB Programmer-> Властивості-> Параметри порту-> Додатково-> Номер-> СОМ-порту".

Інсталяція програматора в системі Windows 2000 не відрізняється, в принципі, від описаної вище для Windows XP, але є одна особливість: затримки в драйвері usbser.sys даної ОС спотворюють формуються комп'ютером команди программатору і посилають програматором відповіді на них. У чому справа, я поки не з'ясував, але надійний спосіб усунення проблеми знайшов. Досить замінити в системних папках Windows 2000 .. \ winnt \ system32 \ drivers \ і .. \ winnt \ system32 \ dllcashe \ файл usbser.sys однойменною з Windows XP. Природно, його доведеться підміняти, завантажившись під іншою ОС (наприклад, з завантажувального диска).

Як правило, правильно зібраний програматор з правильно запрограмованим МК DD1 в налагодженні не потребує. Єдине зауваження: вхід RESET програмованого МК може бути з'єднаний з плюсом живлення резистором номіналом не менше 10 кОм. Це пов'язано зі зниженою напругою живлення МК DD1 і наявністю обмежувальних резисторів в колах керуючих сигналів. Якщо програматор не працює, перш за все слід переконатися у відсутності помилок монтажу, обривів і замикань на його платі. Потім виміряти напругу між виводами живлення МК DD1 (7 і 8). Воно повинне перебувати в межах 3,5 ... 3,8 В. Далі перевірте, чи працює тактовий генератор МК. Це можна зробити за допомогою осцилографа, підключивши його до виводу 10 DD1. Якщо осцилографа немає, підключіть між висновком 10 і загальним проводом через обмежувальний резистор 330 ... 510 Ом звичайний світлодіод (катодом до загального проводу). Якщо генератор працює, світлодіод буде слабко світитися. Залишається перевірити, запустилася чи завантажена в МК DD1 програма. Одна з ознак її роботи - наявність імпульсів частотою 1 МГц на контакті 3 роз'єми Х2. Це можна зробити за допомогою осцилографа або світлодіода за методикою, описаною вище. При замиканні пінцетом виводів кварцового резонатора ZQ1 слабо світиться світлодіод повинен випадковим чином або збільшувати яскравість, або гаснуть зовсім.

Офіційний сайт проекту (актуальне ПО, прошивки, драйвера)

Сподобалась новина? Поділись нею з другом!

Це просте посилання, його можна відправити другу по ICQ або E-Mail:


Це посилання для вставки на форумах:


Це HTML-посилання для розміщення на своєму сайті:



Категорія: Схеми » Мікроконтролери. Додав: TimON (29-11-2011, 21:28).
  • 0
 (голосів: 0)
#1: BMWA (29 листопада 2011 18:27)
Гості
Публікацій: 0
Коментарів: 0
ICQ: --
USB програматор мікроконтролерів AVR и AT89S, сумісний з AVR910 ( USB программатор AVR и AT89S, совместимый с AVR910 )
где взять прошивку
   
#2: Sanch (4 червня 2012 09:07)
Гості
Публікацій: 0
Коментарів: 0
ICQ: --
BMWA не парься на счет таких рограмматоров
В интернете есть такой программатор только на микросхеме FTDI232 проблем с ней на много меньше
   
#3: Sanch (26 вересня 2012 16:04)
Гості
Публікацій: 0
Коментарів: 0
ICQ: --
Я зробив такий пристрій
Посилання
працює без проблем
   
Інформація
alt=
cup Вхід на сайт    cup Реєстрація cup WEB - Програми

Каталог веб ресурсів Тернопільщини каталог сайтів Схеми Copyright © 2010-2011.
Наш хостинг: ukraine.com.ua