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

 
 
 
Reply to this topicStart new topic
> mspgcc CODE MEMORY, использование для хранения констант
avesat
сообщение Aug 14 2005, 17:47
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 589
Регистрация: 14-08-05
Из: Украина
Пользователь №: 7 621



Как отрезать кусок памяти программ для своих целей в mspgcc? В IAR просто редактируется xcl и все. (см. FAQ Сергея Борща). Для gcc я таких опций линкера не нашел, или плохо искал?
Go to the top of the page
 
+Quote Post
SergeyBorshch
сообщение Sep 30 2005, 17:23
Сообщение #2


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

Группа: Участник
Сообщений: 100
Регистрация: 28-09-05
Из: Чернигов, Украина
Пользователь №: 9 053



Я также столкнулся с этой проблемой. Что никто не может помочь?
Go to the top of the page
 
+Quote Post
SergeyBorshch
сообщение Sep 30 2005, 17:36
Сообщение #3


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

Группа: Участник
Сообщений: 100
Регистрация: 28-09-05
Из: Чернигов, Украина
Пользователь №: 9 053



Я также столкнулся с этой проблемой. Что никто не может помочь?
Go to the top of the page
 
+Quote Post
ReAl
сообщение Oct 6 2005, 08:16
Сообщение #4


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(avesat @ Aug 14 2005, 20:47)
Как отрезать кусок памяти программ для своих целей в mspgcc? В IAR просто редактируется xcl и все. (см. FAQ Сергея Борща). Для gcc я таких опций линкера не нашел, или плохо искал?
*



-----делаем новый линкерный скрипт msp430x149.xf (изменения относительно msp430x149.x)
MEMORY
{
flashinfo (rw) : ORIGIN = 0x1100, LENGTH = 0x100
text (rx) : ORIGIN = 0x1200, LENGTH = 0xede0

...
.flashinfo :
{
*(.flashinfo)
} > flashinfo
.bss SIZEOF(.data) + ADDR(.data) :
...


----- test.c
#define FLASHINFO __attribute__((section(".flashinfo")))

unsigned FLASHINFO fcfg = 10;

typedef struct {
unsigned u;
char s[10];
} fstru_t;

fstru_t FLASHINFO fstru1 = { 5, "abcXYZ" };


----- вот что показывает msp430-objdump -D
Disassembly of section .text:

00001200 <_reset_vector__>:
1200: b2 40 80 5a mov #23168, &0x0120 ;#0x5a80
1204: 20 01

...

Disassembly of section .flashinfo:

00001100 <fcfg>:
1100: 0a 00 .word 0x000a; ????

00001102 <fstru>:
1102: 05 00 .word 0x0005; ????
1104: 61 62 addc.b #4, r1 ;r2 As==10
1106: 63 58 .word 0x5863; ????
1108: 59 5a 00 00 add.b 0(r10), r9 ;


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
ReAl
сообщение Oct 6 2005, 08:24
Сообщение #5


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(ReAl @ Oct 6 2005, 11:16)
-----делаем новый линкерный скрипт  msp430x149.xf (изменения относительно

Вдогонку на всякий случай:
если линкуется через $(СС), то добавить ключ -Wl,-T,msp430x149.xf
если через $(LD) - то -T msp430x149.xf


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
avesat
сообщение Oct 9 2005, 19:32
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 589
Регистрация: 14-08-05
Из: Украина
Пользователь №: 7 621



Спасибо, приеду из командировки, обязательно попробую.


--------------------
"Мы будем играть, пока не треснут наши гитары, и все те, кто любит рок - я отдаю вам честь!" AC/DC
Go to the top of the page
 
+Quote Post

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

 


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


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