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

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

Только что залил СТЛинком модифицированною прошивку. Сразу уходит в HardFault не останавливаясь на main. Перезалил старую, рабочую прошивку - тот же результат. С помощью STLinkUtility сделал полное стирание, ничего не изменилось. Напряжение на VCap практически равно нулю. В морг, конечно? Никаких других манипуляций, кроме перепрошивки с чипом не проводилось. Боюсь пробовать эту же прошивку на другом процессорном модуле. Вдруг я написал программу - убийцу чипов?:bb:

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

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


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

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

Нельзя!

Самое ужасное что можно сделать это навсегда отключить JTAG\SWD.

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


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

Был случай, когда товарищ по неосторожности писал в регистры настройки PLL запрещенные комбинации предделителей. В итоге процессор, рассчитанный на 168МГц, был разогнан на > 400МГц (вроде). Процессор моментально жутко нагрелся и вышел из строя. Но признаки дохляка там проявлялись по-другому: тупо нельзя было даже под отладчиком зайти в ST-Link Utility, чтобы почистить память от злой кармы прошивки-убийцы.

Ну и я один раз тоже неправильно одно значение поставил, в итоге процессор пытался выйти на запредельную рабочую частоту. Но там я пальцем чувствовал постепенный нагрев корпуса МК, и вовремя подключился отладчиком. Так что да, можно.

Integro, программно отключив JTAG/SWD, достаточно подключиться в режиме "Under Reset", и все будет хорошо. А полностью обрубить JTAG/SWD можно, установив защиту от чтения уровня 3 (вроде). Но это делается не программно а из под отладчика, один раз в жизни.

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


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

5 minutes ago, Integro said:

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

Нельзя!

Самое ужасное что можно сделать это навсегда отключить JTAG\SWD.

Пардон, ситуация несколько иная. Напряжение на VCap есть,  - точнее на одном было а на другом нет. Оказалось плохая пайка к земле. Пропаял, оба напряжения есть, но все равно не работает. Все равно непонятно, что произошло. Чип идентифицируется, стирается, пишется но не работает.

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

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


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

13 минут назад, nanorobot сказал:

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

Можно:

1) Написать программу, которая будет стирать/писать флешь. И протрёт его.

2) Написать программу, которая установит защиту от чтения/стирания/подключения отладчика и повиснет.

3) ...

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


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

2 minutes ago, Arlleex said:

Integro, программно отключив JTAG/SWD, достаточно подключиться в режиме "Under Reset", и все будет хорошо. А полностью обрубить JTAG/SWD можно, установив защиту от чтения уровня 3 (вроде). Но это делается не программно а из под отладчика, один раз в жизни. 

Да, про защиту от чтения LEVEL3 я и говорил и это можно сделать из прошивки!

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


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

Just now, jcxz said:

Можно:

1) Написать программу, которая будет стирать/писать флешь. И протрёт его.

2) Написать программу которая установит защиту от чтения/стирания/подключения отладчика и повиснет.

3) ...

Я же не преследую цель НАПИСАТЬ такую программу. Я хочу понять что стряслось.

1 minute ago, Integro said:

Да, про защиту от чтения LEVEL3 я и говорил и это можно сделать из прошивки!

прошивается без ругательств, но сразу улетает в хардфаулт, после заливки рабочей прошивки.

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


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

1 minute ago, jcxz said:

Можно:

1) Написать программу, которая будет стирать/писать флешь. И протрёт его.

2) Написать программу которая установит защиту от чтения/стирания/подключения отладчика и повиснет.

3) ...

Нуда, только если так, но это применимо практически ко всем контроллерам

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


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

1 minute ago, Integro said:

Да, про защиту от чтения LEVEL3 я и говорил и это можно сделать из прошивки!

прошивается без ругательств, но сразу улетает в хардфаулт, после заливки рабочей прошивки.

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


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

1 minute ago, nanorobot said:

прошивается без ругательств, но сразу улетает в хардфаулт, после заливки рабочей прошивки.

Нужно дебажить, как показывает практика проблема всеровно в прошивке. Нужно смотреть callstack и анализировать регистры

Как это понимать:

5 minutes ago, nanorobot said:

после заливки рабочей прошивки.

Прошивка работает на другой плате?

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


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

5 minutes ago, Integro said:

Нужно дебажить, как показывает практика проблема всеровно в прошивке. Нужно смотреть callstack и анализировать регистры

Как это понимать:

Прошивка работает на другой плате?

попробовал прошить 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

сегодня с утра она работала на этой.  другую пока не трогаю. Да там и камешек другой - F746. ТО есть 100% 'эту, я на нее записать не могу. то есть могу конечно, но обычно компилирую с соответствующими изменениями. Да и там у меня нерешенная прблема с SPI интерфейсом.

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

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


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

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

Да, про защиту от чтения LEVEL3 я и говорил и это можно сделать из прошивки!

А, ну пусть так:wink:

nanorobot, залейте прошивку, минимально мигающую светодиодом. Странное поведение, однако, похожее на откуда-то возникшую кривость сборки проекта...

После заливки прошивки в МК, откройте память в STLink Utility, там норм все записалось с виду хоть?

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


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

1 minute ago, Arlleex said:

А, ну пусть так:wink:

nanorobot, залейте прошивку, минимально мигающую светодиодом. Странное поведение, однако, похожее на откуда-то возникшую кривость сборки проекта...

После заливки прошивки в МК, откройте память в STLink Utility, там норм все записалось с виду хоть?

с виду все хорошо. и стирает в FFFF.

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


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

Как определили что он находится в HF? Точно в HF? А вне в состоянии блокировки случаем?

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


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

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

4 minutes ago, Arlleex said:

Как определили что он находится в HF? Точно в HF? А вне в состоянии блокировки случаем?

отладчик показывает что в ХФ. Догадываюсь что это не гарантия что это именно так. Про состояние блокировки мне, к моему стыду,  ничего не известно.

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

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


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

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

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

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

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

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

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

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

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

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