|
TCP/IP + ATMEGA128 + CS8900, Подскажите с чего начать, примеры |
|
|
|
Nov 7 2006, 17:51
|
Местный
  
Группа: Свой
Сообщений: 378
Регистрация: 6-12-04
Пользователь №: 1 340

|
Требуется разработать TCP сервер для удаленных измерений. за основу взял Мегу128 + CS8900 + RAM 64k решил копать с сторону LWIP стека (с перспективой использования стека под арм). Вопрос чего начать, по скудной документации понятно что лучше работь в режиме callback function (попроше), несовсем понятно с чего начинать как инитить сам стек и обрабатывать пакеты. железо запустил, принимает пакеты и выводит в UART порт, подошел к стеку и попал в тупик, подскажите как с ним работать ?
|
|
|
|
|
 |
Ответов
|
Nov 8 2006, 05:48
|
Частый гость
 
Группа: Validating
Сообщений: 169
Регистрация: 10-11-04
Из: Челябинск
Пользователь №: 1 088

|
Цитата(cpl @ Nov 8 2006, 00:31)  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
|
|
|
|
|
Nov 8 2006, 10:52
|
Местный
  
Группа: Свой
Сообщений: 378
Регистрация: 6-12-04
Пользователь №: 1 340

|
Цитата(impatt @ Nov 8 2006, 08:48)  Цитата(cpl @ Nov 8 2006, 00:31)  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 а на нее примеров нет
|
|
|
|
|
Nov 8 2006, 11:45
|
Частый гость
 
Группа: 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
|
|
|
|
|
Nov 8 2006, 12:58
|
Местный
  
Группа: Свой
Сообщений: 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 немного знаком) как привязывается API к железу, через какую функцию ? правильно ли я понял что низкоуровненвые функции ВВ находятся \src\netif\ ethernetif.c в частности low_level_output и low_level_input ? для чего нужен loopif.c ? slipif.c так понимаю для работы по протоколу slip. поправте если неправ
|
|
|
|
|
Nov 9 2006, 03:10
|
Частый гость
 
Группа: 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).
|
|
|
|
Сообщений в этой теме
cpl TCP/IP + ATMEGA128 + CS8900 Nov 7 2006, 17:51 pitt http://www.ethernut.de/ Nov 7 2006, 19:09 cpl Интерисует именно стек LWIP Nov 7 2006, 20:53 Nanobyte Цитата(cpl @ Nov 8 2006, 00:53) Интерисуе... Nov 7 2006, 21:19 iosifk Цитата(cpl @ Nov 7 2006, 21:51) Требуется... Nov 8 2006, 06:37 vesago Начать наверное лучьше с ознакомления с TCP/IP, то... Nov 8 2006, 10:04 cpl Цитата(vesago @ Nov 8 2006, 13:04) Начать... Nov 8 2006, 11:11  defunct Цитата(cpl @ Nov 8 2006, 14:11) С протоко... Nov 9 2006, 15:59   cpl Цитата(defunct @ Nov 9 2006, 18:59) Цитат... Nov 9 2006, 16:02    defunct Цитата(cpl @ Nov 9 2006, 19:02) Встречный... Nov 9 2006, 16:30   ig_z Цитата(defunct @ Nov 9 2006, 19:59) На мо... Nov 9 2006, 16:27   dch Цитата(defunct @ Nov 9 2006, 18:59) На мо... Nov 12 2006, 01:53 vesago Имхо я особой нужды в TCP тоже не вижу. Как правил... Nov 10 2006, 11:34 defunct Цитата(vesago @ Nov 10 2006, 14:34) спрос... Nov 10 2006, 12:56 impatt Цитата(vesago @ Nov 10 2006, 14:34) Кстат... Nov 15 2006, 07:54 vesago Понятно это. Получается надо брать вроде реалтеков... Nov 11 2006, 10:55 defunct Цитата(vesago @ Nov 11 2006, 13:55) Я име... Nov 11 2006, 22:54  vesago Цитата(defunct @ Nov 12 2006, 02:54) Хотя... Nov 12 2006, 08:39   defunct Цитата(vesago @ Nov 12 2006, 11:39) Прави... Nov 12 2006, 22:33    vesago Цитата(defunct @ Nov 13 2006, 02:33) Хотя... Nov 13 2006, 09:07     defunct Цитата(vesago @ Nov 13 2006, 12:07) Прави... Nov 13 2006, 20:34 alekseykoj Я впринципе реализовал стек протоколов самостоятел... Nov 14 2006, 06:25 vesago Я тоже сам накатал под мегу128. Но у меня частный ... Nov 14 2006, 08:11 alekseykoj У меня впринципе немного покруче будет.... Поддерж... Nov 15 2006, 07:25 vesago Изобретать велосипед пришлось из-за ограниченности... Nov 15 2006, 10:43 impatt Цитата(vesago @ Nov 15 2006, 10:43) Изобр... Nov 21 2006, 07:41 vesago А можно какую ссылочку - отправную точку по этому ... Nov 22 2006, 12:24 vesago Попросил - состряпали для меня мост - гоняет из из... Nov 25 2006, 12:40
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|