PDA

Просмотр полной версии : Восстановление atmega8a с неправильно прошитыми фьюзами


JeikiS
06.04.2012, 16:53
Доброго времени суток, уважаемые форумчане.

На днях случилось со мной несчастье: при разработке очередного проджекта понадобилось мне подправить фьюзы на атмеге8. Однако, либо по собственному неразумению, либо по каким то бесовым проделкам, мега отказалась играться со мной и залочилась... ни одним программатором(знаменитые 5 проводков и AVRISP) определяться напроч отказывалась. Замечу, что ещё одна мега8 с такими же симптомами уже давно пылилась в коробочке с гордо выведенным крестом на своем тельце.

Результаты поисковиков в один голос направляли меня на ресурсы посвященные сборке того, или иного параллельного программатора. Для самого простого из них нужна, опять таки, 8-я Мега, а их запас в моей сокровищнице уже исчерпан. Замкнутый круг, чтобы восстановить атмегу8, нужна атмега8. А преобресть их в условиях нашего места положения, как вы догадываетесь, чертовски сложно.

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

Изучив даташит на этого зверька и использовав аналитическое мышление я пришел к выводу что виноваты именно фьюзы отвечающие за настройку устройства тактирования микроконтроллера, т.к. фьюз SPIEN запрещающий последовательное программирование, если верить даташиту, последовательным программатором прошить нельзя(что, впринципе, логично... респект атмеловцам), а фьюз RSTDISBL я обходил стороной, аккуратно считывая его и оставляя неизменным, зная о его свойстве превращать ножку RESET в еще один порт ввода/вывода, опять же, делая невозможным программирование контроллера последовательным программатором.

Контроллер на макетке у меня собран с кварцем на 16 Мгц => два варианта можно вычеркнуть - контроллер настроен не на внешний Кварц и не на Внутренний.
Остаются 3 варианта: внешняя RC-цепочка, внешний генератор тактовой частоты и внешний низкочастотный кварц(не совсем понимаю о чем тут речь).

во всех оставшихся вариантах ножка XTAL1 подключается к источнику тактовой частоты, а ножка XTAL2 должна висеть в воздухе Потому перед установкой контроллера в панельку макетки отогнул ножки 9,10 контроллера(XTAL1, XTAL2 соответственно)

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

(картинка в аттачментах)

подпаиваю выход генератора к ноге XTAL1 и "о чудо!" \о/ микроконтроллер определяется на 5-ти проводках(программатор такой общеизвестный) и с успехом читает фьюзы. Как и предполагалось, фьюзы были выставлены на внешний источник тактовой частоты.

Не долго думая достаю запылившуюся атмегу и проделываю с ней те же операции... результат - тотальный успех. в этом случае фьюзы были настроены на тактирование от низкочастотного внешнего резонатора.

в итоге мной были возвращены к жизни два микроконтроллера, с утратой одного из которых я уже смирился.

Удачи вам и до встречи на форумных страницах. о/

User_2kx
08.04.2012, 16:04
Фотку зацепить можно вложением поста ;-)

TRV
08.04.2012, 22:52
внешний низкочастотный кварц(не совсем понимаю о чем тут речь).

Это кварц типа часового.

JeikiS
09.04.2012, 08:54
Это кварц типа часового.
ну видимо, именно, "типа"... потому как читал на просторах великого и могучего о том что не работают атмеловские контроллеры от часового кварца, в то время как у пиков даже опция специальная предусмотрена в настройках под это дело.

TRV
09.04.2012, 09:24
Как запустить неработающий часовой кварц (32768 Гц).

Вот тут почитай, мало фьюзы выставить, надо еще програмнно правильно использовать.
http://www.getchip.net/posts/052-kak-zapustit-nerabotayushhijj-chasovojj-kvarc-32768-gc/

JeikiS
09.04.2012, 11:31
в этой статье берётся, опять же, МК поддерживающий часовой кварц, о чём автор упоминает в теле статьи:
Микроконтроллер был взят ATmega48 (умеет работать с часовым кварцем)