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

 
 
> размещение констант в ROM, AT91SAM7Sxxx
Terrabyte
сообщение Sep 18 2007, 11:47
Сообщение #1


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

Группа: Свой
Сообщений: 124
Регистрация: 2-01-07
Из: Russia
Пользователь №: 24 042



работая с IAR 4.30А столкнулся с проблемой,
не получается разместить константу в internal flesh по абсолютному адресу,
проц ..SAM7S128, - 512 сегментов по 256 байт .
задача : разместить число 0x1234 в последнем сегменте, т.е.
по адресу 0x1FF00.
пробовал следующее:
1) static const int Adr_flesh @ 0x1FF00 = 0x1234;
2) #pragma location = 0x1FF00
const int Adr_flesh = 0x1234;
3) пробовал в файле __.xcl поменять
-D ROMEND=0001FFFF на
-D ROMEND=0001FEFF

Что нужно сделать? прошу помоч
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Vitaliy_ARM
сообщение Feb 25 2008, 11:05
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Переползаю с IAR4.42 на IAR5.11.
В мануалах по компановщику не встретил такой информации (может чего-то упустил). Нашел только как размещать в регионах памяти не инициаконстанты. В мануале нашел лишь то, что можно размещать только неининциализируемые константы. Танцы с бубном не помогают.
В IAR 4,42 делал следующим образом:

#pragma location = 0x00001000
__root const unsigmed int data = 0x25022008;

В IAR5.11 не работает, говорит, что константа должна быть __no_init.
Собственно вопрос тот же, как разместить инициализируемую константу по указанному адресу в IAR5.11? help.gif


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post



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

 


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


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