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

 
 
> IAR 5.11 Размещение по абсолютному адресу?, Как разместить функцию по абсолютному адресу????
Sergio66
сообщение Nov 4 2009, 11:14
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 235
Регистрация: 9-02-05
Пользователь №: 2 526



Требуется объединить в одном проекте прикладной код и bootloader, котороый этот код собственно и апдейтит.
Т.е. основной рабочий код размещает линкер, как обычно, а лоадер нужно разместить в BOOTSECTION.
Хочется сделать все это одним проектом, а не грузить в контроллер 2 разных куска кода по разным адресам.
Как в проекте ИАР 5.10 можно разместить код с указанного абсолютного адреса?
Вариант с
#define MYSEG 0x3700
#pragma segment="MYSEG"
годится только для переменных, для кода - нет. Какие еще могут быть варианты?
Заранее спасибо за помощь.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zltigo
сообщение Nov 4 2009, 11:30
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Sergio66 @ Nov 4 2009, 14:14) *
Требуется объединить в одном проекте

Глупо вылить в кучу разные вещи.
Цитата
не грузить в контроллер 2 разных куска кода по разным адресам.

А это не проблема комполятора-линкера - склейте HEX файлы Ваших проектов и грузите "одним куском".


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Sergio66
сообщение Nov 4 2009, 21:59
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 235
Регистрация: 9-02-05
Пользователь №: 2 526



Цитата(zltigo @ Nov 4 2009, 14:30) *
Глупо вылить в кучу разные вещи.

А это не проблема комполятора-линкера - склейте HEX файлы Ваших проектов и грузите "одним куском".

Вы видимо не внимательно читали вопрос, я просил не оценку своих умственных способностей, а помощь в решении конкретного вопроса.. Склеивать 2 НЕХ файла мне, как раз и не нужно. Мне не грузить одним куском нужно, а компилировать одним проектом.
Хоть Вы и считаете глупым валить разные вещи в одну кучу, но на самом деле это не разные вещи и одна куча...
Лоадер берет код из внешнего источника, сравнивает № версии этого кода с № версии кода, размещенного в контроллере и принимает решение грузить или нет. Это в примитиве. На самом деле, у этих 2 проектов есть общая область данных, которая должна быть доступна обоим проектам.
Go to the top of the page
 
+Quote Post
rezident
сообщение Nov 4 2009, 22:46
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(Sergio66 @ Nov 5 2009, 02:59) *
Лоадер берет код из внешнего источника, сравнивает № версии этого кода с № версии кода, размещенного в контроллере и принимает решение грузить или нет.
"Не читал, но осуждаю" smile.gif ИМХО бутлодер не должен быть настолько интеллектуальным, чтобы проверять версию! Его задача сообщить наружу загруженную версию, принять данные, записать куда ему укажут или куда "положено" и проверить при старте корректность/валидность кода прикладной задачи. Не его собачье дело какую версию в него будут грузить. А вдруг последняя версия с глюком и нужно откатиться к предыдущей? Как быть? wink.gif
По поводу размещения кода читайте раздел Controlling data and function placement in memory в User's Guide. В IAR EW430 и EWARM для этих целей pragma location и pragma section используются.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Sergio66   IAR 5.11 Размещение по абсолютному адресу?   Nov 4 2009, 11:14
||- - Sergio66   Цитата(rezident @ Nov 5 2009, 01:46) ...   Nov 5 2009, 08:28
||- - zltigo   Цитата(Sergio66 @ Nov 5 2009, 11:28) поня...   Nov 5 2009, 08:59
|||- - Sergio66   Цитата(zltigo @ Nov 5 2009, 11:59) ... ср...   Nov 5 2009, 09:16
|||- - zltigo   Цитата(Sergio66 @ Nov 5 2009, 12:16) Все ...   Nov 5 2009, 09:40
||- - rezident   Цитата(Sergio66 @ Nov 5 2009, 13:28) В мо...   Nov 5 2009, 15:10
||- - Sergio66   Цитата(rezident @ Nov 5 2009, 18:10) А по...   Nov 5 2009, 16:57
|- - aaarrr   Цитата(Sergio66 @ Nov 5 2009, 00:59) На с...   Nov 4 2009, 23:03
|- - zltigo   Цитата(Sergio66 @ Nov 5 2009, 00:59) Вы в...   Nov 4 2009, 23:42
- - sergeeff   Завязывать фактически два разных проекта, да еще и...   Nov 5 2009, 01:22
- - rezident   Съем журнала никак не связан с обновлением ПО. То,...   Nov 5 2009, 17:09
|- - Sergio66   Цитата(rezident @ Nov 5 2009, 20:09) Съем...   Nov 5 2009, 17:31
|- - sergeeff   Цитата(Sergio66 @ Nov 5 2009, 20:31) И вс...   Nov 5 2009, 20:25
|- - Dog Pawlowa   Цитата(Sergio66 @ Nov 5 2009, 21:31) Для ...   Nov 6 2009, 07:15
- - LessNik   Цитата(Sergio66 @ Nov 4 2009, 14:14) Треб...   Nov 11 2009, 07:58
- - Sergio66   Цитата(LessNik @ Nov 11 2009, 10:58) Посм...   Nov 11 2009, 08:13


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

 


RSS Текстовая версия Сейчас: 26th June 2025 - 05:52
Рейтинг@Mail.ru


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