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

 
 
> lpc2378 и ETHERNET RAM
r301
сообщение Feb 13 2008, 11:26
Сообщение #1





Группа: Участник
Сообщений: 13
Регистрация: 20-10-07
Пользователь №: 31 533



В проекте используется lpc2378. Ни ETHERNET ни USB не используется.
Возможно ли использовать ETHERNET RAM (16 kB) и USB RAM (8 KB) как обычную ОЗУ?
Если да, то как это сделать?
Для разработки используется keil + GCC, как я понимаю надо править LinkerScript.ld, но я не понял как указать для секции DATA два участка памяти. Какие будут мысли по этому поводу?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Vitaliy_ARM
сообщение Feb 13 2008, 23:32
Сообщение #2


Знающий
****

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



Цитата(r301 @ Feb 13 2008, 14:26) *
В проекте используется lpc2378. Ни ETHERNET ни USB не используется.
Возможно ли использовать ETHERNET RAM (16 kB) и USB RAM (8 KB) как обычную ОЗУ?
Если да, то как это сделать?
Для разработки используется keil + GCC, как я понимаю надо править LinkerScript.ld, но я не понял как указать для секции DATA два участка памяти. Какие будут мысли по этому поводу?


Использовать можно, только GPDMA не имеет доступа к Ethernet RAM. Кейлом не пользуюсь. Самый простой вариант, если нужно там размещать большие буфера, то можно сделать вот так, и контроллировать все в ручную:

int main()
{
DWORD *pBuf = 0x7FE00000; // указатель на буфер в памяти Ethernet
DWORD Data;

*pBuf = 0x01020304;

Data = *pBuf; // Data = 0x01020304
}

Сообщение отредактировал Vitaliy_ARM - Feb 13 2008, 23:33


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 14 2008, 00:11
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Vitaliy_ARM @ Feb 14 2008, 02:32) *
Самый простой вариант...

Самый простой - сказать линкеру, что у него два блока RAM - пусть линкует.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
r301
сообщение Feb 14 2008, 01:34
Сообщение #4





Группа: Участник
Сообщений: 13
Регистрация: 20-10-07
Пользователь №: 31 533



Цитата(zltigo @ Feb 14 2008, 03:11) *
Самый простой - сказать линкеру, что у него два блока RAM - пусть линкует.


вот я и спрашиваю, как это объяснить линкеру.
Go to the top of the page
 
+Quote Post
TanT
сообщение Mar 27 2009, 09:56
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 61
Регистрация: 22-11-05
Из: Россия->Омск
Пользователь №: 11 210



Цитата
Самый простой - сказать линкеру, что у него два блока RAM - пусть линкует.


Уважаемый Игорь, тема конечно старая, но действительно: как объяснить линкёру что у него два блока RAM? В частности в файле .xcl это можно оформить. (использую IAR)

Сообщение отредактировал TanT - Mar 27 2009, 10:10


--------------------
Если вы не можете объяснить что-то шестилетнему ребенку, значит, вы сами этого не понимаете.
Альберт Эйнштейн
Go to the top of the page
 
+Quote Post
HARMHARM
сообщение Mar 27 2009, 14:21
Сообщение #6


читатель даташитов
****

Группа: Свой
Сообщений: 853
Регистрация: 5-11-06
Из: Днепропетровск
Пользователь №: 21 999



Цитата(TanT @ Mar 27 2009, 11:56) *
Как объяснить линкёру что у него два блока RAM? В частности в файле .xcl это можно оформить. (использую IAR)

-DRAMSTART=40000040
-DRAMEND=40007FDF
-DETHRAMSTART=7FE00000
-DETHRAMEND=7FE03FFF
-Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND,ETHRAMSTART-ETHRAMEND
Go to the top of the page
 
+Quote Post



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

 


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


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