Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Выбор микроконтроллера для Ethernet
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Вовка_Бызов
Добрый всем день!

Выбираем микроконтроллер в качестве интерфейсного (Ethernet) устройства к существующему оборудованию .
Основным критерием является хорошая математическая поддержка со стороны производителя. Т.е. нормальная библиотека реализации стека IP (желательно до HTTP, как минимум - до TCP). Хорошо бы еще и реализацию сервера иметь.

По быстродействию - канал связи должен обеспечивать обмен со скоростью около 15-18 мбит.

Первоначально ориентировались на МК от Texas Instruments или от Atmel (к первым у меня личная субъективная симпатия rolleyes.gif ).

Посоветуйте что-нибудь... help.gif
Спасибо!
theBMV
Железо можно, думаю, любое.
Раньше использовал LPC2xxx + CS8900A. Но это только 10BASE-T. И программный драйвер - т.е. очень медленно.
Сейчас перехожу на LPC17xx там встроенный MAC и по RMII цепляю KSZ8721BL. Как в IAR-LPC-1768-SK. Плюс DMA с прерываниями. Можно достичь желаемой скорости.

А насчет стека - рекомендую uIP.
Хорошо документирован. Поддержка ARP, TCP, UDP, ICMP (частично) + есть примеры HTTP-сервера.

А, забыл, в IAR EWARM есть пример для LPC17xx + uIP как раз HTTP-сервер
Dron_Gus
Боюсь, при "15-18 мбит" встроенной памяти может не хватить для буферизации и нужд стека.
theBMV
LPC1768
Цитата
On-chip SRAM includes:
32/16 kB of SRAM on the CPU with local code/data bus for high-performance CPU access.
Two/one 16 kB SRAM blocks with separate access paths for higher throughput. These SRAM blocks may be used for Ethernet, USB, and DMA memory, as well as for general purpose CPU instruction and data storage.

uIP
Цитата
Very small code size.
Very low RAM usage, configurable at compile time. (я бы даже сказал байты)

А если не использовать memcpy() а работать с указателями DMA... Тут, думаю, и 18Mbit/s не предел...
Dron_Gus
Я не говорю, что стек этого не может. Тем более топикстартер не указал откуда у него данные будет проц забирать. Может они скопом вываливаются. Ну и что за сеть будет. Одно дело провод комп-устройство, другое дело устройство на одном конце города, пользователь на другом, а между ними - сеть общего пользования.
Вовка_Бызов
Цитата(Dron_Gus @ Jan 13 2011, 20:34) *
Я не говорю, что стек этого не может. Тем более топикстартер не указал откуда у него данные будет проц забирать. Может они скопом вываливаются. Ну и что за сеть будет. Одно дело провод комп-устройство, другое дело устройство на одном конце города, пользователь на другом, а между ними - сеть общего пользования.


Могу по-подробнее. Есть некий девайс. У него есть набор исполнительных устройств и датчиков. Задача - снимать с него телеметрию и дистанционно управлять. Управление в данном случае - процесс медленный. А вот телеметрия.. Тут собака и порылась. Понятно, что тормоза тырнета учесть невозможно. Но сам поток от девайса до пользователя, сидящего за компом нужно довести. Даже с некими тормозами по ходу.

Да - добавлю - связь - действительно через тырнет. В том числе - девайс будет расположен за проксей.

Снимать данные планируется с определенного порта (TCP). Но часть данных планируется показывать через HTTP страничку девайса. Там же - частичное управление (типа - включить/выключить).

А uIP портируется в любой процессор? Скажем - в какой-нить DSP от TI он залезет? И как обеспечивается стык с конкретной реализацией контроллера?
Alekseeey
Цитата(Вовка_Бызов @ Jan 12 2011, 15:23) *
Добрый всем день!

Выбираем микроконтроллер в качестве интерфейсного (Ethernet) устройства к существующему оборудованию .
Основным критерием является хорошая математическая поддержка со стороны производителя. Т.е. нормальная библиотека реализации стека IP (желательно до HTTP, как минимум - до TCP). Хорошо бы еще и реализацию сервера иметь.

По быстродействию - канал связи должен обеспечивать обмен со скоростью около 15-18 мбит.

Первоначально ориентировались на МК от Texas Instruments или от Atmel (к первым у меня личная субъективная симпатия rolleyes.gif ).

Посоветуйте что-нибудь... help.gif
Спасибо!


Сам не использовал, но мне кажется, что для данной задачи подойдет какое-нибудь готовое решение типа W5100 или W5300.

Wiznet

Dron_Gus
При таких запросах имеет смысл смотреть на железяку, на которую можно навернуть линукс. Конечно, если от железяки не требуется реалтаймового отклика для управления устройством.

ИМХО, только не "готовое решение". И не визнет.
scifi
Цитата(Вовка_Бызов @ Jan 12 2011, 15:23) *
По быстродействию - канал связи должен обеспечивать обмен со скоростью около 15-18 мбит.

Цитата(theBMV @ Jan 13 2011, 17:46) *
А насчет стека - рекомендую uIP.

Боюсь, что uIP и 15-18 Мбит - вещи несовместимые. Причина: uIP поддерживает только один неподтверждённый сегмент TCP. Это значит, что для реализации 18 Мбит/с пинг должен быть существенно менее 1 мс.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.