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

 
 
> Не лезет массив во внешнюю память
ViKo
сообщение Feb 8 2011, 09:25
Сообщение #1


Универсальный солдатик
******

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



В тестовом проекте Keil создаю массив во внешней памяти
Код
uint16_t ExtDpyBuf[0x9600] __attribute__((at(0x64000000)));

и больше ничего не требуется - ни scatter файл править, ни свойства в визарде менять. Код генерируется. Хотя нигде даже не упоминается про этот регион.
В рабочем проекте задаю тот же массив, меняю свойства, и - никак! Выдает
Цитата
... Error: L6407E: Sections of aggregate size 0x6128 bytes could not fit into .ANY selector(s).

Уменьшаю массив до 0x2600 - пожалуйста! Все влазит.
Что делать? Кто съел мою память?

upd. Еще добавлю - если атрибут уберу, компилируется. Потому что не используется.
upd2. Еще. Имею 2 Project Targets - ROM и RAM. Во втором разделил ОЗУ на две части для кода и данных. Вот именно в нем и не работает. А в ROM - влазит. Как будто для инициализации массива используется память?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ViKo
сообщение Feb 8 2011, 18:45
Сообщение #2


Универсальный солдатик
******

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



Буду смотреть, что творится с массивом во внешней памяти при определении.
Но возникла идея побочная - а зачем мне именно массив определять. Буду по указателю гонять данные в ExtDpyBuf. Адрес и размер задам с помощью #define, компилятор во внешнюю память сам ничего не положит. Другие области этой памяти буду импользовать аналогично. Т.е. возьму роль линкера для внешней памяти на себя. sm.gif

Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ViKo   Не лезет массив во внешнюю память   Feb 8 2011, 09:25
- - sergeeff   Уважаемый ViKo! Вы нам так все рассказываете,...   Feb 8 2011, 19:07
|- - ViKo   Цитата(sergeeff @ Feb 8 2011, 21:07) Что ...   Feb 8 2011, 20:01
- - andrewlekar   Попробуйте-ка для вашего массива поставить атрибут...   Feb 9 2011, 05:12
|- - ViKo   Цитата(andrewlekar @ Feb 9 2011, 07:12) П...   Feb 9 2011, 08:47
- - sergeeff   Цитата(ViKo @ Feb 8 2011, 13:25) В тестов...   Feb 9 2011, 06:56
- - sonycman   А почему бы не задать регион для внешней памяти и ...   Feb 9 2011, 07:50
- - sergeeff   Почти уверен, что ошибка линкера. И, скорее всего,...   Feb 9 2011, 08:10
- - sonycman   Приведите скаттер файл, каким образом у вас регион...   Feb 9 2011, 10:09
|- - ViKo   Цитата(sonycman @ Feb 9 2011, 12:09) Прив...   Feb 9 2011, 10:28
|- - ar__systems   Цитата(ViKo @ Feb 9 2011, 05:28) Располаг...   Feb 9 2011, 13:48
|- - ViKo   Цитата(ar__systems @ Feb 9 2011, 15:48) А...   Feb 9 2011, 14:26
- - ViKo   В тестовом примере путем урезания памяти КодLR_IRO...   Feb 9 2011, 12:08
- - ViKo   Попытался в тестовом проекте найти, обращается ли ...   Feb 9 2011, 16:51
- - ViKo   Нужно понять, инициализируется ли массив - глобаль...   Feb 10 2011, 09:54


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

 


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


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