|
|
  |
Глюк в debug mode |
|
|
|
Jun 21 2007, 05:14
|

Частый гость
 
Группа: Свой
Сообщений: 194
Регистрация: 14-02-07
Из: УКРАИНА
Пользователь №: 25 344

|
Цитата(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 По умолч закоментирован мелкоЧИПОМ.
--------------------
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть" "Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард
|
|
|
|
|
Jun 21 2007, 06:33
|

Частый гость
 
Группа: Свой
Сообщений: 76
Регистрация: 17-03-07
Из: Минск
Пользователь №: 26 243

|
Цитата(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
|
|
|
|
|
Jun 22 2007, 04:46
|

Частый гость
 
Группа: Свой
Сообщений: 194
Регистрация: 14-02-07
Из: УКРАИНА
Пользователь №: 25 344

|
Цитата(lebiga @ Jun 21 2007, 20:59)  У меня была такая фигня из-за шума по питанию Стоял голый пик 18F252 и MAX232. на максе не стоял конденсатор 5В-земля. Сбои были постоянные, причем при остановке режима выполнения. Поставил конденсатор - все заработало. Еще проверь, не дергаешь ли порты отладки(типа RB6-RB7 в пик18 или другие в дспике), особенно по маске порта. По питанию мелкоЧИП везде (и нетолько он) требует конденсаторов возле каждой пары ног, плюс AVdd-AVss. приэтом AVdd-AVss тоже должно быть запитано своим проводом - результат всегда "на лицце  ". На счет Release<->Debug in DsPic30 проверял сам (MpLab7.3-7.60) на результат выделения памяти не влияет. нафиг нужна ? не понял результат компиляции идинаков.-проверял побайтно, Если неправ - поправте  ! Кроме того длинна ICD2-DsPic шнура влияет. ДогадыватьсЯ сложно, так по раазным прич. ругаться может девайс. Может доп. инф. выложите?
--------------------
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть" "Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард
|
|
|
|
|
Jun 23 2007, 15:34
|

Частый гость
 
Группа: Свой
Сообщений: 76
Регистрация: 17-03-07
Из: Минск
Пользователь №: 26 243

|
Цитата(volodya @ Jun 22 2007, 07:46)  Кроме того длинна ICD2-DsPic шнура влияет. ДогадыватьсЯ сложно, так по раазным прич. ругаться может девайс. Может доп. инф. выложите? Шнуром этим я работаю больше года. Питание очень стабильное и отфильтровано хорошо. И вовсе я не такой чайник, как некоторые подумали. Про блокировочные конденсаторы я никогда не забываю. Обвязку даже не знакомых мне микроконтроллеров обычно я делаю правильно с первого раза. Чуть позже попробую отладку выполнять на другой плате, сам отладчик проверю. У меня подозрения либо на сам проц, либо на среду. Может там какой баг есть в версии 7.60
|
|
|
|
|
Jun 25 2007, 05:13
|

Частый гость
 
Группа: Свой
Сообщений: 194
Регистрация: 14-02-07
Из: УКРАИНА
Пользователь №: 25 344

|
Цитата(NewMaestro @ Jun 23 2007, 18:34)  Шнуром этим я работаю больше года. Питание очень стабильное и отфильтровано хорошо. И вовсе я не такой чайник, как некоторые подумали. Про блокировочные конденсаторы я никогда не забываю. Обвязку даже не знакомых мне микроконтроллеров обычно я делаю правильно с первого раза.
Чуть позже попробую отладку выполнять на другой плате, сам отладчик проверю. У меня подозрения либо на сам проц, либо на среду. Может там какой баг есть в версии 7.60 Да ни кто не называл никого чайником  . Просто из Вашей информации можно предположить много вариантов проблем. Вот и дают разные советы кто куда носом куда ткнулСЯ. А советов сдесь как гуталина на гуталиновой фабрике. Сам отлаживал софт на 30F6010 18XXXX на базе MPlab 7.3, 7.52, 7.60 к софту притензий не возникпало одновлял "от жадности" а вот к железу были вопросы. Посмотрите еррату. На DsPic были срьезные баги по кристалу. А в отчете Build смотрели - память под ICD выделяется ? Очень похожая ситуация была 2-20 шагов потом сбой Именно по выше названной причине. закоментированный - ICD2RAM
Сообщение отредактировал volodya - Jun 25 2007, 05:25
--------------------
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть" "Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|