16. -
Восстановление фьюзов AVR микроконтроллеров Fusebit Atmega Doctor
Нажмите, чтобы открыть спойлер
Многие радиолюбители знают (иногда на собственном печальном опыте как и у меня это случилось), что микроконтроллер AVR можно вывести из строя неосторожным программированием настроечных бит (так называемых фьюзов). Будучи запрограммированными неправильно, эти биты сохраняются в энергонезависимой памяти, и могут привести к невозможности дальнейшего программирования микроконтроллера или выбору фьюзами его тактовой частоты. По крайней мере невозможно восстановить микроконтроллер обычными средствами, без наличия специального высоковольтного HVPP/HVSP программатора.
HVPP расшифровывается как high voltage parallel programming, т. е. высоковольтное параллельное программирование.
HVSP расшифровывается как high voltage serial programming, т. е. высоковольтное последовательное программирование.
Atmega fusebit doctor, как следует из названия, это устройство, предназначенное для восстановления "убитых" микроконтроллеров AVR ATmega (и ATtiny начиная с версии v2.04 устройства) путем записи в них корректных значений бит фьюзов. Описанное простое и дешевое устройство позволит исправить Ваши брикнутые микроконтроллеры за доли секунды.
Это устройство использует параллельный и последовательный принципы высоковольтного программирования микроконтроллеров AVR. С помощью этих методов можно "достучаться" до убитых микроконтроллеров, у которых запрещен сброс или программирование ISP.
[Как восстановить фьюзы "убитого" микроконтроллера]
Просто поместите убитый AVR в сокет, нажмите кнопку START и… и это все. Вы получите восстановленный, работоспособный микроконтроллер в том виде, как он пришел с завода Atmel. На плате fuse-доктора есть 3 слота для установки большинства совместимых микроконтроллеров AVR, которые совпадают с цоколевкой DIP-версий Atmega8, Atmega16, Attiny2313. Имеется также дополнительный коннектор, куда Вы можете подключить адаптеры:
[Светодиоды индикации]
Для индикации состояния на плате fuse-доктор установлены 2 светодиода — зеленый (GOOD) и красный (BAD).
 Зеленый постоянно горит – пациент успешно вылечен, биты фьюзов восстановлены. Если разрешены биты защиты, то будет просто проведена проверка состояния фьюзов — заводское ли оно, и если это так, то зеленый светодиод загорается.
 Красный постоянно горит – проблема с сигнатурой, её нельзя прочитать, нет микроконтроллера в сокете, или такой сигнатуры нет в базе данных fuse-доктора.
 Зеленый мигает – сигнатура в порядке, но биты фьюзов в неправильном состоянии. Причина — установлены биты защиты, нужно разрешение на полную очистку восстанавливаемого AVR (Необходимо нажать кнопку ERASE с OFF на ON).
 Красный мигает – сигнатура прочитана, нет блокировки битами защиты, но по непонятной причине нельзя записать новое значение для бит фьюзов
Пришла плата и теперь работа начала кипеть.
Видео пока что не снимал так как все ещё в стадии сборки.
ДокументациЯ:
http://dixom.ru/zverchproject/vossta...rokontrollerov
http://www.getchip.net/posts/059-isp...usebit-doctor/
http://programmator-ua.ucoz.ru/publ/...v_2_12/1-1-0-9
**Firmware on Fusebit Doctor AVR MCU**
http://dixom.ru/images/filesstati/fu...mwareV2.11.rar