Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Проблема с прошивкой Atmega88 через JTAGICE mkII
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Lemist
Кто сталкивался с таким феноменом, подскажите, в чём фишка.
Опишу проблему. Я работаю с платой на МК ATmega88PA и прошиваю её программатором JTAGICE mkII с помощью AVR Studio.
При обычной прошивке для этого в AVR Studio я использую кнопку "Connect to the Selected AVR Programmer", программатор подключается через USB. Если после обычной прошивки потребовалось перейти на отладочную, AVR Studio нужно разрешить debugWire через SPI. А для запрета debugWire нужно в одном из пунктов меню Debug (...JTAGICE mkII) запретить debugWire. Это известно. А теперь сама ситуация.
Через несколько раз (большой статистики не набирал, но где-то после 10-12 раз) перестаёт читаться сигнатура, фьюзы - на любую попытку обратиться к МК AVR Studio ругается, вываливая окошко "ISP Mode Error, а в нижней статус-панельке появляется строка "Entering programming mode.. FAILED". Если попробовать перейти на отладочную прошивку, то после подтверждения "Use SPI to enable debugWire interface" AVR studio не может этого сделать и ругается "Failed to enter SPI mode". И во всех случаях AVR studio рекомендует проверить кабели.
Проблема нешуточная - перепрошивка платы после 10 раз становится невозможной - хоть покупай новый МК. sad.gif
OlegPowerC
Странно.... у меня полно ATMega88 и тоже JTAGICEmkII и не разу такая хурма не встречалась.
Иногда глючит но обычно решается снятием и подачей заново, питания
Lemist
В принципе я бы особо не заморачивался на эту тему, но руководство фирмы заявляет, что во всём виновата программа, которую я прошиваю в МК. Я облазил даташит вдоль и поперёк, но так и не нашёл никаких признаков того, что программа МОЖЕТ как-то повлиять на сам МК. Но этого не объяснишь, да и вообще проблему всё равно надо как-то решать, потому что это ненормально. Но я ведь прав в том, что программа никаким боком не виновата в этой проблеме. И кроме того, непонятно, почему Entering programming mode FAILED. Если я правильно понял, это либо не работает регистр SPMCSR, в который делается запись для программирования Flash-памяти МК (её можно програмировать до 10000 раз, если верить даташиту), либо интерфейc SPI. Но почему???
OlegPowerC
А вы elf файлами не пользуетесь случаем?
Lemist
Цитата(OlegPowerC @ Jun 17 2011, 14:43) *
А вы elf файлами не пользуетесь случаем?

Нет, исключительно HEX. Впрочем, когда наступает эта бодяга, уже неважно - я не попадаю ни в одно нужное окно.
Палыч
Цитата(Lemist @ Jun 17 2011, 15:27) *
не нашёл никаких признаков того, что программа МОЖЕТ как-то повлиять на сам МК.
Ещё как может! Например, если ошибочно включить (пусть и ненадолго) ногу порта на вывод, в то время как на эту ногу идёт сигнал извне... Попробуйте произвести эксперимент: на ПП распаять только МК (без всего "окружения") и несколько раз проделать все те действия по программированию МК, что приводили к его неработоспособности.
zltigo
QUOTE (Lemist @ Jun 17 2011, 13:35) *
Проблема нешуточная - перепрошивка платы после 10 раз становится невозможной - хоть покупай новый МК. sad.gif

Параллельным программатором его - поможет sm.gif. Описано сумбурно, но, полагаю, что это атмеловская шутка с накрыванем медным тазом DW интерфейса при снятии тактирования с SPI. SPI не работает, потому, что активизированн DW, а DW не работает по тому, что программа сняла тактирование с SPI. Помню сильно ругался, когда наступил. И самое главное - ну не нужно мне было отлаживаться, просто решил глянуть, как этот DW работает.
DVF
Вопрос из зала: "А может на это влиять схемотехническое решение линии Reset? Скажем, неуверенное тактирование или уровни?"
Fargot
Добрый день Всем! АВР недавно начал изучать. И пока разбирался успел испортить 2 микросхемы(после попытки включения в отладчике режима DW). Я так понял что можно стереть фьюзы путем High voltage programming.
Вопрос в том как мне войти в этот режим.
У меня STK500, плата расширения STK520 и программатор ice mkII.
соединил шлейфы как указано в datashit для 520, далее там отсылают к даташиту 500 по настройке jamperов, т.к. в описании нет моих мк (pwm2b/3b),то выставил все jampеры, т.е.на pjmp 2 перемычки, bsel соединил с pc2.
программатор оставил подключенным к spi разъему,
в итоге в avr studiо у меня не получилось реализовать высокого напряжения программирование
Куда подключать программатор и что я не так делаю, в руководстве не получаетс яразобраться чтоо
=GM=
Цитата(Lemist @ Jun 17 2011, 09:35) *
Через несколько раз перестаёт читаться сигнатура, фьюзы - на любую попытку обратиться к МК AVR Studio ругается, вываливая окошко "ISP Mode Error, а в нижней статус-панельке появляется строка "Entering programming mode.. FAILED". Если попробовать перейти на отладочную прошивку, то после подтверждения "Use SPI to enable debugWire interface" AVR studio не может этого сделать и ругается "Failed to enter SPI mode"

Похоже, такое случается, когда частота клоков отлаживаемого устройства и программатора не совсем соответствуют друг другу. Было такое у меня, решается банально просто. После появления "ISP Mode Error" переходите в режим отладки, там выключите DW режим (подзабыл, как называется строка, можно найти перебором), затем переходите обратно в "ISP Mode", должно заработать.
ILYAUL
Цитата
решается банально просто. После появления "ISP Mode Error" переходите в режим отладки, там выключите DW режим


+1
Lemist
Уважаемые коллеги!
Некоторое время занимался другими устройствами. Перед тем, как к ним перейти, прошил несколько свеженьких чистых плат с моим МК. Теперь потребовалось проверить изменения в новой версии. Однако одна из этих плат, которую я взял для проверки, тоже отказалась прошиваться - тем же манером (см. выше). Здесь уже не было никаких переходов - всего одна процедура прошивки. И тем не менее.
Кстати, о переходе в режим отладки и отключении DW. После входа в отладку, если он заругался на SPI, пункт меню, позволяющий отключать DW, просто в меню Debug не появляется. Так что воспользоваться этим советомне получается.
И самое интересное - сам прибор, его программа продолжает функционировать как ни в чём не бывало! Она воспринимает команды извне, отвечает на них и опрашивает все порты и все прерывания. Кроме сигнатуры... sad.gif
aba
To Lemist - запаяны ли на вывод сброса подтягивающий резистор и конденсатор на землю? Если да, то уберите их совсем.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.