Комментарии 21
Когда речь заходит о Ethernet и ARM — встает вопрос, а не взять ли тот же STM32 со встроенным Ethernet? :-)
Да, в простейших случаях там будет 10 Мегабит — но для применений уровня «термометра» этого должно быть вполне достаточно при меньшей цене.
Да, в простейших случаях там будет 10 Мегабит — но для применений уровня «термометра» этого должно быть вполне достаточно при меньшей цене.
+1
А как оно работает? Просто по SPI передаем в этот чип что хотим передать, кому, по какому протоколу и он сам все делает? Умеет ли DHCP получать? Может ли быть сервером а не клиентом? Какие данные отдаются в микроконтроллер таком случае?
+2
Я напишу про wiznet 5100, который использую около года.
* В моем случае SPI на ардуино мега.
* По DHCP умеет подключиться.
* Умеет быть и сервером и клиентом. Я лично не докопал как запустить одновременно и клиентом и сервером. Может 5500 будет проще. Надо пробовать.
«Код» тут найдете. Там оно как серер — пингует гугл и пишет лог/показывает % прошедших пакетов за последний час. http тоже пробовал, есть и примеры.
Но не докопал как сделать, чтобы настраивать это дело по http:// и чтобы дальше пинговало. Может кто подскажет — возможно ли впринципе на 5500…
* В моем случае SPI на ардуино мега.
* По DHCP умеет подключиться.
* Умеет быть и сервером и клиентом. Я лично не докопал как запустить одновременно и клиентом и сервером. Может 5500 будет проще. Надо пробовать.
«Код» тут найдете. Там оно как серер — пингует гугл и пишет лог/показывает % прошедших пакетов за последний час. http тоже пробовал, есть и примеры.
Но не докопал как сделать, чтобы настраивать это дело по http:// и чтобы дальше пинговало. Может кто подскажет — возможно ли впринципе на 5500…
+2
Принципы работы планировалось пояснить во второй части, но непонятно, нужно ли пересказывать документацию, или сразу в бой…
Если кратко, то оно работает так: По SPI осуществляется доступ к «регистрам». Некоторые регистры влияют на весь чип, типа ifconfig, можно установить IP адрес и т.д. Отдельная группа регистров управляет «сокетами». Таких групп — 8 штук, т.к. чип поддерживает всего 8 сокетов (W5100 — всего 4 сокета). Каждому сокету можно делать open/close/listen. Также есть «буфера» — у каждого сокета RX и TX, обычно по 2Кб. В буферах лежат «чистые» пользовательские данные для пересылки по сокетам.
DHCP поддерживается, есть исходники с примером. Сокет номер 0 можно переключить в RAW режим и общаться с DHCP по нему.
Если кратко, то оно работает так: По SPI осуществляется доступ к «регистрам». Некоторые регистры влияют на весь чип, типа ifconfig, можно установить IP адрес и т.д. Отдельная группа регистров управляет «сокетами». Таких групп — 8 штук, т.к. чип поддерживает всего 8 сокетов (W5100 — всего 4 сокета). Каждому сокету можно делать open/close/listen. Также есть «буфера» — у каждого сокета RX и TX, обычно по 2Кб. В буферах лежат «чистые» пользовательские данные для пересылки по сокетам.
DHCP поддерживается, есть исходники с примером. Сокет номер 0 можно переключить в RAW режим и общаться с DHCP по нему.
+1
Не уверен, как конкретно в этом чипе, но большинство девайсов такого рода — SoC на MIPS с Linux на борту.
0
Чип Atheros AR9331 стоит 5 баксов и имеет 5 Ethernet интерфейсов на борту (это помимо WiFi, USB, UART и т. п.), плюс сразу 400 МГц мипс процессор. Клевая штука! :-)
+3
Чип Atheros AR9331 — это устройство совершенно другого класса, ближе к Rasberry PI. Ему еще нужен внешний DRAM мегабайта 64 и флеша мегабайт 16 а то и 256 под Linux. Не считая трансформаторов, коннекторов и ШИМ питания. На коленках все это запаять проблематично, никто же не паяет Rasberry :). Скорее придется «дербанить» WiFi точку доступа.
0
Вообще, решение на AR9331 лежит где-то между малиной и микроконтроллерами. Если нужно что-то совсем сложное (рилтайм обработка видео) — приходится смотреть в сторону производительных АРМов (причем малина — не самый лучший вариант, если нужно тиражируемое решение). Если сеть не нужна — микроконтроллеры в большинстве случаев рулят. А вот если задача промежуточная (нужна сеть, но не нужна высокая производительность), то по цене/качеству Атерос рулит просто не по-детски.
Если вы хотите заюзать STM в задачах с Ethernet, то, скорее всего, без внешней DRAM и FLASH тоже не обойдетесь… В любом случае решение по цене будет сопоставимым.
А «дербанить» точку доступа не обязательно. Есть готовые платы на AR9331, а мы для себя так вообще свою разработали. Даташит валяется в открытом доступе. Софт открытый. Себестоимость решения — 12 баксов (на тираже, понятно).
Если вы хотите заюзать STM в задачах с Ethernet, то, скорее всего, без внешней DRAM и FLASH тоже не обойдетесь… В любом случае решение по цене будет сопоставимым.
А «дербанить» точку доступа не обязательно. Есть готовые платы на AR9331, а мы для себя так вообще свою разработали. Даташит валяется в открытом доступе. Софт открытый. Себестоимость решения — 12 баксов (на тираже, понятно).
+1
Согласен, что граница тут размытая, но пост был написан исходя из идеи — уйти «вниз» по шкале цены как можно ниже (до 0.01$??), там не зря запрос на хаб «Интеренет вещей». Представим себе ВНЕЗАПНО ТЫСЯЧИ мелких контролеров везде, т.е. «ошустрение» по Лему. :) Сейчас порт Etherent на коммутаторе стоит 3..5$ и еще столько же — витая пара с прокладкой по кабель-каналу. Хотелось бы устройство загнать в эти цены.
Для STM32F4x7 с MAC Ether LwIP помещается, внешняя память не нужна. но нужен чип PHY, трансформатор и разъем.
Мелкие Linux-устройства я и сам люблю, например Carambola-2 на AR9331 — 33 евро платка без корпуса и БП, Точка доступа TP-Link/D-Link стоит уже столько же, плюс блок питания и пластиковая коробочка. С удовольствием посмотрю на ваш проект.
Для STM32F4x7 с MAC Ether LwIP помещается, внешняя память не нужна. но нужен чип PHY, трансформатор и разъем.
Мелкие Linux-устройства я и сам люблю, например Carambola-2 на AR9331 — 33 евро платка без корпуса и БП, Точка доступа TP-Link/D-Link стоит уже столько же, плюс блок питания и пластиковая коробочка. С удовольствием посмотрю на ваш проект.
0
Дык, «тысячи контроллеров везде» — это все-таки не провода. Поэтому нас у AR9331 как раз WiFi куда больше интересует. :-)
«Внешняя память не нужна» — это если задачи совсем примитивные. Потому как сетевые заморочки выжирают всю встроенную память, а надо же еще и что-то делать по основному направлению…
Литовцам, похоже, «очень деньги нужны»(с). На тираже в 1000 шт производство одной карамболы обходится в 12-13 баксов, мы это точно знаем. :-)
У нас свои платы уже готовы (первые 20 штук), завтра должны замонтировать, к концу недели, надеюсь, будут в Москве. На хабре обязательно похвастаемся, если что.
«Внешняя память не нужна» — это если задачи совсем примитивные. Потому как сетевые заморочки выжирают всю встроенную память, а надо же еще и что-то делать по основному направлению…
Литовцам, похоже, «очень деньги нужны»(с). На тираже в 1000 шт производство одной карамболы обходится в 12-13 баксов, мы это точно знаем. :-)
У нас свои платы уже готовы (первые 20 штук), завтра должны замонтировать, к концу недели, надеюсь, будут в Москве. На хабре обязательно похвастаемся, если что.
+1
Очень хочется чтобы разработчики 5100 переехали севернее 38 градуса северной широты.
0
А умеет ли WIZ550io сам по себе отвечать на пинг?
То есть на офисе ему прошить ип, потом подключить где-нибудь патч-кордом в «тупой свитч», запитать, и иногда пинговать, проверяя тем самым работоспособность свитча.
Есть еще какие-то похожие платки не дорогие для такой задачи?
То есть на офисе ему прошить ип, потом подключить где-нибудь патч-кордом в «тупой свитч», запитать, и иногда пинговать, проверяя тем самым работоспособность свитча.
Есть еще какие-то похожие платки не дорогие для такой задачи?
+1
Да, все W5xxxx самостоятельно отвечают на ICMP ping. После RESET-а там прописывается адрес 192.168.0.1, так что надо быстро-быстро его поменять.
0
Нет возможности энерго-независимо прописать ип?
0
А умеет автономно по DHCP получить ип? Или это надо софтово обрабатывать через SPI?
0
Пинговатся могут и упомянутые ENC28J60 и W5100. Цена ENC28J60 более радует.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Подключаем новенький чип от WIZnet: W5500. IP для маленьких вещей