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

 
 
> Остановка по условию
Igor26
сообщение Dec 2 2005, 07:35
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



Уважаемые коллеги! Подскажите пожалуйста, как при отладке программы под эмулятором/симулятором, заставить останавливатся этот процесс при достижении какого-то условия.
Например, счетчик досчитал до 32768, после этого отладка остановилась, а далее пошли отлаживать программу по шагам. Не хочется в программу вставлять всевозможные If() и устанавливать на нее BreakPoint. Среда - IAR411A

Сообщение отредактировал Igor26 - Dec 2 2005, 07:37
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
starter48
сообщение Dec 2 2005, 07:43
Сообщение #2


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

Группа: Свой
Сообщений: 112
Регистрация: 15-10-05
Из: Томск
Пользователь №: 9 680



Цитата(Igor26 @ Dec 2 2005, 13:35) *
Уважаемые коллеги! Подскажите пожалуйста, как при отладке программы под эмулятором/симулятором, заставить останавливатся этот процесс при достижении какого-то условия.
Например, счетчик досчитал до 32768, после этого отладка остановилась, а далее пошли отлаживать программу по шагам. Не хочется в программу вставлять всевозможные If() и устанавливать на нее BreakPoint. Среда - IAR411A

Не знаю как это делают нормальные люди smile.gif
но я делал так:
Код
if (count==32768) {
__no_operation();//nop - безопасное действие
}

Вот на nop ставил breakpoint.
Т.е. ставить "всевозможные" if - одинственное решение, которое я нашёл...
Чтобы релиз не замусоривать, можно такие if завернуть в #ifdef - #endif, чтобы в релизе отключалось автоматом.

Сообщение отредактировал starter48 - Dec 2 2005, 07:46
Go to the top of the page
 
+Quote Post
Igor26
сообщение Dec 2 2005, 07:58
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



Цитата(starter48 @ Dec 2 2005, 10:43) *
Цитата(Igor26 @ Dec 2 2005, 13:35) *

Уважаемые коллеги! Подскажите пожалуйста, как при отладке программы под эмулятором/симулятором, заставить останавливатся этот процесс при достижении какого-то условия.
Например, счетчик досчитал до 32768, после этого отладка остановилась, а далее пошли отлаживать программу по шагам. Не хочется в программу вставлять всевозможные If() и устанавливать на нее BreakPoint. Среда - IAR411A

Не знаю как это делают нормальные люди smile.gif
но я делал так:
Код
if (count==32768) {
__no_operation();//nop - безопасное действие
}

Вот на nop ставил breakpoint.
Т.е. ставить "всевозможные" if - одинственное решение, которое я нашёл...
Чтобы релиз не замусоривать, можно такие if завернуть в #ifdef - #endif, чтобы в релизе отключалось автоматом.

Да, именно так я сейчас и делаю, но не всегда это приемлемо. Проверка условия - это лишнее время.
Go to the top of the page
 
+Quote Post



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

 


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


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