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

 
 
> MSPGCC + MSP430X - проблемы с .far_rom
MrYuran
сообщение Feb 12 2014, 11:01
Сообщение #1


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Здравствуй, народ!
Нид ё хелп!

Пришлось таки столкнуться с верхней памятью MSP430X, возникли проблемы.

История болезни:

1. Код перевалил за 53кБ на f2618 и перестал влезать в секцию .rom

2. Не долго думая, некоторые функции перенаправили в верхнюю флешь через __attribute__((section(".far_rom")))
вроде прокатило, но функции почему-то легли с адреса 0x200 вместо 0x10000.

3. Добавили флаг -memory-model = large
Линкер съел, компилятор не понял.

4. Выяснилось, что готовая сборка mspgcc_20120911 не поддерживает нужные ключи (или чяднт?)

Насколько я понял, все доработки находятся в DEVEL ветках и их нужно встраивать ручками.
Сборка gcc конечно полезна для общего развития, но совершенно бессмысленна с т.з. производственного процесса.

Нельзя ли где взять готовые сборки, поддерживающие верхнюю флешь?
Или я чего-то неправильно понимаю?

PS: есть ещё свежак от TI+RH, но там похоже пока только голое ядро, все остальное нужно навешивать самостоятельно.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
MrYuran
сообщение Feb 14 2014, 10:20
Сообщение #2


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



smile3046.gif

Код
c:/msp430gcc/bin/../lib/gcc/msp430-elf/4.8.0/../../../../msp430-elf/bin/ld.exe:
.\exe\1002DT_430_02_00.elf section `.infomem' will not fit in region `VECT0'
c:/msp430gcc/bin/../lib/gcc/msp430-elf/4.8.0/../../../../msp430-elf/bin/ld.exe:
section __interrupt_vector_6 loaded at [0000ffcc,0000ffcd] overlaps section .inf
omem loaded at [0000ffc0,0000ffdd]
c:/msp430gcc/bin/../lib/gcc/msp430-elf/4.8.0/../../../../msp430-elf/bin/ld.exe:
region `VECT0' overflowed by 28 bytes
collect2.exe: error: ld returned 1 exit status
make: *** [.\exe\1002DT_430_02_00.elf] Error 1


Какого.. .infomem легло на вектора?


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post



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

 


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


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