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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> TCP/IP + ATMEGA128 + CS8900, Подскажите с чего начать, примеры
cpl
сообщение Nov 7 2006, 17:51
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 6-12-04
Пользователь №: 1 340



Требуется разработать TCP сервер для удаленных измерений.
за основу взял Мегу128 + CS8900 + RAM 64k
решил копать с сторону LWIP стека (с перспективой использования стека под арм).
Вопрос чего начать, по скудной документации понятно что лучше работь в режиме callback function (попроше), несовсем понятно с чего начинать как инитить сам стек и обрабатывать пакеты.

железо запустил, принимает пакеты и выводит в UART порт, подошел к стеку и попал в тупик, подскажите как с ним работать ? ninja.gif
Go to the top of the page
 
+Quote Post
pitt
сообщение Nov 7 2006, 19:09
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 328
Регистрация: 1-06-06
Из: USA
Пользователь №: 17 672



http://www.ethernut.de/


--------------------
Прокричал немой глухому:"...Спасибо за внимание!"
http://www.youtube.com/watch?v=3Nnj4ky4Z_g
Go to the top of the page
 
+Quote Post
cpl
сообщение Nov 7 2006, 20:53
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 6-12-04
Пользователь №: 1 340



Интерисует именно стек LWIP maniac.gif
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Nov 7 2006, 21:19
Сообщение #4


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Цитата(cpl @ Nov 8 2006, 00:53) *
Интерисует именно стек LWIP

15 секунд поиска в Yandex дали:
http://www.sics.se/~adam/lwip/


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
cpl
сообщение Nov 7 2006, 21:31
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 6-12-04
Пользователь №: 1 340



cheers.gif blink.gif biggrin.gif
с этого и начинал, примеров использования ненашел ninja.gif
ткните носом smile3046.gif
Go to the top of the page
 
+Quote Post
impatt
сообщение Nov 8 2006, 05:48
Сообщение #6


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

Группа: Validating
Сообщений: 169
Регистрация: 10-11-04
Из: Челябинск
Пользователь №: 1 088



Цитата(cpl @ Nov 8 2006, 00:31) *
cheers.gif blink.gif biggrin.gif
с этого и начинал, примеров использования ненашел ninja.gif
ткните носом smile3046.gif


The lwIP API uses a connection abstraction similar to that of the BSD socket APIThe lwIP API uses a connection abstraction similar to that of the BSD socket API

Это значит, что запускаешь свой любимый дистрибутив линукса, например, команда info libc sockets, там всё есть, с примерами. Заодно и проверишь на линуксе, свои примеры, а потом на контроллере.

Кстати, на сайте есть pdf-ка, там есть примеры.

Сообщение отредактировал impatt - Nov 8 2006, 05:53
Go to the top of the page
 
+Quote Post
iosifk
сообщение Nov 8 2006, 06:37
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(cpl @ Nov 7 2006, 21:51) *
Требуется разработать TCP сервер для удаленных измерений.
за основу взял Мегу128 + CS8900 + RAM 64k


Могу прислать описания и софт для micrel.com - KSZ8842/1 - и это будет Ethernet 10/100.
Это примерно 6 Мег.
И сделайте поиск по нику "Волощенко". Он только что аналогичеую вещь закончил на CS8900, подумал над жизнью и попросил образец KSZ8842....
Вот для затравки пара документов.
Прикрепленные файлы
Прикрепленный файл  KSZ884x_Programmer_s_Guide_v1.0.pdf ( 304.71 килобайт ) Кол-во скачиваний: 1347
Прикрепленный файл  ____________________________.zip ( 49.82 килобайт ) Кол-во скачиваний: 81
 


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
vesago
сообщение Nov 8 2006, 10:04
Сообщение #8


Тутэйшы
****

Группа: Свой
Сообщений: 708
Регистрация: 30-11-04
Пользователь №: 1 263



Начать наверное лучьше с ознакомления с TCP/IP, тогда думаю и с lwip проще разобраться будет. Благо, что читать не очень много. Понравилось описание на www.protocols.ru. Можно и самому написать. Вам надо к блоку данных добавлять заголовок TCP или UDP, к этому пакету добавить заголовок IP и пулять в сеть. И обратно. По большому счету ничего сложного. Геморно только TCP реализовать - много факторов влияет на смену текущего состояния TCP. Больше всего и читать по нем. Может вам будет достаточно UDP, тогда все проще, но придется "самому" контролировать доставку.
Go to the top of the page
 
+Quote Post
cpl
сообщение Nov 8 2006, 10:52
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 6-12-04
Пользователь №: 1 340



Цитата(impatt @ Nov 8 2006, 08:48) *
Цитата(cpl @ Nov 8 2006, 00:31) *

cheers.gif blink.gif biggrin.gif
с этого и начинал, примеров использования ненашел ninja.gif
ткните носом smile3046.gif


The lwIP API uses a connection abstraction similar to that of the BSD socket APIThe lwIP API uses a connection abstraction similar to that of the BSD socket API

Это значит, что запускаешь свой любимый дистрибутив линукса, например, команда info libc sockets, там всё есть, с примерами. Заодно и проверишь на линуксе, свои примеры, а потом на контроллере.

Кстати, на сайте есть pdf-ка, там есть примеры.


Как я понял под BSD нужно ос, чтоб разруливать, ос непредполагается, поэтому callback
а на нее примеров нет
Go to the top of the page
 
+Quote Post
cpl
сообщение Nov 8 2006, 11:11
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 6-12-04
Пользователь №: 1 340



Цитата(vesago @ Nov 8 2006, 13:04) *
Начать наверное лучьше с ознакомления с TCP/IP, тогда думаю и с lwip проще разобраться будет. Благо, что читать не очень много. Понравилось описание на www.protocols.ru. Можно и самому написать. Вам надо к блоку данных добавлять заголовок TCP или UDP, к этому пакету добавить заголовок IP и пулять в сеть. И обратно. По большому счету ничего сложного. Геморно только TCP реализовать - много факторов влияет на смену текущего состояния TCP. Больше всего и читать по нем. Может вам будет достаточно UDP, тогда все проще, но придется "самому" контролировать доставку.


С протоколом ознакомился, думаю начальство неодобрит переписывания стека blink.gif
Go to the top of the page
 
+Quote Post
impatt
сообщение Nov 8 2006, 11:45
Сообщение #11


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

Группа: Validating
Сообщений: 169
Регистрация: 10-11-04
Из: Челябинск
Пользователь №: 1 088



Цитата(cpl @ Nov 8 2006, 13:52) *
Как я понял под BSD нужно ос, чтоб разруливать, ос непредполагается, поэтому callback
а на нее примеров нет

Неправильно.
Написано, что механизм взаимодействия с библиотекой такой-же, как в BSD (такой-же, как в Линуксе, *BSD, такоей-же, как в винде 9х, если не ошибаюсь по поводу последней - та, что winsock.dll имеет).
Это значит, что у тебя есть несколько функций, посредством которых ты можешь получить доступ ко всем примочкам.
По поводу линукса (да хоть той-же *BSD) - эта ось на настольном компьютере поможет тебе нормально промоделировать работу твоей проги под эту библиотеку, ибо API - одинаков.
Ферштеен ?

Сообщение отредактировал impatt - Nov 8 2006, 11:46
Go to the top of the page
 
+Quote Post
cpl
сообщение Nov 8 2006, 12:58
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 6-12-04
Пользователь №: 1 340



Цитата(impatt @ Nov 8 2006, 14:45) *
Цитата(cpl @ Nov 8 2006, 13:52) *

Как я понял под BSD нужно ос, чтоб разруливать, ос непредполагается, поэтому callback
а на нее примеров нет

Неправильно.
Написано, что механизм взаимодействия с библиотекой такой-же, как в BSD (такой-же, как в Линуксе, *BSD, такоей-же, как в винде 9х, если не ошибаюсь по поводу последней - та, что winsock.dll имеет).
Это значит, что у тебя есть несколько функций, посредством которых ты можешь получить доступ ко всем примочкам.
По поводу линукса (да хоть той-же *BSD) - эта ось на настольном компьютере поможет тебе нормально промоделировать работу твоей проги под эту библиотеку, ибо API - одинаков.
Ферштеен ?


Спасибо теперь начинаю понимать, значит вовсе необязательно использовать низкоуровневые callback функции, (с winsock немного знаком) smile3009.gif

как привязывается API к железу, через какую функцию ?
правильно ли я понял что низкоуровненвые функции ВВ находятся
\src\netif\ ethernetif.c
в частности low_level_output и low_level_input ?
для чего нужен loopif.c ?
slipif.c так понимаю для работы по протоколу slip.
поправте если неправ
Go to the top of the page
 
+Quote Post
impatt
сообщение Nov 9 2006, 03:10
Сообщение #13


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

Группа: Validating
Сообщений: 169
Регистрация: 10-11-04
Из: Челябинск
Пользователь №: 1 088



Цитата(cpl @ Nov 8 2006, 15:58) *
Спасибо теперь начинаю понимать, значит вовсе необязательно использовать низкоуровневые callback функции, (с winsock немного знаком)

Никаких, как я понимаю, callback-ов. Если я и упомянул про winsock.dll (а не winsock2.dll), то только потому, что слышал, что в ней использовались фукции а-ля BSD. Сам winsock-ом не пользовался.

Так как я не пользовался этой библиотекой, то точно ответить на следующие вопросы не могу.
Могу посоветовать скачать доку http://www.sics.se/~adam/lwip/doc/lwip.pdf и поглядеть по главам, а также пытаться скомпилировать проект и поглядеть, что получается.

Цитата(cpl @ Nov 8 2006, 15:58) *
как привязывается API к железу, через какую функцию ?

Надо, главным образом, как я понимаю, пару функций принимающих пакет и отправляющих его. Это, условно говоря, связь с железом.
Цитата(cpl @ Nov 8 2006, 15:58) *
правильно ли я понял что низкоуровненвые функции ВВ находятся
\src\netif\ ethernetif.c
в частности low_level_output и low_level_input ?

Я не очень в курсе, что такое BB...
К сожалению, не могу подсказать и касательно указанных функций и файлов: не имел дела я с этой библиотекой.
Могу посоветовать пытаться скомпилировать проект (чего будет недостаточно, а конкретно, связь с железом - будет ошибка и там рыть надо, или, если скомпилируется, отладчиком смотреть, что куда пишется и обращается, станет понятнее), почитать доку неспеша, а также поэкспериментировать с высокоуровневыми функциями на работающей системе (Linux, *BSD).
Go to the top of the page
 
+Quote Post
cpl
сообщение Nov 9 2006, 10:37
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 6-12-04
Пользователь №: 1 340



Понял, попробую.
Go to the top of the page
 
+Quote Post
defunct
сообщение Nov 9 2006, 15:59
Сообщение #15


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(cpl @ Nov 8 2006, 14:11) *
С протоколом ознакомился, думаю начальство неодобрит переписывания стека blink.gif

Гм.. а я думаю начальству все равно какой там будет стек, больше всего их будет волновать функциональность.
На мой взгляд LwIp сделан криво.
Go to the top of the page
 
+Quote Post

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

 


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


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