Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Глюк в debug mode
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
NewMaestro
Господа боги по пикам, кто-нибудь сталкивался с проблемой сбоя ICD2 в процессе отладки ?

Я пару лет работаю с dsPIC30. Обычно если что-то не так, то ICD2 просто не входит в дебаг-моде и все. А вот на днях возникла ситуация, когда программирование и вход в дебаг-моде происходит нормально, но при пошаговом исполнении дебаг периодически слетает. Пишет:

Resetting Target
MPLAB ICD 2 Ready
Stepping Target
MPLAB ICD 2 Ready
Stepping Target
MPLAB ICD 2 Ready
Stepping Target
MPLAB ICD 2 Ready
ICD0082: Failed MPLAB ICD 2 operation
ICD0151: Failed to sync memory (MT = Data) (Dir = 0x0)

Слетает иногда при 2-3 шаге, иногда при 20-30... вобщем, такое чувство, что процесс случайный.

Release на Debug я переключил, так что с резервированием ресурсов проца под ICD2 должно быть все ок.

Какие есть мысли?
volodya
Цитата(NewMaestro @ Jun 21 2007, 01:39) *
Господа боги по пикам, кто-нибудь сталкивался с проблемой сбоя ICD2 в процессе отладки ?

Я пару лет работаю с dsPIC30. Обычно если что-то не так, то ICD2 просто не входит в дебаг-моде и все. А вот на днях возникла ситуация, когда программирование и вход в дебаг-моде происходит нормально, но при пошаговом исполнении дебаг периодически слетает. Пишет:

MPLAB ICD 2 Ready
ICD0082: Failed MPLAB ICD 2 operation
ICD0151: Failed to sync memory (MT = Data) (Dir = 0x0)

Слетает иногда при 2-3 шаге, иногда при 20-30... вобщем, такое чувство, что процесс случайный.

Release на Debug я переключил, так что с резервированием ресурсов проца под ICD2 должно быть все ок.

Какие есть мысли?


Переключение Release на Debug - не влияет на выделение ресурса ICD2, RAM выделяется в сценарии линкера (*.gld)

__ICD2RAM = 1;
.icd __DATA_BASE (NOLOAD):
{
. += (DEFINED (__ICD2RAM) ? 0x80 : 0 );
} > data
По умолч закоментирован мелкоЧИПОМ.
NewMaestro
Цитата(volodya @ Jun 21 2007, 08:14) *
Переключение Release на Debug - не влияет на выделение ресурса ICD2, RAM выделяется в сценарии линкера (*.gld)


У меня все время стояла более старая версия MPLAB IDE. Там в настройках проекта была специальная галочка "link for ICD2". Eсли при компиляции перед отладкой эту галочку не поставить, то линкер расположит стек и память, которую юзает ICD2, в одно и тоже место. Помоему так... Такая ситуация вызывала сбой отладки при первом использовании стека, например при попытке вызова функции.
Не так давно я поставил MPLAB IDE v6.60. Там в настройках проекта галочки "link for ICD2" уже нет.
Я пытался выяснить что к чему и нашел на каком-то буржуйском форуме информацию о том, что в новых версиях опция "link for ICD2" заменена на переключатель Release<->Debug на основной панели среды.
Помоему вполне логично.

Ну а даже если задефайнить символ __ICD2RAM, как предлагается в сценарии линкера, то ситуация все-равно остается прежней. Глючит отладка и все.

Иногда, когда запускаю в run, еще вот так пишет:

MPLAB ICD 2 Ready
Running Target
ICD0154: Invalid target mode for requested operation (TM = Running)
ICD0069: Debug: Unable to run target
lebiga
У меня была такая фигня из-за шума по питанию
Стоял голый пик 18F252 и MAX232. на максе не стоял конденсатор 5В-земля. Сбои были постоянные, причем при остановке режима выполнения. Поставил конденсатор - все заработало.
Еще проверь, не дергаешь ли порты отладки(типа RB6-RB7 в пик18 или другие в дспике), особенно по маске порта.
volodya
Цитата(lebiga @ Jun 21 2007, 20:59) *
У меня была такая фигня из-за шума по питанию
Стоял голый пик 18F252 и MAX232. на максе не стоял конденсатор 5В-земля. Сбои были постоянные, причем при остановке режима выполнения. Поставил конденсатор - все заработало.
Еще проверь, не дергаешь ли порты отладки(типа RB6-RB7 в пик18 или другие в дспике), особенно по маске порта.


По питанию мелкоЧИП везде (и нетолько он) требует конденсаторов возле каждой пары ног, плюс AVdd-AVss.
приэтом AVdd-AVss тоже должно быть запитано своим проводом - результат всегда "на лицце 07.gif ". biggrin.gif

На счет Release<->Debug in DsPic30 проверял сам (MpLab7.3-7.60) на результат выделения памяти не влияет.
нафиг нужна ? не понял результат компиляции идинаков.-проверял побайтно, Если неправ - поправте twak.gif !
Кроме того длинна ICD2-DsPic шнура влияет. ДогадыватьсЯ сложно, так по раазным прич. ругаться может девайс. Может доп. инф. выложите?
NewMaestro
Цитата(volodya @ Jun 22 2007, 07:46) *
Кроме того длинна ICD2-DsPic шнура влияет. ДогадыватьсЯ сложно, так по раазным прич. ругаться может девайс. Может доп. инф. выложите?


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

Чуть позже попробую отладку выполнять на другой плате, сам отладчик проверю.
У меня подозрения либо на сам проц, либо на среду. Может там какой баг есть в версии 7.60
wangan
мож все-таки сначала попытаться поставить MPLAB IDE v7.60 или новее
да и мож поиграться землями мож сквозные токи гуляют или как они там правильно обзываются
volodya
Цитата(NewMaestro @ Jun 23 2007, 18:34) *
Шнуром этим я работаю больше года. Питание очень стабильное и отфильтровано хорошо.
И вовсе я не такой чайник, как некоторые подумали. Про блокировочные конденсаторы я никогда не забываю. Обвязку даже не знакомых мне микроконтроллеров обычно я делаю правильно с первого раза.

Чуть позже попробую отладку выполнять на другой плате, сам отладчик проверю.
У меня подозрения либо на сам проц, либо на среду. Может там какой баг есть в версии 7.60

Да ни кто не называл никого чайником 05.gif .
Просто из Вашей информации можно предположить много вариантов проблем. Вот и дают разные советы кто куда носом куда ткнулСЯ. А советов сдесь как гуталина на гуталиновой фабрике.
Сам отлаживал софт на 30F6010 18XXXX на базе MPlab 7.3, 7.52, 7.60 к софту притензий не возникпало одновлял "от жадности" а вот к железу были вопросы. Посмотрите еррату. На DsPic были срьезные баги по кристалу.
А в отчете Build смотрели - память под ICD выделяется ? Очень похожая ситуация была 2-20 шагов потом сбой Именно по выше названной причине. закоментированный - ICD2RAM
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.