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

 
 
> Размер __no_init секции, из IDE
xelax
сообщение Oct 3 2008, 10:49
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 370
Регистрация: 7-11-06
Пользователь №: 22 035



Коллеги,

такой вопрос:

у меня есть однобайтовая __no_init переменная, при линкове выдаётся ошибка, что разммер секции слишком маленький и туда переменная не помещается. И действительно посмотрев командную строку линкера вижу такие параметры
Код
-D_..X_SRAM_END=21FF
-Z(DATA)NEAR_N=_..X_EXT_NV_BASE:+_..X_EXT_NV_SIZE
-D_..X_EXT_NV_BASE=_..X_SRAM_END
-D_..X_EXT_NV_SIZE=0


использую мегу1281. То есть насколько я понимаю линкер пытается положить переменную по адресу
0х21FF + 0 ???? Я прав????

И такой вопрос как поменять эти дефайны для линкера из IDE??? Создавать свой скрипт для линкера не хотелось бы.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Сергей Борщ
сообщение Oct 3 2008, 11:33
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(xelax @ Oct 3 2008, 13:49) *
использую мегу1281. То есть насколько я понимаю линкер пытается положить переменную по адресу
0х21FF + 0 ???? Я прав????
Нет. Он пытается положить ее по адресу _..X_EXT_NV_BASE.
Цитата(xelax @ Oct 3 2008, 13:49) *
И такой вопрос как поменять эти дефайны для линкера из IDE??? Создавать свой скрипт для линкера не хотелось бы.
Судя по этому отрывку скрипта он пытается положить ее во внешнюю память. Если вам удастся в оболочке указать, что внешняя память лежит по тем же адресам, что и внутренняя, то все должно получиться. Если нет - придется переписывать скрипт. Если удастся - проверьте, не пытается ли оболочка при этом подключить другой стартап, который инициализирует проц на работу с внешней памятью.

Полагаю, что скопировать дефолтный скрипт линкера в папку проекта и слегка подправить его под свои требования - наиболее правильный вариант.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post



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

 


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


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