Поведение регистра VTOR на STM32H7 при перезагрузке - PullRequest
1 голос
/ 28 февраля 2020

Регистр смещения таблицы векторов на Cortex M7 позволяет переместить таблицу векторов.

Мне интересно, как управляется таблица векторов, когда она перемещается и происходит мягкий сброс.

В руководстве по программированию ARM упоминается, что значение VTOR после сброса является "неизвестным".

Какой обработчик сброса используется после мягкого сброса: «оригинальный» из таблицы векторов в Fla sh? Или «перенесенный» один набор через VTOR?

Тот же вопрос для указателя стека. В руководстве по программированию говорится, что «При сбросе процессор загружает MSP со значения по адресу 0x00000000». Означает ли это, что указатель стека в перемещенной таблице векторов никогда не используется?

1 Ответ

0 голосов
/ 28 февраля 2020

Означает ли это, что указатель стека в перемещенной таблице векторов никогда не используется?

Он не используется оборудованием. Он используется загрузчиком при запуске приложения.

Какой обработчик сброса используется после мягкого сброса: «оригинальный» из таблицы векторов в Fla sh

Значение, выбранное с помощью пинов загрузки и байтов опции загрузки.

В руководстве по программированию ARM упоминается, что значение VTOR после сброса является "неизвестным".

I Не думаю, что мое руководство по программированию показывает: enter image description here Что довольно хорошо определено:)

Мне интересно, как управляется таблица векторов, когда она перемещается и происходит программный сброс.

То же, что и во время аппаратного сброса.

...