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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> uart-rc232, плата blackfin - комп
Gyga
сообщение Jun 3 2008, 06:46
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Мне требуется на плате с BlackFin 537 поднять сеть без линукс.
Создан базовый сетевой проект он настроен с помощью TCP/IP Configuration Plugin под статические IP.
Отладка ведётся с помощью тестера и вывода битиков на порт G.
Определено что программа виснет в функции
adi_dev_Control ( lan_handle, ADI_ETHER_CMD_START, NULL);
то есть, как я понял из руководства при запуске драйвера.
Поделитесь пожалуйста своими соображениями.
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 3 2008, 11:42
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Так как отсутствуют средства сообщения с платы, то приходится посылать на порт определённые числа и смотреть напряжение тестером.
Мои отношения с BlackFin только начинаются, наверное, я что-то неправильно делаю.
Go to the top of the page
 
+Quote Post
WEST128
сообщение Jun 4 2008, 07:16
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 468
Регистрация: 13-10-06
Из: Россия, Томск
Пользователь №: 21 291



Без средств отладки (хотя бы UART подключите и через него шлите на ПК) вы будете очень долго разбираться, особенно без опыта с данным процессором. Плата ваша или фирменная ?
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 4 2008, 09:15
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Плата самодельная, почти копия фирменной. Сеть под линуксом работает. Можно пример по UART на С, а то в стандартном примере на ассемблере я ничего не понял. Есть мысли где может быть глюк?
Go to the top of the page
 
+Quote Post
Ciyoha
сообщение Jun 5 2008, 10:23
Сообщение #5


Участник
*

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



Скажите мыло, я примерчик отправлю.
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 5 2008, 13:45
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Можно пример передачи данных с blackfin на компьютер через uart
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 5 2008, 15:01
Сообщение #7


Гуру
******

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



Цитата(Gyga @ Jun 5 2008, 15:45) *
Можно..

А можно для начала заглянуть хотя-бы в примерчики идущие в комплекте, VDSP?
Или, если вдруг не понятно, постаратся задать более осмысленный вопрос.
Moderator:
И кросспоты на этом форуме совершенно однозначно не разрешены. В виде исколчения не удалил, а потратил время на перенос.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 6 2008, 05:07
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



мне не понятно как из стандартного примера выкинуть всё лишнее. Например calbackю
Так же непонятно где задаётся номер UARTA? Так жея непонял способ выдачи сообщения на светодиоды.
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 6 2008, 05:14
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



о спасибо!
bejnoi@yandex.ru
Go to the top of the page
 
+Quote Post
uriy
сообщение Jun 6 2008, 08:48
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606



Цитата
мне не понятно как из стандартного примера выкинуть всё лишнее.
Есть такая кнопочка Delete на клаве!
Цитата
Так же непонятно где задаётся номер UARTA?
Читайте Hardware Reference.
Цитата
Так жея непонял способ выдачи сообщения на светодиоды.
Уверен, что вы даже не взглянули на схему электрическую принципиальную.
Go to the top of the page
 
+Quote Post
Ciyoha
сообщение Jun 6 2008, 09:24
Сообщение #11


Участник
*

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



bejnoi@yandex.ru <- по данному адрессу письмо отправить не удаеться, говорят нет такого.
На счет зависания в функции adi_dev_Control ( lan_handle, ADI_ETHER_CMD_START, NULL), вы не забыли подключить .tcp файл c настройками сети (в нем mac,ip, тип протокола)?
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 6 2008, 11:17
Сообщение #12


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



извиняюсь мыло berjnoi@yandex.ru
tcp файл подключен проверил. Да к тому же он сразу подключается к проекту.
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 10 2008, 11:49
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Пытаюсь завести базовый проект с uart.
При открытии порта узнаю что не хватает памяти. Увеличил массивы в 2 не помогло.
adi_dev_Open(DeviceManagerHandle, &ADIUARTEntryPoint, 0, NULL, &DriverHandle,
ADI_DEV_DIRECTION_BIDIRECTIONAL, NULL, DCBManagerHandle, Callback);
Go to the top of the page
 
+Quote Post
Ciyoha
сообщение Jun 16 2008, 06:22
Сообщение #14


Участник
*

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



Если ваша самодельная плата, являеться копией ez-kid bf537 (SDRAM таже), то при создание проекта с lwip в него автоматически добовляеться все необходимое для работы сети (пинговаться по крайне мере она должна, но для стабильной работы необходимо переместить ether_stack_block[] в некэшируемый блок памяти).
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 16 2008, 10:45
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Память таже, и количество тоже. А как поместить ether_stack_block[] в некэшируемый блок памяти?
Может у меня VIsualDSP 4.5 глючный и к нему надо патч закачать? Или другую версию попробовать?
Go to the top of the page
 
+Quote Post
Ciyoha
сообщение Jun 16 2008, 12:06
Сообщение #16


Участник
*

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



Цитата(Gyga @ Jun 16 2008, 14:45) *
Память таже, и количество тоже. Может у меня VIsualDSP 4.5 глючный и к нему надо патч закачать? Или другую версию попробовать?


У меня тоже VIsualDSP 4.5, мне кажеться у вас дело не в студии. Попробуйте пересоздать проект.

Цитата(Gyga @ Jun 16 2008, 14:45) *
А как поместить ether_stack_block[] в некэшируемый блок памяти?


Выше int system_init() ставите:
#pragma align 4
section("MEM_Ethernet_pool")
char ether_stack_block[ETHER_STACK_SIZE];

закоментируйте //ether_stack_block = (char *) malloc ( ETHER_STACK_SIZE ); в самой функции

затем в ldf файле, за надписью /* This code is preserved if the LDF is re-generated. */
выделяете память под стек:
mem_ethernet_stack_pool { TYPE(RAM) START(0x03c00000) END(0x03ffffff) WIDTH(8) }

и ниже после надписи: /* This code is preserved if the LDF is re-generated. */
пишете:
MEM_Ethernet_pool
{
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(MEM_Ethernet_pool)$LIBRARIES(MEM_Ethernet_pool))
} > mem_ethernet_stack_pool

затем в cplbtab.c прописываем чтоб адресса где расположен mem_ethernet_stack_pool не кэшировались:
ниже // CPLBs covering 64MB
вместо {0x03c00000, (PAGE_SIZE_4MB | CPLB_IDOCACHE)}, ставим {0x03c00000, (PAGE_SIZE_4MB | CPLB_INOCACHE)}.
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 17 2008, 10:16
Сообщение #17


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



уменя линковчик заматерился на
mem_ethernet_stack_pool { TYPE(RAM) START(0x03c00000) END(0x03ffffff) WIDTH(8) }
MEM_Ethernet_pool
{
INPUT_SECTION_ALIGN(4)
INPUT_SECTIONS( $OBJECTS(MEM_Ethernet_pool)$LIBRARIES(MEM_Ethernet_pool))
} > mem_ethernet_stack_pool

[Error el1010] "pr3.ldf":153 Parsing error: Expected a linker description file command [MEMORY | PROCESSOR | PLIT | SHARED_MEMORY | DYNAMIC | ARCHITECTURE | $Macro | INCLUDE]

[Error el1011] "pr3.ldf":153 Syntax error (missingToken): 'mem_ethernet_stack_pool' was unexpected
Go to the top of the page
 
+Quote Post
Ciyoha
сообщение Jun 18 2008, 05:39
Сообщение #18


Участник
*

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



Выше mem_ethernet_stack_pool { TYPE(RAM) START(0x03c00000) END(0x03ffffff) WIDTH(8) }
надо отгрызть память от MEM_SDRAM0_BANK3 тоесть вот так:

MEM_SDRAM0_BANK3 { TYPE(RAM) START(0x03000000) END(0x03bfffff) WIDTH(8) }
mem_ethernet_stack_pool { TYPE(RAM) START(0x03c00000) END(0x03ffffff) WIDTH(8) }
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 18 2008, 06:57
Сообщение #19


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



У меня нет файла cplbtab.c и нет файла с {0x03c00000, (PAGE_SIZE_4MB | CPLB_IDOCACHE)}
Такой ещё вопрос каким значением должен быть прописан MAC адрес?
Go to the top of the page
 
+Quote Post
Ciyoha
сообщение Jun 18 2008, 09:51
Сообщение #20


Участник
*

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



Цитата(Gyga @ Jun 18 2008, 10:57) *
Такой ещё вопрос каким значением должен быть прописан MAC адрес?

MAC можно брать любой свободный (например 00eeaa0000) главное чтоб первые две цифры были 00, перечень занятых адресов можно посмотреть в инете.

Цитата(Gyga @ Jun 18 2008, 10:57) *
У меня нет файла cplbtab.c и нет файла с {0x03c00000, (PAGE_SIZE_4MB | CPLB_IDOCACHE)}


файл называться должен так "Названиепроекта_cplbtab.c" генерируеться он автоматически после установки в опциях проекта в разделе Cache and Memory protection следующих настроек:
Enable instruction cache
Enable data cache Bank1
галочку в поле Generate a customizable CPLB table
и точечку в Write-yhrough cache

и ещо когда все сделаете не забудьте поставить в External Memory точечку на custom, а то все что вы писали в ldr файле прикомпеляции замениться на стандартное.
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 19 2008, 06:06
Сообщение #21


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Сделал новый проект и всё по рецепту. Не помогло буду смотреть где виснет
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 20 2008, 05:06
Сообщение #22


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Я наверное что-то не так сделал. Настройки памяти держатся 1 компиляцию. Потом настройки памяти слетают. Галочка стоит.
Имеет ли значение куда я загружаю программу (0х1000000)?
Такой ещё вопрос section оказывает влияние только на данные или на функции тоже?
Go to the top of the page
 
+Quote Post
Ciyoha
сообщение Jun 20 2008, 05:56
Сообщение #23


Участник
*

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



Цитата(Gyga @ Jun 20 2008, 09:06) *
Я наверное что-то не так сделал. Настройки памяти держатся 1 компиляцию. Потом настройки памяти слетают. Галочка стоит.

Когда все сделаете не забудьте поставить в External Memory точечку на custom, а то все что вы писали в ldr файле прикомпеляции замениться на стандартное. Точно сделали?

Цитата(Gyga @ Jun 20 2008, 09:06) *
Имеет ли значение куда я загружаю программу (0х1000000)?


Ваще не понял вопроса: 0х1000000 это ведь помоему адресс в SDRAM

Цитата(Gyga @ Jun 20 2008, 09:06) *
Такой ещё вопрос section оказывает влияние только на данные или на функции тоже?


какая section?, если вы имеете в виду секцию со стеком то она влияет только на работу сети, если не отключить кэш, то будет не стабильная работа с сетью.
P.S.
Купите, или одолжите у кого нить JTAG.
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 20 2008, 06:52
Сообщение #24


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Ciyoha благодарям вам UART завёлся.
Я гружу свою программу через ubut
tftp 0x1000000 имя
запускаю bootelf 0x1000000
так сказали кто писал на этой плате под линукс. (они были приходящие и теперь не работают)
JTAG я достать могу, как мне его использовать?
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jun 25 2008, 07:43
Сообщение #25


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



С исчезновением настроек памяти я разобрался.
Теперь программа стала виснуть раньше как раз в инициализации стека.
Go to the top of the page
 
+Quote Post
Ciyoha
сообщение Jul 1 2008, 05:11
Сообщение #26


Участник
*

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



Ну что нашли в чем была неполадка?

Сообщение отредактировал Ciyoha - Jul 1 2008, 05:11
Go to the top of the page
 
+Quote Post
Gyga
сообщение Jul 1 2008, 06:20
Сообщение #27


Местный
***

Группа: Участник
Сообщений: 203
Регистрация: 3-06-08
Пользователь №: 38 014



Нет не нашёл. Виснет она в инициализации драйвера. Что там такого делается? Что у меня не так.?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 05:07
Рейтинг@Mail.ru


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