реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> при отладке с JTAG mega128 AvrStudio не видит часть кода
andybeg
сообщение Mar 17 2011, 08:49
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 133
Регистрация: 30-11-06
Пользователь №: 22 954



имеем цикл типа
Цитата
setstrob();
for(;;)
{
i++;
clrstrob();
if(timeout)
somfunc()
}

переменная timeout меняется в прерывании уарта и она вобщем то меняется, но if и его тело не видится и нет возможности поставить в него брэкпоинт ...
Go to the top of the page
 
+Quote Post
-SANYCH-
сообщение Mar 17 2011, 11:39
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 289
Регистрация: 6-12-05
Пользователь №: 11 864



Отключите оптимизацию кода.
Как у вас объявлена переменная timeout ?
Попробуйте ниже по коду чего нибудь присвоить этой переменной
Go to the top of the page
 
+Quote Post
andybeg
сообщение Mar 17 2011, 12:04
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 133
Регистрация: 30-11-06
Пользователь №: 22 954



Цитата(-SANYCH- @ Mar 17 2011, 14:39) *
Отключите оптимизацию кода.
Как у вас объявлена переменная timeout ?
Попробуйте ниже по коду чего нибудь присвоить этой переменной

да,до оптимизации уже додумался, отключил, вроди бы всё исправилось sm.gif
Go to the top of the page
 
+Quote Post
andybeg
сообщение Mar 18 2011, 10:59
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 133
Регистрация: 30-11-06
Пользователь №: 22 954



счастье было временным - всё вернулось на круги своя при любой оптимизации sad.gif - при отладке пошаговой через житаг курсор положения программы не доходит до if sad.gif
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Mar 18 2011, 14:31
Сообщение #5


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



У Вас timeout в прерываниях изменяется?
Тогда добавьте квалификатор volatile:
Код
volatile int timeout;


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
nk@
сообщение Mar 31 2011, 17:54
Сообщение #6


Частый гость
**

Группа: Участник
Сообщений: 78
Регистрация: 8-12-09
Пользователь №: 54 138



Была подобная трабла. Попробуйте вместо for(;;) поставить while(1)
Отладчику for(;;) почемуто не нравится (притом не всегда cranky.gif )
Go to the top of the page
 
+Quote Post
andybeg
сообщение Mar 31 2011, 18:17
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 133
Регистрация: 30-11-06
Пользователь №: 22 954



>>volatile int timeout;
спасибо за напоминание - запамятовал я о такой инструкции sm.gif
>>Отладчику for(;;) почемуто не нравится (притом не всегда )
спасибо, интересный опыт
Go to the top of the page
 
+Quote Post
andybeg
сообщение Apr 13 2011, 12:25
Сообщение #8


Частый гость
**

Группа: Участник
Сообщений: 133
Регистрация: 30-11-06
Пользователь №: 22 954



с последнего моего поста тут, проблемы с житагом решились, но не полностью, в итоге решил избавиться от ВСЕХ варнингов предупреждающих о неиспользуемых переменных, благо несколько таких осталось и .. о чудо ... всё заработало предсказуемо и так как написал и нет непонятных перескоков ... шайтан
Go to the top of the page
 
+Quote Post
defunct
сообщение Apr 15 2011, 21:05
Сообщение #9


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(nk@ @ Mar 31 2011, 20:54) *
Отладчику for(;;) почемуто не нравится (притом не всегда cranky.gif )

Чипуха полная. Для организации бесконечного цикла всегда использую for(;;) - с отладчиком никаких вопросов.
Скобочку { ставить с новой строки и по одному оператору на одну строку писать пробовали?..

Цитата(andybeg @ Apr 13 2011, 15:25) *
и .. о чудо ... всё заработало предсказуемо и так как написал и нет непонятных перескоков ... шайтан

Никаких чудес, нет warning'ов - значит компилятор подтверждает, что правильно понял ваш текст.
Есть Warning'и - могут быть и непонятки, что вы и наблюдали.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 13:18
Рейтинг@Mail.ru


Страница сгенерированна за 0.01456 секунд с 7
ELECTRONIX ©2004-2016