Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Atmega16 не могу прошить помогите
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Oleg Onegin
Очень прошу помочь более опытных людей!
Ситуация следующая! Захотел я прошить чип в более сложной схеме, у меня не получилось. Потом я собрал элементарную схему (печатка приведена) где просто питание подается на чип. Дума что бы разобраться что не работает. И никак! Прошиваю понипрогом! Ошибка 24 (Device missing or unknown device (-24)). В качестве прогроматора использую схему пять проводков ниже привел схему по какой собирал. В Понипроге указано AVR ISP I/O тест прогромматора выдает ОК. Питание на схему идет 4.9 мерил мультиметром. Кварц не подключен, но чипы новые и вроде прошивка должна без них пройти т.к. фузы не выставленны. Вообщем ОЧЕНЬ прошу помощи. Помогите плиз!!! Если у кого есть возможность стукните в аську 261043
эскизы: 1) Элементарная схема печатной платы (посмотртие все ли так)


2) То чем я пробовал прошить (тоже посмотрите все ли так)


P.S. По поводу контактов все уже 100 раз проверил ошибок быть не должно вроде. Пробовал на 3х разных системных блоках! Вообщем весь энтузиазизьм пропал. А так хочется дружить с мегами!
Всем заранее спасибо! Очень расчитываю на помощь!
=AVR=
1. На питание МК довесь керамический конденсатор 0.1 мкф.
2. Длина проводов от LPT до твоей платы не должна превышать 20 см.
3. Pony под ХР может работать некорректно - попробуй оба режима, API и I/O. Возможно, придется установить "открывалку" портов РС.
4. Попереключай режимы работы LPT-порта в BIOS Setup. Нормально должны работать Normal, Bidirectional и EPP, а с ECP возможны проблемы.

Если все вышеперечисленное не помогло, то скачай отличный консольный программаторAVReAl, запусти avreal32.exe -p1 +mega16 -v -f -o500 -% и посмотри на диагностические сообщения. Если все нормально - то прошивай спокойно свой код командой avreal32.exe -p1 +mega16 -e -wp -o500 myfile.hex.
mse
Цитата(=AVR= @ Oct 24 2007, 13:45) *
... Возможно, придется установить ... "открывалку" портов РС...

Открывалка там встроенная. На картинке с лошадью написано, что пользуется какая-то блиотека.
Rull
а про дроты на лпт разъеме 2 3 11 12 не забыл? Часто забывают.
GDI
Разъемы на плате и в программаторе не совпадают... или вы их проводками припаяли? А правильно ли припаяно? Ресет до контроллера доходит?
Oleg Onegin
1) Конденсатор 0.1 завтра довешу
2) Длинна менее 20 см.
3) С открывалкой тоже завтра же поиграюсь, возможно это поможет т.к. на всех машинах где пробовал ХР стоит
4) ок поиграюсь завтра с портом
5) "а про дроты на лпт разъеме 2 3 11 12 не забыл? " это перемычки? да я запаял и вроде по наличию их понипрог выдает "Тест ОК!" но имхо они на программирование не влияют. Вообщем есть эти перемычки.
6) Припаял все правильно! Как проверить "Доходит ли резет" Проверить мультиметром напряжение? Завтра замеряю. Всем спасибо! Завтра сутра начну ковырять. Надеюсь что ясность появится! Спасибо! Жду помощи дальше!
GDI
Можно и мультиметром, в момент программирования там должен быть 0.
Mik174
классическая ошибка начинающих:
включают чип, зашивают в него программу - все работает, пока не снимут питание, потом - чип не не опознается, программатор дает сообщения об ошибке.
Особенно часто это происходит при использовании программаторов с графическими оболочками (тот же Pony Prog). Там достаточно легко можно перепутать необходимые настройки.

Причина: при программировании неверно задаются фузы настройки источника тактового сигнала.

Результат: при очередном включении не работает тактирование контроллера, как следствие - в таком виде перепрограммировать МК и исправить фузы в правильное положение уже не получится.

Рецепт: Подключить на вход МК выход от внешнего генератора.

Подключить программатор, подать питание, попробовать прошить чип. Если чип распозналося и шьется - значит причина найдена верно.

Лучше пользоваться программатором avreal, как Вам уже посоветовали.
Для проекта один раз создаете командный bat файл со всеми настройками и когда нужно прошить чип, просто его запускаете. Не нужно указывать файл прошивки, настройки, тип чипа и т.д. при каждой прошивке.
Удобнее, быстрее, надежнее.

И советую собрать программатор со схемой, рекомендуемой автором программатора avreal. Там всего одна микросхема 244. Не так сложно, да и не дорого. Зато если ошибетесь, то сгорит не LPT порт, интегрированный в материнскую плату ПК (т.е. ее замена или ремонт, и то и другое и хлопотно и достаточно дорого), а сгорит эта микросхема (порядка 20 рублей ее покупка и 15 минут времени на ее замену).


Уточняю: подать сигнал от внешнего генератора на тактовый вход МК.
Этот вход можно найти, открыв datasheet на использованныйц контроллер.
Oleg Onegin
Сейчас разбираюсь с avreal, а подать сигнал от внешнего генератора, это подключить кварц и конденсаторы? это имеется в виду?
=AVR=
AVReAl умеет сам генерить сигнал, имитируя внешний генератор (ключ -o0). Этот сигнал будет присутствовать на ноге 5 (D3) LPT, и подавать его нужно на ногу XTAL1 AVR
GDI
Цитата
а подать сигнал от внешнего генератора, это подключить кварц и конденсаторы? это имеется в виду?

Нет. кварц - это кварц, а внешний генератор - это внешний генератор. Я однажды подавал на мегу сигнал от генератора НЧ - там 200кГц максимально получалось и удалось прошить в контроллер правильные фьюзы. Подавать надо на ногу XTAL1.
Oleg Onegin
Ок! Буду знать видимо в этом проблема была!
Подскажите плиз тогда сразу же если можно принтскрином фьюзы в понипроге, которые не позволят так обломаться с камнем. И какова последовательность действи? Тоесть
1) Подклчил прогроматор и подал питание на схему
2) открыл понипрог указал девайс и программатор
3) далее калибровка
4) прочитал фьюзы
5) прошил как нужно (вот тут если можно поподробней) что бы осталась связь с камнем
6) далее заливаю файл.
Ребят, все ли правильно??? И если можно приведите скрин с фьюзами позволящий избежать этих моих ошибок!!! Заранее спасибо!
=AVR=
Генератор граблей под названием PonyProg ОБЯЗАТЕЛЬНО рано или поздно попалит твои фузы - настолько идиотский там User Interface. Пользуй AVReA,l или AVR Dragon, или AVRISP mkII, но не это поделие.

На будущее тебя может заинтересовать вот такая изящная самоделка
Oleg Onegin
Добрый день! Воообщем ситуация следующая. Я развел печатную плату для того что бы прошить Атмегу16-16 в дип корпусе. Использую понипрог. Раньше я поднимал схожую тему, и мне сказали что ошибку -24 понипрог у меня при обращении к камню выдавал из за неправильно выставленных фьюз. В четверг я купил новый камень, Развел платку как показана на рисунке. Там подведено питание, разьемы программирования, и подклчен кварц 8мгц и 2 конденсатора по 18пик. Питание на чип подается 4.9В. Вставил я значит в постельку чип, и снова та же история! Нет связи с камнем. Камень новый тоесть я изначально не мог фьюзы неправильно выставить. Прогромирую с помощью 5ью проводков привожу схему: вот по этой ссылке можно ее увидеть http://electroprog.ru/index.php?nma=catalo...e=1&nums=16
Длинна проводков менее 15 см.

Печатная плата:


Осцилогрофом пробую подключаться к MOSI вижу что если нажать в понипроге ИГНОР то цифровой сигнал идет. Вообщем я в недоумении пожалуйста помогите разобраться!! Заранее спасибо.
Забыл. также я пробовал прошить CodeVision'ом все тоже самое! Очень хочется начать работать и изучать эти чипы, но уже какой месяц руи опускаются в связи с этой проблемой. Я думаю люди тут знающие есть и помогут грамотно объяснить в чем ошибка.
Побольше плиз дайти инфы, я могу сфоткать или сделать все что вы скажете. Заранее спасибо
GDI
RESET проходит на МК? Программирование чипа происходит только тогда когда на линии RESET лог."0".
Kuzmi4
2 Oleg Onegin - советую всё таки купить НС244 и склеить нормальный СТК.
А касательно проблемы - вы бы лучге схему а не ПП дали - так просче было б разобраться.
А так на вскидку стандартные проблемы - закорочены проводки, неправильно подвередены к коннектору.. ну и так далее...
Да и глючная лошадка - возмите авреал - менее глючный хоть и консольный. Или если совсем неинтересно с консолью возится - поставде имэйдж крафт или кодвижн - там мона с графики программить чипы..
Oleg Onegin
Я учел все советы сегодня еще раз все попробую дома отпишу может что забыл
vesago
Посмотрите настройки лпт порта в биосе, убедитесь, что просаживается ресет при программировании, отсутсвуют сопли в монтаже.
defunct
Советую купить JTAGICE или AVR-Dragon, для игр с m16 будет самое то.
Igor26
Цитата(defunct @ Dec 11 2007, 16:16) *
Советую купить JTAGICE или AVR-Dragon, для игр с m16 будет самое то.

+1000
Mik174
Сразу с завода чип приходит настроенным на работу с внутренним RC генератором.
Если не программируется - 99.99 % нужно искать ошибки в схеме подключения или схеме программатора.

Если пользуетесь avreal, то проверьте, установлен ли драйвер Driver Linx ?
Если нет, поставьте его. На страничке автора программатора написано, где его взять.

Насчет программатора: пользуюсь avreal и Вам рекомендую.
Если еще не собрали программатор STK200 по схеме на страничке автора программатора, советую это сделать.
Страница программатора:http://ln.com.ua/~real/avreal/index.html

Генератор, например, как по ссылке:
http://www.chipdip.ru/product0/30023.aspx
Частоту можно брать любую, лучше от 4 до 8 МГц.

К генератору подключается питание от схемы (5 вольт), и его выход подключают к тактовому входу МК.
Посмотрите по datasheet, к какому из выводов МК нужно подключать.
Но обычно он нужен если Вы неверно зашили фузы, т.е. когда чип сначала работал, но после первой прошивки перестал отзываться. Похоже, это не Ваш случай.
Oleg Onegin
Извините что пропал, палец дверью прижал ничего делать не мог!
Вообщем я достал осцилограф и подцепил его к ножкам, если нажать игнор в понипроге, то по ресету вижу как просаживается в ноль, остальные вижу что идет передача цифровых сигналов. Настройки порта SPP (Стандарт принтер порт). Я купил шинный формователь спаяю путевый программатор попробую все же с ним. Но по началу я собирал сей девайс результат тот же. В понедельник выложу более подробно логи avreal. Спасибо за помощь!
GDI
Э, батенька, ктож с SPP работает, надо EPP, в общем любой КРОМЕ SPP smile.gif
ae_
Цитата(Mik174 @ Dec 12 2007, 20:24) *
...
Насчет программатора: пользуюсь avreal и Вам рекомендую.
...
Генератор, например, как по ссылке:
...

При использовании AVReAl внешний генератор не нужен, выход XTAL1 программатора подключить к одноимённому входу МК и указать ключ -o0. Этим способом можно "реанимировать" МК, фьюзы которых были выставлены для работы от внешнего генератора, от внешней RC цепочки, от кварцевого/керамического резонатора, причём подключенный кварц не мешает :)
Baser
Фьюзы могут портится даже при первом чтении Меги при условии что:
- программатор на LPT;
- Windows XP SP2 без приложения рук.

Я так после апгрейда окон Мегу128 отрубил, после чего скакал вокруг неё пока не взял старую макетку с Мега8 и кварцем (с какой-то старой программой) и проводками припаял gnd, vcc, xtal1. После чего Мега128 ожила. Но программатор перестал глючить только после подкрутки системного реестра окон.

А с WinXP SP2 дело следующее:
в винду добавили plug-&-play для принтерного порта, который по умолчанию включен! Винда каждые несколько секунд лезет на порт проверять а не подключил ли я новый принтер:-))
После чего ни одна прога для LPT порта больше не пашет.
Блокируется все это ключом в системном реестре (у меня такого ключа вообще не было):

XP Parallel port polling registry fixes
---------------------------------------
On some version of windows XP the OS will poll a parallel port to see if a printer has been attached. This can cause problems with any programmer or dongle that is attached to this port.

A registry entry will prevent the polling. If this fix is used then XP will only look for a printer on boot, and will not detect a printer that is attached when the computer is running.

NOTE: THE FIX WILL NOT BE IMPLEMENTED UNTIL THE PC HAS BEEN REBOOTED!

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Parport\Parameters]
"DisableWarmPoll"=dword:00000001

А насчет программатора, если хочется максимально дёшево но надежно, то рекомендую купить ATAVRISP2 с USB (AVRISPmkII). Он стоит всего 40 баксов и поддерживается AVRStudio. Есть ещё AVR Dragon за те же деньги, но у него, говорят, источник быстро дохнет.
=AVR=
Цитата(GDI @ Dec 14 2007, 12:16) *
Э, батенька, ктож с SPP работает, надо EPP, в общем любой КРОМЕ SPP smile.gif
SPP тоже прекрасно работает - это ты с ECP путаешь, там действительно бяда
Oleg Onegin
Все! Разобрался всем спасибо! Вообщем взял девайс на работу и там прошил, дома видимо у обоих системников было что то с ЛПТ портами. Всем большое спасибо за помощь!
_lukash_
Всем привет!

Извиняюсь, что в чужую тему пишу.
По ошибке зашил fuse так, что mega162, к которой припаян кварц на 14745600, пытается рабатать от ceramic resonator. Т.е. fuse CKSEL3:0 = 1000.
В даташите написано, что "This option should not be used with crystals, only with ceramic resonators", и МК уже не распознается.
Пробовал шить с ключем -o0 (avreal), тактируя МК от LPT, но все равно не помогает (раньше когда fuse в 0000 выставлял - ключ -o0 работал нормально).
Подскажите как поправить fuse плз.
SasaVitebsk
Цитата(=AVR= @ Dec 14 2007, 15:31) *
SPP тоже прекрасно работает - это ты с ECP путаешь, там действительно бяда

SPP это самый первый-стандартный из расстандартных. smile.gif
ECP/EPP это уже двунаправленные. Если читать стандарт, то все они должны работать в стандартном режиме. Реально проверял только SPP и EPP.

Кстати задействовать EPP в ручную, согласно всем спецификациям у меня почему-то не получилось. sad.gif
Baser
Цитата(_lukash_ @ Jan 5 2008, 14:57) *
По ошибке зашил fuse так, что mega162, к которой припаян кварц на 14745600, пытается рабатать от ceramic resonator. Т.е. fuse CKSEL3:0 = 1000.
В даташите написано, что "This option should not be used with crystals, only with ceramic resonators", и МК уже не распознается.
Пробовал шить с ключем -o0 (avreal), тактируя МК от LPT, но все равно не помогает (раньше когда fuse в 0000 выставлял - ключ -o0 работал нормально).
Подскажите как поправить fuse плз.

Если МК не отвечает, значит нет внутреннего тактирования. Пока вы его не обеспечите, ничего не получится. Если подача внешнего клока на ногу XTAL1 ни к чему не приводит, то можно только попробовать найти подходящий керамический резонатор. Хотя и при таких настройках внешний клок должен помогать.
Если же вам удалось как-то запретить сериальное программирование, то тогда поможет только параллельный программатор.
_lukash_
А какой нужен керамический резонатор в данном случае?
Сериальное программирование разрешено, менял только CKSEL.
Т.е. должно помогать при таких настройках внешний генератор, или кварц?
У меня есть еще рабочая mega8 на тестовой платке, может попробовать от нее тактировать mega162? Как это делается - соединяются XTAL1 или по таймеру лучше как-то?
Baser
Цитата(_lukash_ @ Jan 5 2008, 19:33) *
Т.е. должно помогать при таких настройках внешний генератор, или кварц?
У меня есть еще рабочая mega8 на тестовой платке, может попробовать от нее тактировать mega162? Как это делается - соединяются XTAL1 или по таймеру лучше как-то?

Поможет или внешний генератор или керамический резонатор, кварц может не загенерить.
Я в пред. посте написал, что даже при установленных фузах для керамического резонатора, нога XTAL1 все равно служит входом тактирования МК и внешний клок должен помочь.

Несколько постов обратно я писал, как реанимировал mega128 при помощи макетки с mega8 с кварцем на 4МГц. Подключал только питание с землей и линию клока: XTAL2-mega8 -> XTAL1-mega128.
Screw
Хотите задачку?
Есть мега16 =) фьюзы/flash/eeprom читается, пишется.
НО у CVAVR есть такая штука - считывание сигнатуры и калибровки - дак вот том 0xFF.

МК работать не хочет =)

скрин с фьюзами Нажмите для просмотра прикрепленного файла

Программатор AVR910 100% исправный =)
Для теста на XTAL1 был подан внешний тик с другой меги - абсолютно без изменений.

Какие соображения? =)
bmw535i
была у меня такая ситуация мега 16 прошилась нормально 5 проводками напрямую к LPT но работала както неравномерно и постоянно спустя 1-2 минуты висла но резета слушалась, потом както я её оставил включенной на 10мин естественно она зависла и полежала, попробывал перепрошить CVAVR ругнулся что чтото там в епром нето я решил ещё раз прошить он сказл уже чтоневидит ничего = ну я похоронил чип
взял мегу48 баловался баловался загнал в 128килогерц встроенные помог только AVREAL но !!!
-o0 непомогало а вот -o128Khz помогло (получается нада знать частоту с которой работает мега чтобы помог этот ключик) ?!?!?! после этого все востановил и CVAVR снова все видел но яу решил во все тяжки пометил все фьюзы и прошил - естественно чип "умер" и уж ничто мне непомогло больше


есть мысли? кстати понял почему висла моя первая мега: в кодевизион использовалиь вывод в ком порт строки и при большой длине строк он пару раз выводил а потом вис ?!?!?! короткие выводит нормально
kipmaster
Когда "о0" не помогает, можно попробовать "о0,32". Понижение частоты мне помогло восстановить CKSEL на меге 168.
Deny
Вот тебе ответ: smile3046.gif
Теперь сделай перепайку, но отсчет начни с 13 контакта
и так далее.
Т. е.
13 - 1
12 - 2
11 - 3
... ...
1 - 13


В BIOS поставь LPT как EPP. в Windows XP [Панель управления -> Система ->
-> вкладка Оборудование -> Диспетчер устройств -> Порты (COM и LPT) ->
-> LPT кликнуть два раза -> вкладка Параметры порта снять галочку
Разрешить обнаружения старого Plug & Play]
Переключатель должен стоять на ... Не использовать прерывание в любом случае ...
И всё должно получится!!!
Удачи!!! biggrin.gif
IgorKossak
Новичок Deny, рекомендую срочно ознакомиться с правилами, а также учесть следующее:
1. Прежде чем отвечать на посты, смотрите на их дату.
2. Попугайская раскраска здесь не приветствуется. Привлекать внимание следует содержанием, а не формой.
3. ...

Модератор.
Deny
Простите за яркое появление!!!
Во-первых, на эту тему я вышел через YANDEX поисковик 12-01-2011, а значит, ей могут воспользоваться по сей день и кто угодна !!!
А попугайская раскраска, это не привлечение внимания, а простое выделение действий из основного текста.
Но всё равно спасибо, что акцентировали на недопустимый формат.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.