|
|
  |
STM32 bootloader, написание собственного бута |
|
|
|
Feb 20 2015, 14:36
|

Знающий
   
Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467

|
Цитата(ViKo @ Feb 20 2015, 09:33)  Он уже включен железно так, как задано. Может, вам мануал почитать?  Да, не надо нашим людям помогать. Тебя же потом и по кумполу. Зря влез. До свидания.
--------------------
Верить нельзя никому, даже себе. Мне - можно.
|
|
|
|
|
Feb 23 2015, 19:34
|
Профессионал
    
Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528

|
Цитата(ViKo @ Feb 22 2015, 19:35)  Есть у кого-нибудь подтверженное практикой мнение, или и так всем ясно (что нельзя)? Cortex™-M3 Technical Reference Manual от ARM утверждает что исполнение кода запрещено только из старших 1/2 Гигабайта адресного пространства (от 0xE0000000 и до упора). Так что при желании можно поисполнять даже содержимое регистров периферийных устройств.Т.е. архитектура ARM не запрещает, но конкретно у STM32F1xx не получится, выборка кода запрещена для адресов 0x40000000- 0x5FFFFFFF и от 0xA0000000 до конца памяти. Под внешнюю память отведен диапазон адресов 0x60000000 - 0x9FFFFFFF, если контроллер внешней памяти настроить соответствующим образом, то можно и из внешней памяти код исполнять.
--------------------
Russia est omnis divisa in partes octo.
|
|
|
|
|
Feb 24 2015, 10:58
|

Универсальный солдатик
     
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362

|
Судя по рисунку, STM32F20X может выполнять программу из внешней памяти. А также и из внутренней OTP Flash, наверное. А еще под картинкой написано: S2: S-bus This bus connects the system bus of the Cortex®-M3 core to a BusMatrix. This bus is used to access data located in a peripheral or in SRAM. Instructions may also be fetch on this bus (less efficient than ICode). The targets of this bus are the 112 KB & 16 KB internal SRAMs, the AHB1 peripherals including the APB peripherals, the AHB2 peripherals and the external memories through the FSMC. То есть, можно команды выбирать откуда хочешь!?
Эскизы прикрепленных изображений
|
|
|
|
|
Feb 25 2015, 13:41
|
Профессионал
    
Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528

|
Цитата(ViKo @ Feb 25 2015, 20:01)  Но основной проект не работает. Предполагаю, в загрузчике дело. Что-то не так. NVIC_SetVectorTable() в загрузчике не особо нужен. Это надо в самой запущенной программе сделать, потому что по умолчанию в SystemInit() регистр SCB->VTOR устанавливается на начало флеша.
--------------------
Russia est omnis divisa in partes octo.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|