Цитата
Если нет ПЗУ, то где тогда находится загрузчик? ПЗУ не может не есть. laughing.gif
Цитата
Вангую, что в вашем процессоре есть некая ROM с загрузчиком, но нету FLASH-памяти. Так?
Есть 4 кБ ПЗУ с загрузчиком, зашитым на заводе (намертво, не Flash). Пользователю оно доступно только на чтение. Процессор стартует из него.
Для пользователя есть 128 кБ ОЗУ под инструкции и 64 кБ ОЗУ под данные. Пользовательская программа может появиться в ОЗУ двумя способами: через JTAG или в результате работы заводского загрузчика. После чего управление передается на нее способом, описанным в первом посте, т.е. без сброса.
Цитата
Неужели после подобного "вандализма" вы ожидали другого поведения проца? sm.gif
Именно потому, что раньше проблем не было, ожидал - это способ, используемый заводским загрузчиком.
Цитата
А при чем тут некие магические "системные процедуры"?
Сброс - есть сброс, иначе он назывался бы иначе: например, передача управления в начало программы или типа того.
"Магические процедуры" - типа __main, которая вызывается в векторе RESET.
Собственно, и вопрос - в чем отличие?
NVIC_SystemReset() - это таки "сброс" или "Передача управления в начало программы"?
Цитата
Очевидно что нужно сбросить и всю периферию. Использовать WDT.
Периферия - блоки на шинах AHB/APB? Или все-таки регистры SCB?
Мысль с WDT проработаю, спасибо.
Сообщение отредактировал AlexeyT - May 31 2017, 06:56