реклама на сайте
подробности

 
 
> Запуск в ОЗУ, LPC1766
Step_ARM
сообщение Oct 20 2009, 04:13
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870



На камнях LPC23XX можно было запускать программу в SRAM. Загрузил в ОЗУ программу, таблицу векторов в 0х40000000, выставил MEMMAP и все...
В LPC17XX я такого не нашел. Получается , что запуск в ОЗУ невозможен или я чего-то не догоняю?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
klen
сообщение Oct 20 2009, 05:26
Сообщение #2


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(Step_ARM @ Oct 20 2009, 08:13) *
На камнях LPC23XX можно было запускать программу в SRAM. Загрузил в ОЗУ программу, таблицу векторов в 0х40000000, выставил MEMMAP и все...
В LPC17XX я такого не нашел. Получается , что запуск в ОЗУ невозможен или я чего-то не догоняю?


я не держал в руках кортексы от NXP но то что Вы говорите по логике не может быть.

как минимум можно руками скопировать секцию в ОЗУ и выполнить код по указателю объявив его как функцию.

для выполнения кода из ОЗУ мапирование таблицы векторов не обязательно. поробуйте просто отлинковать секцию кода в область ОЗУ

нужно в скрипте (или еще гдето если не GCC используется) сказать чтобы секция использовала связывание адресов в области ОЗУ и складывалось в .data . это обеспечит правильную адресацию и копирование этого куска в ОЗУ в crt коде.
Go to the top of the page
 
+Quote Post
Step_ARM
сообщение Oct 20 2009, 05:40
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870



Цитата(klen @ Oct 20 2009, 09:26) *
я не держал в руках кортексы от NXP но то что Вы говорите по логике не может быть.

как минимум можно руками скопировать секцию в ОЗУ и выполнить код по указателю объявив его как функцию.

для выполнения кода из ОЗУ мапирование таблицы векторов не обязательно. поробуйте просто отлинковать секцию кода в область ОЗУ

нужно в скрипте (или еще гдето если не GCC используется) сказать чтобы секция использовала связывание адресов в области ОЗУ и складывалось в .data . это обеспечит правильную адресацию и копирование этого куска в ОЗУ в crt коде.

Речь идет не о куске кода о, а о полноценной программе. Например, загрузчик ПО с SD карты или демо-ролик какой-нибудь. Все это независимо от программы на flash. Поэтому таблица векторов НУЖНА. А вот делается ли ремап в LPC17XX? Пока не нашел...
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 11:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.02073 секунд с 7
ELECTRONIX ©2004-2016