Технический форум

Технический форум (http://www.tehnari.ru/)
-   Микропроцессоры (http://www.tehnari.ru/f115/)
-   -   Доктор фьюзов для AVR - ATmega Fusebit Doctor (http://www.tehnari.ru/f115/t96965/)

Le_Fleurs 15.06.2014 01:27

Доктор фьюзов для AVR - ATmega Fusebit Doctor
 
Вложений: 10
Довно хотел его собрать все руки не доходили но после очереднего неправильно выставлено фьюза у меня залочился МК Все решил буду собирать и как оказалось очень крутая штука, после сборки вотсановил Atmega8 и Atmega88.
Автор устройства поляк Pawel Kisielewski.
Что интересного есть в «Atmega fusebit doctor»?
Как Вы поняли – это не совсем высоковольтный программатор. Это устройство предназначено только для одной цели – вернуть к «жизни» микроконтроллер с неправильно прошитыми фьзами.

Такими фьюзами могут быть:
- CKSEL фьюзы выбора задающего генератора (выбран внешний генератор при его отсутствии или выбрана очень маленькая частота внутреннего);
- SPIEN запрет последовательного программирования;
- RSTDISBL использование ножки сброса как дополнительной линии ввода-вывода;
– установленные LOCK биты;
– другие, мешающие последовательному программированию.

Принцип работы устройства
- очень прост – подаем на плату 12 вольт, вставляем в панельку «запорченный» микроконтроллер, нажимаем кнопочку «START» и через доли секунды получаем новенький рабочий микроконтроллер. При нажатии кнопки «START» устройство читает сигнатуру микроконтроллера-пациента, при этом, если она не читается, делается несколько попыток прочитать различными способами. После того как сигнатура прочитана по базе определяется тип микроконтроллера и восстанавливаются заводские, для данного микроконтроллера, установки фьюз бит. Если сигнатура неизвестна или микроконтроллер выдает ее неверно устройство установит фьюз биты в такое состояние, при котором станет возможным последовательное программирование. При восстановлении фьюз бит прошивка микроконтроллера остается нетронутой. Еще на плате есть перемычка «ALLOW ERASE«, при замыкании которой устройство полностью «обнулит» микроконтроллер. Это нужно в том случае, если пациент «залочен», т.е. установлены защитные биты которые препятствуют чтению/записи микроконтроллера.

Для индикации работы устройство имеет два светодиода – Красный и Зелёный.
Если горит зеленый – пациент успешно вылечен, фьюз биты восстановлены до заводских. Если микроконтроллер «залочен» (LockBits включены), просто проверяются фьюз биты и если они совпадают с заводскими – загорается зеленый светодиод.
Если горит красный – проблемы с сигнатурой чипа, невозможно прочитать, нет микроконтроллера в панельке или нет такой сигнатуры в базе данных.
Если зеленый мигает – сигнатура в порядке, фьюз биты с ошибкой, но исправить их невозможно, так как микроконтроллер «залочен» (LockBits включены), необходимо полное стирание микроконтроллера (нужно установить перемычку для стирания – «ALLOW ERASE»).
Если мигает красный – сигнатура в порядке, микроконтроллер «не залочен», но, по какой-то причине, невозможно восстановить фьюз биты.

Если Вы хотите получить более подробную информацию о процессе «лечения» на плате есть выход UART. Отправьте этот сигнал на терминал и получите «распечатку» того, что было сделано.
Установки для терминала:
baudrate: 4800
parity: none
databits: 8
stopbits: 1
handshake: none

На плате установлены три панельки для «пациентов» на 20 (Attiny2313 …), 28 (Atmega48/88/168, Atmega8 …), 40 (Atmega16, Atmega8535 …) ножек. Если Вы решили «полечить» другого «пациента», то на плате предусмотрен специальный разъем для подключения адаптеров с панельками под любой, нужный Вам, микроконтроллер. Устройство поддерживает аж 106 типов микроконтроллеров 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

"Зеленым отмечены кристаллы которые проверялись и удачно полечились пользователями «доктора»"

Сборка устройства
Вложение 188598
Вложение 188596

Тут показано как нужно выставлять фьюзы для Atmega8
Вложение 188597

Фьюзы для другим МК: internal 1MHz clock, EESAVE Включен:
M8 - L:0xE1 H:0xD1
M88,M168 - L:0x62 H:0xD7 E:0xF9
M328 - L:0x62 H:0xD1 E:0xFF
Данный вариант прошивки еще есть для микроконтроллеров:
Atmega88, Atmega88P, Atmega168, Atmega168P, Atmega328, Atmega328P.
Вложение 189899 - Печатная плата, Схема, Прошивки.

Вложение 188607 - Помощник для установки МК в специальный слот.

А вот мною собранное это устройство только я не припаивал себе панельку на DIP 40, Так же под самим Доктором расположены 3 перемычки и 1 резистор нужно не забывать про них при монтаже. В общем я доволен этим устройством. Думаю он может пригодится многим.
Вложение 188600 Вложение 188601 Вложение 188602 Вложение 188603 Вложение 188604

mig3100 23.08.2014 21:27

конечно, это очень круто,а нельзя,что то по проще,типа поставить одну на одну с прошитой мега.со спец программой,и подать 12в.Только где эта спец прога с прошивкой.А насчет дыма я не видел.Просто я еще и пытался прошить СVAVR, там вообще темный лес(особенно для меня ,который в этом деле не волокет ни яху) Может я и наварочил что нибудь с этими экспери ментами.

Le_Fleurs 13.10.2014 20:38

Цитата:

Сообщение от mig3100 (Сообщение 1056560)
конечно, это очень круто,а нельзя,что то по проще,типа поставить одну на одну с прошитой мега

Как по мне тут проще, так же плюс этого девайса для восстановления что не требуется компьютер

Жентяй 16.10.2014 16:56

фьюзы для какой программы? Залочил МЕГА 8, аж 7 штукtehno035

Sasha94 16.10.2014 22:25

Почему в архиве прошивки для 8, 88, 168 и для 328 куда их?

MC_Zver 16.10.2014 22:38

Цитата:

Сообщение от Жентяй (Сообщение 1070287)
фьюзы для какой программы? Залочил МЕГА 8, аж 7 штук

Зашивай контроллер прошивкой, фьюзы не трогай. Потом после прошивки прочти фьюз биты в контроллере и измени состояние галки EESAVE. Прошей фьюзы. Все, так там все по стандарту кроме этой галки EESAVE - сохранение информации EEPROM про перепрошивке. Удачи.

Le_Fleurs 16.10.2014 22:53

Цитата:

Сообщение от Sasha94 (Сообщение 1070406)
Почему в архиве прошивки для 8, 88, 168 и для 328 куда их?

Внимательно почитайте Данный вариант прошивки еще есть для микроконтроллеров: Так как мало ли кто на каком контролере соберет себе доктора, вот для них и есть разные прошивки вы берите только ту что вам необходима.

Цитата:

Сообщение от Жентяй (Сообщение 1070287)
фьюзы для какой программы?

Вроде и скрин прилагается как выставлять фьюзы для Atmega8. И написал как для Меги 8 так и для других internal 1MHz clock, EESAVE Включен:

Жентяй 17.10.2014 17:20

Цитата:

Сообщение от MC_Zver (Сообщение 1070409)
Зашивай контроллер прошивкой, фьюзы не трогай. Потом после прошивки прочти фьюз биты в контроллере и измени состояние галки EESAVE. Прошей фьюзы. Все, так там все по стандарту кроме этой галки EESAVE - сохранение информации EEPROM про перепрошивке. Удачи.

Спсибо. Разобрался. Правда давно уже ). У меня часы не запускались. Нужно было замкнуть провода кнопок управления. А я как назло сопротивления перепутал. Нужно было 1кОм, а я воткнул 10кОм. По цветовой маркировке они похожи. Только у одного полоска красная ,у другого оранжевая. Вот при плохом освещении и закосячил. И так несколько разtehno015

Жентяй 20.10.2014 14:38

Собрал. Поддались только 5. Два не получается. Мигает зелёный светодиод и загорается красный.

Le_Fleurs 20.10.2014 20:21

Цитата:

Сообщение от Жентяй (Сообщение 1071533)
Собрал. Поддались только 5. Два не получается. Мигает зелёный светодиод и загорается красный.

Попробуйте с перемычкой ALLOW ERASE это поможет обнулить полностью МК.


Часовой пояс GMT +4, время: 13:45.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.