Добрый день, господа. У Atmega8 по умолчанию стоит источник тактирования - внутренняя RC-цепь. Я изменил fuse, чтобы тактировать внешним кварцом - и получилась какая-то фигня - сбросился бит разрешения последовательно программирования (да забыл указать, что программирую внутрисхемно по SPI) и теперь вообще ничего нельзя зашить, ругается при процессе Verify. Подскажите, пожалуйста, как правильно изменять fuse. Состояние измененного (неработающего) микроконтроллера в прикрепленном файле.
Параллельный программатор спасет отца русской демократии
http://pol-sem.narod.ru/paraprog/paraprog.htm
Ljubitel
May 26 2005, 18:15
Цитата(m16 @ May 26 2005, 12:30)
Параллельный программатор спасет отца русской демократии
http://pol-sem.narod.ru/paraprog/paraprog.htmМожет,кстати,и не спасти. Когда писал - мегу8 особенно не тестировал.
Все больше 48/88/168. Разок проверил - вроде работает.
А тут человек написал,что именно с восьмой не хочет.
Стал проверять - угу... одна из трех мег только опозналась.
Все остальные - на ура. А восьмерка идеально только через
житаг и пошагово в АВР Студио :-)
Надо бы переделать,а лень все че то... да и причину поймать не могу.
Кстати,спасибо за рекламу :-))
Alexey_N
May 26 2005, 20:30
Цитата(ViDo @ May 26 2005, 13:08)
Добрый день, господа. У Atmega8 по умолчанию стоит источник тактирования - внутренняя RC-цепь. Я изменил fuse, чтобы тактировать внешним кварцом - и получилась какая-то фигня - сбросился бит разрешения последовательно программирования (да забыл указать, что программирую внутрисхемно по SPI) и теперь вообще ничего нельзя зашить, ругается при процессе Verify. Подскажите, пожалуйста, как правильно изменять fuse. Состояние измененного (неработающего) микроконтроллера в прикрепленном файле.
Сорри, но прикрепленный файл я рассматривать не стал, это уж Вы сами разбирайтесь. А вот типовая проблема всех начинающих на МЕГах - это тронуть фузы так, что выставляется
внешний генератор. Таким образом оживить мегу можно или действительно параллельным программатором (что по большей части фантастично), либо простым и ясным способом - подать
практически любую частоту от любого внешнего генератора на тактовый вход меги в процессе программирования. Для этого её даже и выпаивать не придется!
Удачи!
Проще всего, ИМХО, выкусить ее нафиг и впаять новую. Пред прошивкой новых фузов, предварительно считайте и разберитесь с текущим их текущим состоянием. Начинающие часто путают, что означает установленная галочка - установлен или сброшет, ноль или единица.
sseett
May 27 2005, 07:23
Думаю, вам надо проверить генерацию кварца (кварц должен быть на частоту более 1мгц) и если ее нет, проверить кварц, кондюки. На всякий случай проверить цепь сброса.
Надо попробовать подать внешнюю тактовую частоту (более 1мгц)
А то, что вы показали в прикрепленном файле вы можете получить, полностью отключив кабель программатора от АВРа (т.е. без камня вообще!), т.е. программатор по какой то причине не показывает реальное состояние фьюзов АВРа (только FF FF FF...).
Удачи!
raider
May 27 2005, 08:03
Цитата(ViDo @ May 26 2005, 12:08)
Добрый день, господа. У Atmega8 по умолчанию стоит источник тактирования - внутренняя RC-цепь. Я изменил fuse, чтобы тактировать внешним кварцом - и получилась какая-то фигня - сбросился бит разрешения последовательно программирования (да забыл указать, что программирую внутрисхемно по SPI) и теперь вообще ничего нельзя зашить, ругается при процессе Verify.
Попробуй программатор AVReAl
http://ln.com.ua/~real/avreal/ Подключается в самом простом случае 6-ю проводами по LPT. По одному из проводов идет тактовая, поэтому можно шить даже если fuse запрогаммирован на тактирование от внешнего генератора.
По-моему, Raider погорячился. То, что идет по одному из вышеуказанных шести проводов - это SCLK (или как ее), т.е. тактирование приемопередачи интерфейса связи , а чтобы "сдернуть" кристалл, нужно тактирование ЦПУ. А в данном случае и тактирование ЦПУ не поможет, если действительно запрещено внутрисхемное программирование. Лечить только параллельным, если есть к нему доступ и~5$ за новую отдавать не хочется (лучше пива выпить).
Добрый день, господа. Что значит "тронул фузы так, что перевел МК в режим тактирования от внешнего генератора"? Насколько я понимаю так и нужно делать если кварц подключен и именно он предполагается в качестве источника тактирования. Вот насчет кварца хорошее замечание, надо обязательно проверить, он у меня 4МГц. Я конечно могу ошибаться - с Мегами действительно раньше не работал.
raider
May 27 2005, 09:54
Цитата(yung @ May 27 2005, 11:31)
По-моему, Raider погорячился. То, что идет по одному из вышеуказанных шести проводов - это SCLK (или как ее), т.е. тактирование приемопередачи интерфейса связи , а чтобы "сдернуть" кристалл, нужно тактирование ЦПУ. А в данном случае и тактирование ЦПУ не поможет, если действительно запрещено внутрисхемное программирование. Лечить только параллельным, если есть к нему доступ и~5$ за новую отдавать не хочется (лучше пива выпить).
Смотрим описание адаптера "FBPRG"
Цитата
вывод LPT Сигнал AVR вывод LPT Сигнал AVR
6 (D4) /RESET 8 (D6) SCK
7 (D5) MOSI 10(ACK) MISO
5 (D3) XTAL1 18..25 (GND) GND
"...Можно также программировать контроллер без кварцевого резонатора (ключ -o0), что может оказаться удобным как при использовании -ap, так и в случае, если необходимо запрограммировать контроллер на работу от внутреннего RC-генератора."
Вывод LPT номер 5 (D3) подключен к XTAL1. Ни это ли нога контроллера для его тактировки?
Ну значит я погорячился. Все время пользуюсь аргуссофтовскими программаторами, там тоже 6 линий (LED не считаю), но назначение другое - шестой провод для питания программатора от пользовательской схемы.
Andrew_Q
May 27 2005, 10:37
ViDo не переживай, сериальным программатором ты не можешь перепрограммировать SPIEN (даташит стр.220). Стопроцентно ты включил внешний генератор, подключи внешний такт 1 - 8 Мгц на XTAL1 и программируй фузы заново. Все это стандартный первый шаг освоения фузов Меги.
ViDo могу сказать одно - все твои советчики не удосужились посмотреть на прикрепленный файл где черным по белому : сброшенный фуз SPIEN и ни какие аврреалы , шесть проводков с внешним тактированием не помогут по той простой причине что ипользуют отключенный тобой SPI интерфейс. То что тебе поможет я уже писал либо новый камень. Но с фузами надо тебе разобраться в первую очередь.Удачи
2 m16
Цитата
The SPIEN Fuse is not accessible in Serial Programming mode.

2ViDo
Не совсем понятно что такое ext XTAL, High frequency. Где-то выше вы говорили что это внешний генератор. Если это так, то кварц(внешний резонатор) тут не поможет! Вам надо на ножку XTAL1 завести тактовую частоту. В AvReal есть такая функция. Но если нету байт бластера и неохота его собирать, то перепаяйте мегу и будьте внимательны при выборе clock options.
2Andrew_Q
Вот блин. Столько написал, а когда ещё раз просматривал все посты ваш то и не прочитал

Ну тогда могу добавить, что после программирования фуза Reset Disable мега по SPI программироваться не будет!
sseett
May 29 2005, 22:47
M16 писал:
Цитата(m16 @ May 28 2005, 17:00)
ViDo могу сказать одно - все твои советчики не удосужились посмотреть на прикрепленный файл где черным по белому : сброшенный фуз SPIEN и ни какие аврреалы , шесть проводков с внешним тактированием не помогут по той простой причине что ипользуют отключенный тобой SPI интерфейс. То что тебе поможет я уже писал либо новый камень. Но с фузами надо тебе разобраться в первую очередь.Удачи
Я посмотрел, и писал выше:
"А то, что вы показали в прикрепленном файле вы можете получить, полностью отключив кабель программатора от АВРа (т.е. без камня вообще!), т.е. программатор по какой то причине*** не показывает реальное состояние фьюзов АВРа (только FF FF FF...)."
***Причины могут быть разные, и не только сброшеный фьюз SPIEN.
Добрый день, господа. Так все-таки о алгоритме программирования вас хочу спросить. У меня программатор AVR ISP, его я подключаю к целевой плате с микроконтроллером по SPI интерфейсу и кварцем, выставляю фузы, чтобы тактирование проходило от этого же несчастного кварца и .... выходит полная лажа, при этом программатор далее не видит микроконтроллер и SPIEN даже как-будто сброшен. Как так может получаться??? Если же оставлять заводские установки (тактирование от внутр. RC-цепочки) - все гут и видит и программируется.
ViDo
а можно поточнее - какие фузы устанавливаешь (сбрасываешь) ?
Здравствуйте, господа. Все! Разобрался - бракованый кварц принес мне столько головной боли!!! Спасибо всем. кто откликнулся и действительно помог мне дельными советами.
2Ljubitel "А восьмерка идеально только через
житаг и пошагово в АВР Студио :-)"
;О) нет такого слова в восьмёрке. JTAG, в смысле. ИМХО, внешнее тактирование надо давать.
Ljubitel
Jun 12 2005, 19:15
Цитата(mse @ Jun 11 2005, 11:49)
2Ljubitel "А восьмерка идеально только через
житаг и пошагово в АВР Студио :-)"
;О) нет такого слова в восьмёрке. JTAG, в смысле. ИМХО, внешнее тактирование надо давать.
Я в курсе какая периферия есть в восьмерке.
Просто по природе своей человек - существо ленивое.
Лень набирать много слов. В своем посте я имел в виду:
"Мега 8 при использовании моего программатора определяется
не всегда. Однако,если подключить житаг к моей плате (там стоит
мега 16) и запустить программу (программатора) в отладчике (АВР Студио)
пошагово,то мега 8 моим программатором определяется всегда 100%.
В чем проблема я пока не выяснил. Времени разобраться пока нет.
Надо,конечно же, будет переделать."
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.