Страница 1 из 1

почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 17:04:28
loki113
вобщем развлекался делая отладочную плату. atmega8
схему рисовать не стану ибо все просто:
на порт В повесил светодиоды через резистор в 300 ом и на землю
подключение и прошивку сделал через LPT (тоже подводится через вывода порта В)
считывалось все нормально, при попытке установки фьюзов МК прошился (!) и перестал опознаваться, залитая прошивка не запустилась.
были включены следующие фьюзы:
CKSEL0,CKSEL1,CKSEL2,CKSEL3
CKOPT
SUT0
БОЛЬШЕ НИЧЕГО НЕ ВКЛЮЧАЛ.
инфу взял с таблички
Изображение
http://avrproject.ru/publ/poleznaja_inf ... es/4-1-0-7

почему сдохла микросхема? я не включил какой-то фьюз? или включил лишний?
вторую микросхему шью с фьюзами BOTSZ1, BOOTSZ0, SUT0, CKSEL1, CKSEL2, CKSEL3, SUT0
все нормально работает. НО ШЬЮ В ДРУГОМ ПРОГРАММАТОРЕ (ТОЖЕ LPT)
могло ли сдохнуть из-за программатора? неужели светодиоды об землю могли при прошивки убить МК?

или все-таки фьюзы?
где можно почитать подробно про расшифровку фьюзов?

Re: почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 17:10:46
blackx
Кварцевый резонатор правильно подключен к МК? Нет ли разрывов в его цепи?

Почитать можно в даташите. Если постараться, можно найти перевод даташита на мегу8, я где-то его встречал :)

Ну и к слову, чем и как фузы шили?

Re: почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 17:37:15
loki113
кварц припаян. на втором (проверенном ) программаторе тоже не видит 1. микросхему и прекрасно видит вторую. т.е. убилась именно первая, только я не понял как и почему
шил понипрогом (забыл упомянуть) поставил галки, нажал write, потом нажал write all
как бы шью не первый раз, но впервые на данной макетке
..
в программе был включен внутренний генератор на 1 МГц
могло ли повлиять то, что фьюзы были включены в диаппазоне 3-8 МГц ?

Re: почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 17:48:01
blackx
Так а кварц то у вас какой запаян? Если на 16 мег, то CKOPT должен быть 0 (т. е. programmed).

Re: почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 18:09:24
loki113
ставлю внутреннюю генерацию, т.е. без кварца. в программаторе есть, но не важно.
если я не ошибаюсь: галка в понипроге означает "включено"
т.е. если я bootlock поставлю галку, то процитать я его больше не смогу и записать тоже.
а восстановить каким-то другим железом, убитую в эксперементах AVR можно? или все, с концами?

Re: почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 19:09:01
borys
Если проблема с фьюзами, то можно. Для этого существуют параллельный программатор и "фьюз-бит доктор". Инфор-
мация по тому и другому есть в этом же разделе форума.

Re: почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 19:09:14
blackx
Не понял, а почему CKSEL0...3 тогда ставите 1111? Это для внешнего резонатора.

Если кристалл залочен (например, выключен SPIEN), то можно параллельным программатором починить. Если CKSEL'ом выставлена работа от внешнего генератора, то поможет собственно внешний генератор (хоть из мультивибратора) или "метод пальца".

Спаленный МК починить уже не получится.

Re: почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 19:23:27
loki113
blackx писал(а):Не понял, а почему CKSEL0...3 тогда ставите 1111? Это для внешнего резонатора.
. Если CKSEL'ом выставлена работа от внешнего генератора, то поможет собственно внешний генератор (хоть из мультивибратора) или "метод пальца".
CKSEL проставил 1111 по ошибке (думал кварц на 8 )
биты CKSEL 1111 (3..8 МГц) могут не давать МК работать с кварцем на 16 (в программаторе) ? (просто под рукой нет кварцев менее чем на 16)?
фьюз доктора попробую. спасибо.

Re: почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 20:09:48
blackx
Тогда смотрите в сторону CKOPT. Он должен быть запрограммирован (0) для работы с кристаллами на 16 мег

Re: почему умерла mega8 ?

Добавлено: Сб июл 27, 2013 22:03:51
uk8amk
Она могла "залочиться" или неправильным CKSEL: External RC, External Osc, или установкой RSTDISBL.
SPIEN сбросить простым программатором нельзя.

Как показывает моя практика кварцы(не советские) на 16Мег нормально заводятся и без CKOPT, но с ним надежней.

Для начала - собрать простой генератор на пару мегагерц и через кондер сигнал подать на XTAL1. Вариант "для бедных" - прикоснуться пальцем к XTAL1 и в программаторе выставить мин. скорость 50-200Гц. От наводки бывало запускалось через раз. Если не поможет - искать параллельный программатор и восстанавливать RSTDISDL.