Перейти к содержанию
    

STM32F407. При включении срабатывает исключение Hard Fault

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

Проект собирается в Keil 4.53.

Было также замечено, что при этом цифровое питание МК VDD нарастает необычно медленно, за 500 мс.

На выводе NRST конденсатор не установлен(хотя это рекомендовано по datasheet).

Изменено пользователем Олег Гаврильченко

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

кривой код

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. убедиться что прошивка для него, а не для чего-то очень похожего. Убедиться что клоки сконфигурированы именно под этот камень.

2. проверить качество и надежность питания

3. проверить схему на отсутствие ляпов. Убедиться что никуда не приходит напряжение больше допустимого (например, 5 вольт приходит на не 5В-толерантный пин, или просто неисправность в железе).

4. проверить линкер и мап-файл, не занято ли что-то из физически отсутствующей памяти.

5. Пройти по шагам весь стартап.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это происходит после того как питание сначала сняли, а затем опять включили через короткое время.

PWR

Расширенная система контроля и управления питанием. Скорей всего срабатывает контроль на понижение напряжения лапы PVD, но при этом нету барьера из двух встречных диодов между аналоговым питанием и силовым. В результате либо аналог либо сила начинает сбоить раньше чем сработает датчик на PVD.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

PWR

Расширенная система контроля и управления питанием. Скорей всего срабатывает контроль на понижение напряжения лапы PVD, но при этом нету барьера из двух встречных диодов между аналоговым питанием и силовым. В результате либо аналог либо сила начинает сбоить раньше чем сработает датчик на PVD.

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

Изменено пользователем Олег Гаврильченко

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...