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

 
 
> Как понять, где виснет STM32F103?
zheka
сообщение Feb 24 2014, 15:46
Сообщение #1


Гуру
******

Группа: Участник
Сообщений: 2 072
Регистрация: 14-01-06
Пользователь №: 13 164



Господа, работаю с STM32F103 и KEIL в режиме отладки.
Очень много вложенных циклов, ветвлений. Делаю менюшки и окошки. Глюков не избежать, иногда выйти из какого-то окошка не получалось - из за ошибок программа крутится в цикле, не получая команды выхода из него. Искал такие ошибки просто- шерстил вложенные циклы брейкпоинтами и находил тот цикл, в котором программа крутится.
А недавно программа стала зависать в одном и том же месте, но нерегулярно, в зависимости от положения звезд и фазы луны. Ни один цикл брейкпоинтом не ловится, ощущение, что программу кинуло куда-то не туда и контроллер просто встал.

Как KEILом вычислить этот участок кода?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ar__systems
сообщение Feb 25 2014, 01:05
Сообщение #2


self made
****

Группа: Свой
Сообщений: 855
Регистрация: 7-03-09
Из: Toronto, Canada
Пользователь №: 45 795



Менюшки и окошки надо на PC отлаживать, а не на чипе
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Feb 25 2014, 05:34
Сообщение #3


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

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



Цитата(ar__systems @ Feb 25 2014, 04:05) *
Менюшки и окошки надо на PC отлаживать, а не на чипе
+1


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
megajohn
сообщение Feb 25 2014, 06:21
Сообщение #4


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

Группа: Свой
Сообщений: 1 080
Регистрация: 16-11-04
Из: СПб
Пользователь №: 1 143



если операционка используется то по переключению задач контролировать стек выключающейся задачи
если mail-loop то общий стек и бряк поставить на изменение байтов по концу стека ( и соответсвенно по началу куска памяти )
если есть malloc то после заполнения полезно делать malloc_test и тоже самое по free



--------------------
Марс - единственная планета, полностью населенная роботами (около 7 штук).
Go to the top of the page
 
+Quote Post



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

 


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


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