Вторник, 19.03.2024, 11:32
Приветствую Вас Гость | RSS

Программаторы

Категории раздела
Наш опрос
Оцените мой сайт
Всего ответов: 156
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Каталог статей

Главная » Статьи » Мои статьи

ATmega Fuse Doctor - вариант платы под прошивки v.2.11 и v.2.12

Ввиду дебилизма некоторых "товарищей" почтовый адрес изменился на:     fedsemenyuk@gmail.com

Всем хорош прибор под названием ATmega Fuse Doctor, в дальшейшем AFD, с прошивкой в.2.11от автора, но процессе работы вылезли косяки:

1.Не определяется название пациента, только сигнатура.

2. Пациент находится постоянно под двумя напряжениями +5v0 и +12v0. Эти напряжения кратковременно пропадают при нажатии кнопки "Старт". Если быть невнимательным и вставлять/вынимать пациента со слота под напряжением, возможен выход последнего со строя.

3. Для правильной работы по восcтановлению ATtiny2313 изменился порядок подключения  порта PD6, вместо шины  BS2 на него заведена шина  XA1. На прилагаемой плате переход с прошивки с  v.2.11 на  v.2.12 коммутируется всего одним нулевым резистором.

Эти косяки  успешно исправил Геннадий с форума "Схем.нет".

4. На плате также добавлен слот под ATtiny в восьми выводных корпусах. Это позволяет восстанавливать ATtiny 12/13/15/25/45/85, AT90S2323 без применения переходника.

Расположение и номиналы деталей:

Схема, по которой сделана плата:

Плата изготовлена фоторезистивным методом, но размер пятаков и ширина дорожек допускают применения метода ЛУТ. При разводке платы удалены все неиспользуемые пятаки панелек, при монтаже извлекаются соответствующие ламели. Ниже этапы изготовления платы:

Плата с фотошаблоном под засветкой.

Протравленная плата, но не смыт фоторезист.

Смыт фоторезист, но без залудки.

А теперь немного о работе.

Терминальная программа, например: HiperTerminal, при работе с прошивкой v.2.12 настраивается на скорость передачи данных 9600 бод, без проверки четности, 8 бит данных, 1 стоп-бит.

Установки для терминала:
baudrate: 9600
parity: none
databits: 8
stopbits: 1
handshake: none

Питание  производится от источника постоянного напряжения 12v5 ---  13v0.СОМ - кабель для связи AFD с компьютером готовят по нижеприведённой схеме:

Список поддерживаемых контроллеров(пополняется), красным выделенные те, которые проверил разработчик, да и я внёс свою лепту:

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

Несколько примеров востановления ATtiny и ATmega:

ATmega8

Все фьюзы ATmega8 установлены в 0.

Считанные фьюзы ATmga8 AFD.

Востановленные фьюзы ATmega8 по дефолту. Всё Ок!!

ATtiny12 - джемпер для 8-ми выводных замкнут.

Все фьюзы ATtiny12 в 00.

Считанные фьюзы ATtiny12 находятся в 00.

Востановленные фьюзы ATtiny12. Всё Ок!!

                                    Спаял, включил - не работает. Вопросы и ответы.

Q001: мой fuse-доктор не подает признаков жизни, светодиоды не мигают.
A001: скорее всего критичная ошибка на плате или плохо запрограммированный микроконтроллер.

Q002: Горит красный светодиод.
A002: Восстанавливаемый чип не распознан. Измерьте напряжения на нем в режиме ожидания напряжения. Это +12 на сигнале RESET и +5 SUPPLY на соединительном коннекторе мама – Вы должны получить 0V или близкое к 0V напряжение для обоих этих сигналов. После того, как нажата кнопка START, Вы должны на 1 секунду получить напряжения +12V и 5V. Если это не так, то проверьте транзисторы - исправны ли они, и правильно ли спаяна схема подачи напряжений.

Q003: Горит красный светодиод.
A003: Ошибка на печатной плате. Проводники проходят очень близко друг к другу, так что возможно, что есть невидимое замыкание. Также может быть, что где-то есть непропай. Проверьте все соединения мультиметром, причем очень тщательно.

Q004: Горит красный светодиод.
A004: Подключите устройство к терминалу, чтобы получить лог восстановления. Нажмите кнопку START для получения информации на терминале.

Q005: На терминал выводится "Init programming...", и больше ничего, или считанная сигнатура "00 01 02" или "FF FF FF".
A005: Восстанавливаемый чип неисправен, или все еще есть не обнаруженная ошибка на печатной плате.

Q006: Считанная сигнатура "1E 90 00", "1E 1E 1E", или что-то подобное (правдоподобные данные).
A006: Восстанавливаемый чип в порядке, он инициирован, проверьте замыкания на сигналах DATA, BS, XA.

Q007: Зеленый светодиод горит / в терминал выводится сообщение "Verifying... – OK!", но восстановленный чип не работает со стандартным программатором (не программируется через ISP).
A007: Можно быть на 100% уверенным, что фьюзы восстановлены корректно, но у восстановленного микроконтроллера есть аппаратная проблема с интерфейсом программирования ISP (MOSI, MISO, SCK), или имеется какое-то другое повреждение.

Q008: Что означают сообщения "Read Signature... FAIL!" и "Trying T2313 pinout... OK", выведенные в лог терминала?
A008: Все 20-выводные чипы нуждаются в индивидуальной обработке. Сначала fuse-доктор пытается прочитать чип по стандартной схеме, и если это не получается ("FAIL!"), то делается попытка использовать схему 20-выводных T2313 совместимых чипов, после чего эта последняя попытка получается успешной. Так что это нормальное поведение, не ошибка.

Q009: Что за мусор "<[2J", появляющийся в логе терминала?
A009: Это последовательность команд для очистки экрана терминала. Чтобы она обрабатывалась нормально, включите настройку эмуляции VT-100 в настройках программы терминала.

Q010: Я пытаюсь вводить данные в терминале, но не вижу появления символов.
A010: Убедитесь, что в настройках программы терминала установлена опция handshake в состояние NONE.

Q011: После ввода данных в терминале я не могу подтвердить их клавишей Enter, и не могу продолжить ввод.
A011: Когда Вы нажимаете Enter, Ваша программа терминала должна отправлять последовательность символов CRLF. Если это не так, то проверьте настройки терминала.

Q012: Я все перепробовал, но все равно ничего не получается.
A012: Задайте вопрос автору проекта в комментариях (см. [1]). Укажите как можно больше информации - версию firmware и печатной платы, предоставьте лог терминала.

Q013: Действительно ли нужны все эти резисторы 1 кОм (R7..R23), последовательно со всеми сигналами?
A013: Нет, они не очень-то нужны, это просто защитные токоограничительные резисторы, Вы можете собрать схему и без них (заменить эти резисторы перемычками). Однако имейте в виду, что если по какой-то причине восстанавливаемый микроконтроллер вдруг не войдет в режим программирования, и продолжит выполнять свой код, то логическое состояние его выходов может войти в конфликт с выходными состояниями управляющего микроконтроллера доктора, и по этой причине без резисторов есть некоторая вероятность выхода портов GPIO из строя. Так что резисторы R7..R23 защитят схему от подобных ситуаций, и очень желательно собрать схему точно так, как указано в схеме.

Q014: Подтягивающие нижние резисторы (pulldown) для сигналов 12V и 5V (R24 и R27) сильно греются в ручном режиме, и всей схеме нужно более мощный источник питания. Могу я тут что-то поменять, поставить резисторы номиналом побольше?
A014: Да, можете, но схема может работать некорректно с некоторыми восстанавливаемыми микроконтроллерами. В режиме ожидания напряжения должны быть близки к 0V, и когда напряжение питания включается или выключается, перепады фронтов должны быть правильной формы (см. описания входа в режим высоковольтного программирования, описанный в даташите на микроконтроллер). Из-за того, что используются только простые биполярные транзисторы, эти транзисторы вполне удовлетворяют всем требованиям по быстродействию. Нас интересует случай с микроконтроллером attiny2313, когда есть проблема, когда все фьюзы записаны корректно, кроме одного, RSTDISBL. Обнаружилось, что из-за плохих перепадов 12V на сбросе, этот микроконтроллер нормально работает в параллельном режиме, но не с высоким напряжением, поэтому не получается поменять этот фьюз. Это только интерпретация автора, может быть также и другая причина проблемы.

Q015: Мой чип корректно читается, но доктор не может записать новые значения фьюзов, даже с разрешенным режимом полной очистки.
A015: Если программатор ISP работает подобным образом, то Ваш чип поврежден, тут ничего не поделаешь.

Q016: Без восстанавливаемого чипа, схема работает странно, зависает, затем снова начинает работать, когда я приближаю пальцы руки к проводникам платы. Зависание заключается в том, что на открыты ключи T1 (выдается +12V на сокет SV2) и T3 (выдается +5V на сокет SV2), и не горят оба светодиода.
A016: Схема и программа fuse-доктора не предназначалась для работы без восстанавливаемого микроконтроллера. Причина такого поведения в том, что когда восстанавливаемый пациент входит в режим программирования, fuse-доктор ждет появления высокого уровня на сигнале RDY, который должен выдать пациент. Этот вывод не подтянут к земле, и работает как вход с высоким сопротивлением, поэтому статика и наводки от Ваших пальцев читаются как лог. 1, и код fuse-доктора продолжает выполнять свою программу.

Q017: Названия чипов не появляются в логе, вместо этого выводится "no names in 8kB ver".
A017: Имена не отображаются в 8-килобайтных версиях firmware доктора, например для atmega8 и atmega88, потому что имена не помещаются в пространство памяти программ. Если Вы все-таки хотите видеть в терминале имена чипов, используйте для доктора микроконтроллеры atmega168 или atmega328, и прошейте в них правильную прошивку.

Q018: Перепутал полярность внешнего блока питания 12V. Чем это грозит?
A018: Если в блоке питания имеется ограничение тока на уровне 150..200 мА, то скорее всего ничего страшного не произошло. Если же блок питания выдает ток больше 1А, то скорее всего выйдет из строя стабилизатор напряжения IC1 7805, его придется заменить. Микроконтролер ATmega наверняка останется живым.

Вот здесь:https://yadi.sk/d/m1goTjri3Ggn8s  https://yadi.sk/d/J-VPq2Kr3Ggkmx  вы можете скачать файлы, в котором есть всё необходимое для самостоятельной сборки.

Программу "LayOut 6" для открытия файла платы можете скачать здесь: https://yadi.sk/d/bWA96ChKjGsqM

Прошивки и фьюзы в том же файле. 1000% повторяемость. Вопросы приветствуются.

При копировании материала, архивов, плат - убедительная просьба указывать ресурс, откуда берёте. Я не воровал, но я дорабатывал, что бы вам было легче. Уважайте мой труд!!!

 

 

 

 

 

 

 

 

Категория: Мои статьи | Добавил: fsem (12.09.2015)
Просмотров: 37500 | Комментарии: 67 | Рейтинг: 5.0/2
Всего комментариев: 621 2 3 4 5 »
62 Максим Казаков  
0
Здравствуйте, у меня похожая проблема с коллегой ниже. Загораются оба светодиода после нажатия START. Плату проверял, напряжение на ногах смотрел, ничего не помогает. Работаю на прошивке 2.12. Подскажите, что это может быть за проблема ?

61 Игорь  
0
Вот сайт где брал прошивки http://r0aek.me/_download/Atmega_FuseBit_Doctor-2.zip

60 Игорь  
0
У вас фуфлыжные прошивки 2.12 и 2.11 взял на другом сайте доктор заработал отлично и на 2.12 и на 2.11

59 Игорь  
0
Вы так и не ответили почему при нажатии старт загораются оба диода плату проверил нажимаю на старт на ресете 12в на vvc 5в а на 2.11 сразу и 12в и 5в без нажатия старт

58 Роман  
0
Добрый вечер подскажите пожалуйста подойдет микросхема ATmega8L-8PU в качестве ATmega8-DOC.

57 nanomic  
0
hy mr, i can't see firmware 2.12 for atmega 168 or 389p ?

56 zevs  
0
Добрый день хочу собрать Вашу плату но с своими дополнениями
1 хочу поставить в плату с повышающий преобразователь MT3608
2 микросхемку USB UART CH340
3 перевести на SMD компоненты
плату я уже развел и хочу чтоб Вы глянули на нее
могу я выслать ее на fedsemenyuk@gmail.com

55 svs  
0
По второй ссылке архив AFD_ 2_12.rar, там скриншоты прилагаются... В папке AFD_2.12_m8 скрины фузы D1 и E1

53 svs  
0
Цитата: "L:E1, H:D9 для прошивки v.2.12, и L:E1, H:D1 для прошивки v.2.11"
Судя по скринам в прошивках они в обоих случаях одинаковые - L:E1, H:D1. Вы уж как-то определитесь, разные или одинаковые!

54 fsem  
0
Это о каких скринах выговорите?

51 Александр  
0
Плата должна быть нормальной, я на этой плате с 10 штук Мег 8 восстановил и 3 штуки 32, но потом атмегу из нее использовал в другой проект, позже купил еще парочку и вот с ними не могу ничего сделать, походу надо еще одну мегу брать и еще раз попробовать шить. Вот только у меня в Дудке - получается что нужно шить инверсные Фьюзы, это так ?

52 fsem  
0
Я не разбираюсь в прямых и инверсных фузам. Есть L:E1, H:D9 для прошивки  v.2.12, и  L:E1, H:D1 для прошивки v.2.11. Фузы не могут быть прямыми или инверсными, может быть представление на картинке или то или другое.

1-10 11-20 21-30 31-40 41-41
Имя *:
Email *:
Код *:
Форма входа
Поиск
Друзья сайта