Замовлення пристрою
Заповніть форму, та отримайте посилання для замовлення пристрою.
200 characters left
Atmega fusebit doctor AVR

Відновлення ф'юзів мікроконтролерів

Atmega fusebit doctorБагато радіоаматорів знають (іноді на власному сумному досвіді), що мікроконтролер AVR можна вивести з ладу необережним програмуванням настроювальних біт (так званих ф'юзів).

Будучи запрограмованими неправильно, ці біти зберігаються в незалежній пам'яті, і можуть призвести до неможливості подальшого програмування мікроконтролера або вибору фьюзами його тактової частоти. Принаймні неможливо відновити мікроконтролер звичайними засобами, без спеціального високовольтного HVPP/HVSP програматора.

Atmega fusebit doctor, як випливає з назви, це пристрій, призначений для відновлення "вбитих" мікроконтролерів AVR ATmega (і ATtiny починаючи з версії v2.04 пристрою) шляхом запису в них коректних значень біт ф'юзів. Описаний простий і дешевий пристрій дозволить виправити Ваші мікроконтролери за долі секунди.

  • HVSP (High Voltage Serial Programming) послідовне високовольтне використовується для програмування мк 8 і 14 пін і не залежить від стану ф'юзів. Потребує зовнішнє джерело 12В та транзисторний ключ для подачі високої напруги на RESET пін.
  • HVPP (High Voltage Parallel Programming) високовольтне паралельне використовується для програмування мк від 20 пін і вище, не залежить від стану ф'юзів. Також вимагає зовнішнє джерело 12В та транзисторний ключ для подачі високої напруги на RESET пін.
  • ISP (In-Sistem Programming) внутрішньосхемне програмування використовує 4х провідний протокол SPI для програмування і підтримується багатьма AVR мк. Головний недолік – при певних установках ф'юзів може бути непридатним для використання.

Цей пристрій використовує паралельний та послідовний принципи високовольтного програмування мікроконтролерів AVR. За допомогою цих методів можна "достукатися" до вбитих мікроконтролерів, у яких заборонено скидання або програмування ISP.

виправлення ф'юзів

Як відновити ф'юзи "вбитого" мікроконтролера

Просто помістіть вбитий AVR у сокет, натисніть кнопку START і... і це все. Ви отримаєте відновлений, працездатний мікроконтролер у тому вигляді, як він прийшов із заводу Atmel. На платі AFD є слоти для встановлення більшості сумісних мікроконтролерів AVR, які збігаються з цоколівкою DIP-версій Atmega8, Atmega16, Attiny2313... Є також додатковий конектор, куди можна підключити адаптери.

Світлодіодна індикація

Atmega fusebit doctorДля індикації стану на платі fuse-доктор встановлено 2 світлодіоди - зелений (GOOD) та червоний (BAD).
Зелений постійно горить – пацієнт успішно вилікований, біт фьюзи відновлено. Якщо дозволені біти захисту, то буде просто проведена перевірка стану ф'юзів - чи заводські вони, і якщо це так, то зелений світлодіод спалахує.
Червоний постійно горить - проблема з сигнатурою, її не можна прочитати, немає мікроконтролера в сокеті, або такої сигнатури немає в базі даних fuse-доктора.
Зелений блимає – сигнатура гаразд, але біти ф'юзів у неправильному стані. Причина - встановлені біти захисту, потрібний дозвіл на повне очищення відновлюваного AVR (Необхідно перевести перемикач ERASE з OFF на ON).
Червоний блимає – сигнатура прочитана, немає блокування бітами захисту, але з незрозумілої причини не можна записати нове значення для біт ф'юзів.

Якщо блимає зелений світлодіод – сигнатура вірна, конфігурація Fuse-бітів не вірна. Lock-біти встановлені, потрібна операція стирання Flash-пам'яті; тоді Стирання встановлюємо у положення ON, і натискаємо кнопку Start. При виконанні цієї операції весь вміст мікроконтролера буде знищено.

USB-UART

Також можна переглянути, що там відбувається з МК за допомогою будь-якого терміналу, завдяки вбудованому USB-UART.  AFD v 2.11 має ручний режим при роботі з ПК, всі інші тільки автоматичний, остання версія v 2.14.

Перемикач "Авто" переключає порт PD0 (RXD) ATmega8 до виводу TX мікросхеми СР2102, або підключає його на мінус живлення. У режимі "auto" ви не зможете по TTL керувати роботою "AFD", тільки дивитися результат на екрані терміналу. При підключенні до ПК є можливість відновлювіти МК з нечитабельною сигнатурою і міняти ф'юзи та локбіти в ручному режимі, тільки для версії 2.11, всі вищі тільки перегляд.

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

1kB:
AT90s1200, Attiny11, Attiny12, Attiny13/A, Attiny15
2kB:
Attiny2313/A, Attiny24/A, Attiny26, Attiny261/A, Attiny28, AT90s2333, Attiny22, Attiny25, AT90s2313, AT90s2323, AT90s2343
4kB:
Atmega48/A, Atmega48P/PA, Attiny461/A, Attiny43U, Attiny4313, Attiny44/A, Attiny48, AT90s4433, AT90s4414, AT90s4434, Attiny45
8kB:
Atmega8515, Atmega8535, Atmega8/A, Atmega88/A, Atmega88P/PA, AT90pwm1, AT90pwm2, AT90pwm2B, AT90pwm3, AT90pwm3B, AT90pwm81, AT90usb82, Attiny84, Attiny85, Attiny861/A, Attiny87, Attiny88, AT90s8515, AT90s8535
16kB:
Atmega16/A, Atmega16U2, Atmega16U4, Atmega16M1, Atmega161, Atmega162, Atmega163, Atmega164A, Atmega164P/PA, Atmega165A/P/PA, Atmega168/A, Atmega168P/PA, Atmega169A/PA, Attiny167, AT90pwm216, AT90pwm316, AT90usb162
32kB:
Atmega32/A, Atmega32C1, Atmega323/A, Atmega32U2, Atmega32U4, Atmega32U6, Atmega32M1, Atmega324A, Atmega324P, Atmega324PA, Atmega325, Atmega3250, Atmega325A/PA, Atmega3250A/PA, Atmega328, Atmega328P, Atmega329, Atmega3290, Atmega329A/PA, Atmega3290A/PA, AT90can32
64kB:
Atmega64/A, Atmega64C1, Atmega64M1, Atmega649, Atmega6490, Atmega649A/P, Atmega6490A/P, Atmega640, Atmega644/A, Atmega644P/PA, Atmega645, Atmega645A/P, Atmega6450, Atmega6450A/P, AT90usb646, AT90usb647, AT90can64
128kB:
Atmega103, Atmega128/A, Atmega1280, Atmega1281, Atmega1284, Atmega1284P, AT90usb1286, AT90usb1287, AT90can128
256kB:
Atmega2560, Atmega2561