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

 
 
> STM32F407VET6. Свистопляска с HardFault-ами, Бесстстемные исключения HardFault
nanorobot
сообщение Dec 29 2015, 11:05
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 244
Регистрация: 29-02-08
Пользователь №: 35 503



Может ли быть одной из причин HardFault износ ресурса флэш памяти? Имею макет с STM32F407VET6. Количество перезаписей солидное. Последнее время участилтсь случаи хардфаулта. ПРи вызове одной и той же прцедуры и в одной и той же ситуации - может быть, а может не бытью Под отладчиком редко, а без него практически всегда...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AlanDrakes
сообщение Dec 31 2015, 16:04
Сообщение #2


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

Группа: Участник
Сообщений: 101
Регистрация: 2-05-15
Из: Россия, Омск
Пользователь №: 86 474



Так же порекомендую проверить потребление питания. Возможно, задуматься о дополнительном питании (прямо на ножки питания 3V) от внешней LM1117-3.3 и тому подобных.
Похожая ситуация:
Контроллер посажен на АКБ -> LM1117 -> работает.
Контроллер посажен на БП (5V 2A) -> LM1117 -> Случайные сбросы и отказы программироваться.

Так же можно проверить ёмкости на плате.
Go to the top of the page
 
+Quote Post
nanorobot
сообщение Jan 4 2016, 21:52
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 244
Регистрация: 29-02-08
Пользователь №: 35 503



Цитата(AlanDrakes @ Dec 31 2015, 21:04) *
Так же можно проверить ёмкости на плате.


Исключил из процедуры вызов библиотечной функцмм pow() - заменил самописаной - наваждение прошло...
Go to the top of the page
 
+Quote Post
scifi
сообщение Jan 4 2016, 22:57
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(nanorobot @ Jan 5 2016, 00:52) *
Исключил из процедуры вызов библиотечной функцмм pow() - заменил самописаной - наваждение прошло...

А осадок остался.
Причина не найдена, что, скорее всего, означает, что глюк вернётся снова.
Go to the top of the page
 
+Quote Post
nanorobot
сообщение Jan 5 2016, 09:02
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 244
Регистрация: 29-02-08
Пользователь №: 35 503



Цитата(scifi @ Jan 5 2016, 03:57) *
А осадок остался.
Причина не найдена, что, скорее всего, означает, что глюк вернётся снова.

... накаркал. Типовая ситуация - в UFSR взводится бит INVSTATE, об'яснение из дефинитив гуиде - attempts to switch to an invalid state (e.g. ARM) - мож подтолкнете в верном направлении?

самое что убивает - при пошаговой отладке глюк практически никогда не воспроизводится
Go to the top of the page
 
+Quote Post
scifi
сообщение Jan 5 2016, 11:03
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(nanorobot @ Jan 5 2016, 12:02) *
... накаркал. Типовая ситуация - в UFSR взводится бит INVSTATE, об'яснение из дефинитив гуиде - attempts to switch to an invalid state (e.g. ARM) - мож подтолкнете в верном направлении?

Подталкиваю: нужно расшифровать всю информацию, доступную обработчику Hard Fault. Вычислить адрес инструкции, на которой проц спотыкается, посмотреть, что там.
Go to the top of the page
 
+Quote Post
nanorobot
сообщение Jan 5 2016, 11:49
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 244
Регистрация: 29-02-08
Пользователь №: 35 503



Цитата(scifi @ Jan 5 2016, 16:03) *
Подталкиваю: нужно расшифровать всю информацию, доступную обработчику Hard Fault. Вычислить адрес инструкции, на которой проц спотыкается, посмотреть, что там.

ощутил едва уловимый толчок...))

Сообщение отредактировал nanorobot - Jan 5 2016, 11:50
Go to the top of the page
 
+Quote Post
KnightIgor
сообщение Jan 5 2016, 13:15
Сообщение #8


Знающий
****

Группа: Участник
Сообщений: 643
Регистрация: 29-05-09
Из: Германия
Пользователь №: 49 725



Цитата(nanorobot @ Jan 5 2016, 12:49) *
ощутил едва уловимый толчок...))

К какой точке приложения? wink.gif.
TC: так где расчипятка актуального дампа hardfault? Если определится адрес слёта, берем карту памяти компоновщика, ищем, что там поблизости искомого адреса, находим тело функции. Потом можно под отладчиком там остановиться (даже если при этом не сгенерится исключение) и посмотреть, а нет ли там... рекурсии, которая съедает стек, которого, возможно, маловато будет! Как такая идейка?

Сообщение отредактировал KnightIgor - Jan 5 2016, 13:15
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jan 5 2016, 14:43
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(KnightIgor @ Jan 5 2016, 19:15) *
TC: так где расчипятка актуального дампа hardfault? Если определится адрес слёта, берем карту памяти компоновщика, ищем, что там поблизости искомого адреса, находим тело функции. Потом можно под отладчиком там остановиться (даже если при этом не сгенерится исключение) и посмотреть, а нет ли там... рекурсии, которая съедает стек, которого, возможно, маловато будет! Как такая идейка?

Кстати - есть ещё в природе отладчики с функцией трэйсера! Очень пользительная вещь в данном случае!
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- nanorobot   STM32F407VET6. Свистопляска с HardFault-ами   Dec 29 2015, 11:05
- - scifi   Что есть "солидное" число? 100? 1000? 10...   Dec 29 2015, 11:22
|- - nanorobot   Цитата(scifi @ Dec 29 2015, 17:22) Что ес...   Dec 29 2015, 16:03
|- - mantech   Цитата(nanorobot @ Dec 29 2015, 19:03) со...   Dec 29 2015, 17:15
|- - scifi   Цитата(nanorobot @ Dec 29 2015, 19:03) со...   Dec 30 2015, 05:11
- - ViKo   Строку, содержащую whille никак нельзя назвать нев...   Dec 29 2015, 16:46
- - AndrejM   возьмите другую плату да проверьте. у меня есть то...   Dec 30 2015, 04:12
|- - nanorobot   Цитата(jcxz @ Jan 5 2016, 19:43) Кстати -...   Jan 5 2016, 17:28
- - ViKo   Стек для задач попробуйте увеличить.   Jan 5 2016, 18:37
|- - nanorobot   Цитата(ViKo @ Jan 5 2016, 23:37) Стек для...   Jan 5 2016, 19:03
|- - Quasar   Цитата(nanorobot @ Jan 5 2016, 22:03) Я к...   Jan 10 2016, 09:05
- - SasaVitebsk   Квалификатор static указывает что переменную необх...   Jan 8 2016, 12:40
- - scifi   Цитата(SasaVitebsk @ Jan 8 2016, 15:40) П...   Jan 8 2016, 12:53


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

 


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


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