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

 
 
 
Reply to this topicStart new topic
> STM32F407. При включении срабатывает исключение Hard Fault
Олег Гаврильченк...
сообщение Nov 25 2015, 07:37
Сообщение #1


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

Группа: Участник
Сообщений: 177
Регистрация: 10-02-15
Пользователь №: 85 052



При подаче питания на МК он переходит к обработчику Hard Fault, FORCED, то есть до этого несколько раз было исключение Bus Fault. Происходит это крайне редко, почти сразу после старта программы(видно что выполнялись какие-то инструкции из __main_init). Это происходит после того как питание сначала сняли, а затем опять включили через короткое время. Поделитесь, хотя бы общими соображениями, почему такое может быть.
Проект собирается в Keil 4.53.
Было также замечено, что при этом цифровое питание МК VDD нарастает необычно медленно, за 500 мс.
На выводе NRST конденсатор не установлен(хотя это рекомендовано по datasheet).

Сообщение отредактировал Олег Гаврильченко - Nov 25 2015, 11:31
Go to the top of the page
 
+Quote Post
jcxz
сообщение Nov 25 2015, 08:04
Сообщение #2


Гуру
******

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



Цитата(Олег Гаврильченко @ Nov 25 2015, 13:37) *
При подаче питания на МК он переходит к обработчику Hard Fault, FORCED, то есть до этого несколько раз было исключение Bus Fault. Происходит это крайне редко, почти сразу после старта программы(видно что выполнялись какие-то инструкции из __main_init). Это происходит после того как питание сначала сняли, а затем опять включили через короткое время. Поделитесь, хотя бы общими соображениями, почему такое может быть.

кривой код
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Nov 25 2015, 08:06
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



1. убедиться что прошивка для него, а не для чего-то очень похожего. Убедиться что клоки сконфигурированы именно под этот камень.
2. проверить качество и надежность питания
3. проверить схему на отсутствие ляпов. Убедиться что никуда не приходит напряжение больше допустимого (например, 5 вольт приходит на не 5В-толерантный пин, или просто неисправность в железе).
4. проверить линкер и мап-файл, не занято ли что-то из физически отсутствующей памяти.
5. Пройти по шагам весь стартап.
Go to the top of the page
 
+Quote Post
AVI-crak
сообщение Nov 25 2015, 11:00
Сообщение #4


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

Группа: Участник
Сообщений: 182
Регистрация: 16-10-15
Пользователь №: 88 894



Цитата(Олег Гаврильченко @ Nov 25 2015, 14:37) *
Это происходит после того как питание сначала сняли, а затем опять включили через короткое время.

PWR
Расширенная система контроля и управления питанием. Скорей всего срабатывает контроль на понижение напряжения лапы PVD, но при этом нету барьера из двух встречных диодов между аналоговым питанием и силовым. В результате либо аналог либо сила начинает сбоить раньше чем сработает датчик на PVD.
Go to the top of the page
 
+Quote Post
Олег Гаврильченк...
сообщение Nov 25 2015, 11:29
Сообщение #5


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

Группа: Участник
Сообщений: 177
Регистрация: 10-02-15
Пользователь №: 85 052



Цитата(AVI-crak @ Nov 25 2015, 14:00) *
PWR
Расширенная система контроля и управления питанием. Скорей всего срабатывает контроль на понижение напряжения лапы PVD, но при этом нету барьера из двух встречных диодов между аналоговым питанием и силовым. В результате либо аналог либо сила начинает сбоить раньше чем сработает датчик на PVD.

Простите, я не очень понял. Я знаю, что есть встроенная система, которая удержит МК в сбросе, пока питание не в норме, я пробовал регулировать ее пороги(через OPT bytes), но это не помогает. Также было замечено, что питание на МК при срабатывании Hard Fault нарастает очень медленно, за 500 мс до 3.3 В. На выводе NRST конденсатор не установлен(хотя это рекомендовано по datasheet).

Сообщение отредактировал Олег Гаврильченко - Nov 25 2015, 11:31
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Nov 25 2015, 12:46
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Схему покажите, разводку.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Олег Гаврильченк...
сообщение Nov 25 2015, 14:13
Сообщение #7


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

Группа: Участник
Сообщений: 177
Регистрация: 10-02-15
Пользователь №: 85 052



Проблема решилась установкой порога BOR в VBOR3
Go to the top of the page
 
+Quote Post

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

 


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


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