Jump to content

    
Sign in to follow this  
Lemist

Проблема с прошивкой Atmega88 через JTAGICE mkII

Recommended Posts

Кто сталкивался с таким феноменом, подскажите, в чём фишка.

Опишу проблему. Я работаю с платой на МК 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 раз становится невозможной - хоть покупай новый МК. :(

Share this post


Link to post
Share on other sites

Странно.... у меня полно ATMega88 и тоже JTAGICEmkII и не разу такая хурма не встречалась.

Иногда глючит но обычно решается снятием и подачей заново, питания

Edited by IgorKossak
Бездумное цитирование

Share this post


Link to post
Share on other sites

В принципе я бы особо не заморачивался на эту тему, но руководство фирмы заявляет, что во всём виновата программа, которую я прошиваю в МК. Я облазил даташит вдоль и поперёк, но так и не нашёл никаких признаков того, что программа МОЖЕТ как-то повлиять на сам МК. Но этого не объяснишь, да и вообще проблему всё равно надо как-то решать, потому что это ненормально. Но я ведь прав в том, что программа никаким боком не виновата в этой проблеме. И кроме того, непонятно, почему Entering programming mode FAILED. Если я правильно понял, это либо не работает регистр SPMCSR, в который делается запись для программирования Flash-памяти МК (её можно програмировать до 10000 раз, если верить даташиту), либо интерфейc SPI. Но почему???

Share this post


Link to post
Share on other sites
А вы elf файлами не пользуетесь случаем?

Нет, исключительно HEX. Впрочем, когда наступает эта бодяга, уже неважно - я не попадаю ни в одно нужное окно.

Share this post


Link to post
Share on other sites
не нашёл никаких признаков того, что программа МОЖЕТ как-то повлиять на сам МК.
Ещё как может! Например, если ошибочно включить (пусть и ненадолго) ногу порта на вывод, в то время как на эту ногу идёт сигнал извне... Попробуйте произвести эксперимент: на ПП распаять только МК (без всего "окружения") и несколько раз проделать все те действия по программированию МК, что приводили к его неработоспособности.

 

Share this post


Link to post
Share on other sites
Проблема нешуточная - перепрошивка платы после 10 раз становится невозможной - хоть покупай новый МК. :(

Параллельным программатором его - поможет :). Описано сумбурно, но, полагаю, что это атмеловская шутка с накрыванем медным тазом DW интерфейса при снятии тактирования с SPI. SPI не работает, потому, что активизированн DW, а DW не работает по тому, что программа сняла тактирование с SPI. Помню сильно ругался, когда наступил. И самое главное - ну не нужно мне было отлаживаться, просто решил глянуть, как этот DW работает.

Share this post


Link to post
Share on other sites

Вопрос из зала: "А может на это влиять схемотехническое решение линии Reset? Скажем, неуверенное тактирование или уровни?"

Share this post


Link to post
Share on other sites

Добрый день Всем! АВР недавно начал изучать. И пока разбирался успел испортить 2 микросхемы(после попытки включения в отладчике режима DW). Я так понял что можно стереть фьюзы путем High voltage programming.

Вопрос в том как мне войти в этот режим.

У меня STK500, плата расширения STK520 и программатор ice mkII.

соединил шлейфы как указано в datashit для 520, далее там отсылают к даташиту 500 по настройке jamperов, т.к. в описании нет моих мк (pwm2b/3b),то выставил все jampеры, т.е.на pjmp 2 перемычки, bsel соединил с pc2.

программатор оставил подключенным к spi разъему,

в итоге в avr studiо у меня не получилось реализовать высокого напряжения программирование

Куда подключать программатор и что я не так делаю, в руководстве не получаетс яразобраться чтоо

 

Share this post


Link to post
Share on other sites
Через несколько раз перестаёт читаться сигнатура, фьюзы - на любую попытку обратиться к МК 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", должно заработать.

 

Share this post


Link to post
Share on other sites

Уважаемые коллеги!

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

Кстати, о переходе в режим отладки и отключении DW. После входа в отладку, если он заругался на SPI, пункт меню, позволяющий отключать DW, просто в меню Debug не появляется. Так что воспользоваться этим советомне получается.

И самое интересное - сам прибор, его программа продолжает функционировать как ни в чём не бывало! Она воспринимает команды извне, отвечает на них и опрашивает все порты и все прерывания. Кроме сигнатуры... :(

Edited by Lemist

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this