mirror of
https://github.com/EmbedDevIOT/obsidian-vault-.git
synced 2026-11-06 00:13:26 +03:00
vault backup: 2026-03-18 20:37:34
This commit is contained in:
@@ -15,17 +15,11 @@ _Цель: оценить понимание работы процессорно
|
||||
- **Ожидаемый ответ:**
|
||||
|
||||
1. После подачи питания и сброса, процессор забирает первое слово (32 бита) из таблицы векторов (начало памяти, обычно 0x08000000) — это начальное значение **основного указателя стека (MSP)**.
|
||||
|
||||
2. Процессор забирает второе слово из таблицы векторов — это адрес **обработчика сброса (Reset_Handler)**.
|
||||
|
||||
3. Выполняется код `Reset_Handler` (обычно написан на ассемблере или Си в startup-файле). Его задачи:
|
||||
|
||||
- Копирование инициализированных данных из Flash в RAM (секция `.data`).
|
||||
|
||||
- Обнуление секции неинициализированных переменных (секция `.bss`).
|
||||
|
||||
4. Вызывается функция `SystemInit()` (настройка базовой частоты, PLL).
|
||||
|
||||
5. Вызывается функция `main()`.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user