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

Можно ли "убить" STM32 прошивкой?

Хорошо. Тогда скрин первых слов памяти программ из STLink Utility можно глянуть? Там, где таблица векторов...

И да, почему бы просто не зайти под отладчиком? Сделать сброс и пройтись по шагам в ассемблерном окне?

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


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

17 minutes ago, nanorobot said:

отвалившийся VCap не мог спровоцировать такую проблему? паранойя, мать ее...

Нет, он бы просто не запускался и не прошивался, по крайней мере я такое поведения наблюдал.
 

17 minutes ago, nanorobot said:

отладчик показывает что в ХФ

До main не доходит?  Cтека в линкере хватает?
Если breakpoint поставить на resethandler остановится?

17 minutes ago, Arlleex said:

А вне в состоянии блокировки случаем?

Можно подробнее? Что еще за состояние? Блокировки чем?

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


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

21 minutes ago, Arlleex said:

Хорошо. Тогда скрин первых слов памяти программ из STLink Utility можно глянуть? Там, где таблица векторов...

И да, почему бы просто не зайти под отладчиком? Сделать сброс и пройтись по шагам в ассемблерном окне?

пока нет возможности. попозже сделаю. Смена кончается, пора домой. там продолжу.

20 minutes ago, Integro said:

Нет, он бы просто не запускался и не прошивался, по крайней мере я такое поведения наблюдал.
 

До main не доходит?  Cтека в линкере хватает?
Если breakpoint поставить на resethandler остановится?

Попробовал. не останавливается. Улетает на хф хандлер. Эта самая прошивка с утра работала на этой плате. так что не стек и не линкер...:acute:

Изменено пользователем nanorobot

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


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

4 минуты назад, Integro сказал:

До main не доходит?

Можно подробнее? Что еще за состояние? Блокировки чем?

До main() у него не доходит, как говорит сам ТС.

Блокировка - это когда CPU, находясь в обработчике тяжелых отказов, получает еще один больной пинок под зад снова сигнал приводящий к ошибке.

http://infocenter.arm.com/help/topic/com.arm.doc.dui0553b/DUI0553.pdf, стр. 44, п. 2.4.4.

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


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

Если есть J-Link, то можно через него стереть чип в девственное состояние (в т.ч. секция OPTIONS): 

cм. файл "JLinkSTM32.exe" в папке, где стоит приложение для этого отладчика. 

Если и эта прога не справиться (даже в случае under reset), то чип в помойку.

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


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

2 minutes ago, Forger said:

Если есть J-Link, то можно через него стереть чип в девственное состояние (в т.ч. секция OPTIONS): 

cм. файл "JLinkSTM32.exe" в папке, где стоит приложение для этого отладчика. 

Если и эта прога не справиться (даже в случае under reset), то чип в помойку.

exe.. Линукс у меня, "ехе"  нету:acute:

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


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

2 minutes ago, nanorobot said:

exe.. Линукс у меня

Сочувствую :biggrin:

2 minutes ago, nanorobot said:

, "ехе"  нету:acute:

Ну, аналогичный файл, segger делает сборки своего софта и под линукс

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


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

16 minutes ago, Forger said:

Если и эта прога не справиться (даже в случае under reset), то чип в помойку.

 так вроде как с заливанием прошивки проблем нет, но сбросить options bytes стоит, верная мысль

23 minutes ago, Arlleex said:

Блокировка - это когда CPU, находясь в обработчике тяжелых отказов, получает еще один больной пинок под зад снова сигнал приводящий к ошибке.

http://infocenter.arm.com/help/topic/com.arm.doc.dui0553b/DUI0553.pdf, стр. 44, п. 2.4.4.

Это не наш случай, инструкции ведь выполняются,  проц то крутится в HF

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


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

On 12/21/2018 at 2:16 PM, Arlleex said:

Хорошо. Тогда скрин первых слов памяти программ из STLink Utility можно глянуть? Там, где таблица векторов...

И да, почему бы просто не зайти под отладчиком? Сделать сброс и пройтись по шагам в ассемблерном окне?

Кстати да, где скрин? Возможно таблицы векторов просто нет. Было похожее, когда файл startup_stm32* загадочным образом из проекта исчез. В отладке сразу hardfault

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


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

полагаю автор тупо статикой угробил камень, а теперь ищет "ошибку". Так то можно целым форумом месяц гадать, тут как то было похожее...

 

Изменено пользователем twix

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


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

On 12/21/2018 at 11:58 AM, nanorobot said:

попробовал прошить JLinr-ом. Среди прочих попались такие ругательства
 


Error: Failed to read memory at 0x00200652
Error: stm32f4x.cpu -- clearing lockup after double fault
Polling target stm32f4x.cpu failed, trying to reexamine
Info : stm32f4x.cpu: hardware has 6 breakpoints, 4 watchpoints

 

 

 

0x00200652 - это же RAM? Похоже, проблемы в алгоритме записи во флэш: JLINK грузит сервисную программу (алгоритм) в RAM, с которой общается и заставляет писать во флэш.

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


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

Нет. RAM это 0x20000000

А вот 0x00200000 - это обычно флеш (отражёный на нулевые адреса). Но всё же чаще пишут в 0x08000000.

Может таки в этом дело?

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

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


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

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

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

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

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

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

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

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

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

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