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

 
 
 
Reply to this topicStart new topic
> Проблема с AVR studio
Hunter07
сообщение Aug 14 2007, 17:13
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 26-07-07
Из: Samara
Пользователь №: 29 388



При отладке через arv jtag не показывает значения переменных - пишет not in scope.
Компилятор winavr 2007. Формат dwarf2. Что не так делаю?


--------------------
Go to the top of the page
 
+Quote Post
Прохожий
сообщение Aug 14 2007, 17:19
Сообщение #2


Cундук
*****

Группа: Участник
Сообщений: 1 478
Регистрация: 13-11-06
Из: Ростов-на-Дону
Пользователь №: 22 269



Цитата(Hunter07 @ Aug 14 2007, 21:13) *
При отладке через arv jtag не показывает значения переменных - пишет not in scope.
Компилятор winavr 2007. Формат dwarf2. Что не так делаю?

Если это С, то это дело может означать, что переменных на момент точки останова еще или уже нет. Т. е. была создана "куча", ею воспользовались, а затем уничтожили, или еще не создали.
Go to the top of the page
 
+Quote Post
Hunter07
сообщение Aug 14 2007, 17:26
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 26-07-07
Из: Samara
Пользователь №: 29 388



Переменные глобальные, используются в функции где стоит точка останова.


--------------------
Go to the top of the page
 
+Quote Post
sergeeff Jr.
сообщение Aug 14 2007, 17:40
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 568
Регистрация: 8-07-07
Из: Занзибар
Пользователь №: 28 964



Обойди глобальные переменные (например передав их в качестве параметра дальше)...


--------------------
"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие
Go to the top of the page
 
+Quote Post
GDI
сообщение Aug 15 2007, 07:08
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



А в симуляторе так же дела обстоят с переменными?


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
Hunter07
сообщение Aug 15 2007, 07:39
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 26-07-07
Из: Samara
Пользователь №: 29 388



Да также, в симуляторе тоже не показывает. Сообщение тоже.
Показывает только некоторые локальные переменные - счетчик циклов в for, например.


--------------------
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Aug 15 2007, 07:43
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



Советовал бы перед точкой останова присваивать перемненной что интересна для наблюдения какое то число или чтото + так же смотерть ассемблерный код....

Код хоть позволяет - не сильно там всё наворочено ??

Сообщение отредактировал Kuzmi4 - Aug 15 2007, 07:44
Go to the top of the page
 
+Quote Post
Hunter07
сообщение Aug 15 2007, 07:49
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 26-07-07
Из: Samara
Пользователь №: 29 388



как раз наворочено)) вот решил посмотреть jtag'oм что к чему, а не показывает...
ну хоть ход программы видно и то ладно.


--------------------
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Aug 15 2007, 07:54
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



Тогда всё таки рализовать пункт1 - запись в переменную перед точкой останова - и просто посмотреь этот код - что оно там делает...А то у меня тоже бывало так - при оптимизации и С - как была , попробуте записать в переменную значение с порта DDRA или PORTA например а перед этим - просто число - резыльтат вас должен насторожить если я правильно понимаю.....
Go to the top of the page
 
+Quote Post
pokos
сообщение Aug 15 2007, 08:04
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 270
Регистрация: 29-06-06
Пользователь №: 18 445



Похоже, переменная выкинута компилятором при оптимизации.
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Aug 15 2007, 08:09
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



Та не выкинута - если товарищ попытается записать туда значение с порта - то всё будет ок - а если прост оцифру тогда - да - ничего не будет - оптимизация мать его ..... crying.gif
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 15 2007, 10:05
Сообщение #12


кекс
******

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



Отключайте оптимизацию при отладке (-o0).
Или ставьте ключевое слово volatile перед переменной, обращения к которой не надо оптимизировать
Go to the top of the page
 
+Quote Post

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

 


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


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