Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AVR + Ethernet ?
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Интерфейсы
Allregia
Подскажите пожалуйста решение.
Есть несколько устройств в помещении, внутри стоит АТМега8, кроме обслуживания кнопок, ЖКИ - принимает сигналы с нескольких контактных датчиков и пары аналоговых сигналов.
Отдает все это по 485. Заказчик спрашивает - "нельзя ли сделать по эзернету?".
т.е. это надо какое-о TCP/IP, отдавать надо по запросу буквально "5 байт", но как малой кровью это сделать ?
aaarrr
Если малой кровью хотите, то прикрутите к меге какой-нибудь Wiznet, или вообще готовый модуль.
В противном случае лучше заменить мегу на что-нибудь с MAC'ом на борту.
zhevak
Пару лет назад я игрался с ENC28J60. Денег было не достаточно и я искал интересные для клиентов темы. Так сказать,
пытался затеять очередной старт-ап. Проект надо было как-то назвать, и я дал ему имя -- Angie (Какая-то одноименная
песня мена тогда сподобила на это!). А через пару месяцев ко мне пришли совершенно другие заказы, и я забросил
Angie в таком недоделанном, полуфабрикатном состоянии. Вобщем-то на Angie были подняты не полные протоколы ARP,
ICMP, IP и UDP. Т.е. он умел только пинговаться, да пересылать туда-сюда пакет байтов, по моему не более 128 или 256.
Собственно, ресурсов Мега8 только-только для этого хватает.

Я тут прикрепил то, что было под руками. Остальное где-то лежит в архивах на компашках. Если кому интересно,
попробую найти. Печатная плата разведена в Layout-е, а софт написан в CodeVision 1.25.
SergeyTT
Цитата(Allregia @ Mar 14 2009, 20:59) *
Подскажите пожалуйста решение.
Есть несколько устройств в помещении, внутри стоит АТМега8, кроме обслуживания кнопок, ЖКИ - принимает сигналы с нескольких контактных датчиков и пары аналоговых сигналов.
Отдает все это по 485. Заказчик спрашивает - "нельзя ли сделать по эзернету?".
т.е. это надо какое-о TCP/IP, отдавать надо по запросу буквально "5 байт", но как малой кровью это сделать ?


Участник форума Rst7 разработал проект NikeE - поспрашивайте его.
Oleg_IT
С CP220х хорошо получается. Важно. что они с установленным МАС идут.
Allregia
Цитата(aaarrr @ Mar 14 2009, 21:05) *
Если малой кровью хотите, то прикрутите к меге какой-нибудь Wiznet, или вообще готовый модуль.
В противном случае лучше заменить мегу на что-нибудь с MAC'ом на борту.


Готовое - было бы вообще хорошо.
Но есть еще вопрос цены. Смотрели X-Port от Латроникса - слишком дорого.

Цитата(zhevak @ Mar 14 2009, 22:20) *
Пару лет назад я игрался с ENC28J60.
...
Я тут прикрепил то, что было под руками. Остальное где-то лежит в архивах на компашках. Если кому интересно,
попробую найти. Печатная плата разведена в Layout-е, а софт написан в CodeVision 1.25.


Очнь интересно, сейчас почитаю.

Цитата(SergeyTT @ Mar 14 2009, 22:38) *
Участник форума Rst7 разработал проект NikeE - поспрашивайте его.


ОК, спасибо.
prottoss
Цитата(Allregia @ Mar 15 2009, 00:59) *
Подскажите пожалуйста решение.
Есть несколько устройств в помещении, внутри стоит АТМега8, кроме обслуживания кнопок, ЖКИ - принимает сигналы с нескольких контактных датчиков и пары аналоговых сигналов.
Отдает все это по 485. Заказчик спрашивает - "нельзя ли сделать по эзернету?".
т.е. это надо какое-о TCP/IP, отдавать надо по запросу буквально "5 байт", но как малой кровью это сделать ?
Можно для связи сделать мост(роутер, сервер и т.п...), который будет общаться с контроллерами по RS485, а отдавать инфу/принимать команды по Ethernet. ИМХО, самое дешевое решение.
WHALE
Цитата(zhevak @ Mar 14 2009, 22:20) *
Вобщем-то на Angie были подняты не полные протоколы ARP,
ICMP, IP и UDP. Т.е. он умел только пинговаться, да пересылать туда-сюда пакет байтов, по моему не более 128 или 256.
Собственно, ресурсов Мега8 только-только для этого хватает.

Последнюю неделю занимался проектом на ENC и 8 Меги.Практически такой-же набор протоколов Ethernet занял меньше 30% обьема флеша.
Из этого обьема большую часть сожрал протокол работы с ENC,а ARP,ICMP-ping и UDP требуют ну очень мало.
Allregia
Цитата(prottoss @ Mar 15 2009, 01:17) *
Можно для связи сделать мост(роутер, сервер и т.п...), который будет общаться с контроллерами по RS485, а отдавать инфу/принимать команды по Ethernet. ИМХО, самое дешевое решение.


Оно примерно так сейчас и работает, но на будущее - заказчик хочет эзернет в каждом устройстве.
Я смотрел у WizNet - готовый модуль Ethernet-RS232 у них ~$23 стоит (в розницу), все же почти вдвое дешевое чем XPort, если клиента устроит - то вопрос решен.
Если нет - буду искать другое или свое делать.
Я только не понял - там провода эзернета гальванически развязаны? Как я понял - нет. Это наверное не есть хорошо, но можно будет по RS отвязаться.

По поводу ENC28J60 - смотрел у Микрочипа на нее аппы, у них есть TCP/IP стек и SMNP, все FREE, но поскольку я эзернете я чайник - оценить годится оно мне или нет я пока не могу.
В общем-то нет проблем поменять АТМегу8 на какой-нибудь PIC18, если оно упростит решение проблемы эзернета.
prottoss
Цитата(Allregia @ Mar 15 2009, 13:00) *
Я только не понял - там провода эзернета гальванически развязаны?
ДА
Rst7
Цитата(Allregia @ Mar 14 2009, 21:50) *
Цитата

Цитата(SergeyTT @ Mar 14 2009, 22:38)
Участник форума Rst7 разработал проект NikeE - поспрашивайте его.

ОК, спасибо.


Собственно, он недалеко. На следующей странице - http://electronix.ru/forum/index.php?showtopic=44276

Читать можно первый пост, потом ближе к концу выложен универсальный reference design (не побоимся этого термина wink.gif ) и один из последних стеков.

Цитата(Allregia @ Mar 15 2009, 08:00) *
По поводу ENC28J60 - смотрел у Микрочипа на нее аппы, у них есть TCP/IP стек и SMNP, все FREE, но поскольку я эзернете я чайник - оценить годится оно мне или нет я пока не могу.


Ну что Вам сказать. Совсем рядом обсуждают грабли с ENC28J60 - http://electronix.ru/forum/index.php?showtopic=31583

Кроме того, она некисло жрет и посему греется.

Если уж так хочется внешнего камня с MAC+PHY обратите внимание на Micrel'овские KSZ8851SNL.

Цитата
В общем-то нет проблем поменять АТМегу8 на какой-нибудь PIC18, если оно упростит решение проблемы эзернета.


Внутри PIC18 та же эзернет-корка, что и ENC28J60, со всеми вытекающими.
Allregia
Цитата(Rst7 @ Mar 15 2009, 11:41) *
ОК, спасибо.


Собственно, он недалеко. На следующей странице - http://electronix.ru/forum/index.php?showtopic=44276

Читать можно первый пост, потом ближе к концу выложен универсальный reference design (не побоимся этого термина wink.gif ) и один из последних стеков.


Сенькс, буду посмотреть.

Цитата
Внутри PIC18 та же эзернет-корка, что и ENC28J60, со всеми вытекающими.


Я имел виду обычный пик18 и ЕNC рядом, хотя можно конечно и их комбинацию в одном корпусе взять. Там как я понял TCP/IP стек и SNMP в исходниках выложены.

P.S. Хотелось бы конечно все это сделать. хотя бы из учебных целей, но боюсь что придется поставить готовый модуль WizNet, им как обычно нужно "вчера". sad.gif
Rst7
Цитата
Там как я понял TCP/IP стек и SNMP в исходниках выложены.


Вот не стоит именно микрочиповский стек брать в качестве примера и, тем более, основы. Ибо гуано индийское. Посмотрите, что-ли, на uIP/lwIP.
kolobok0
Цитата(Rst7 @ Mar 16 2009, 09:54) *
Вот не стоит именно микрочиповский стек брать в качестве примера и, тем более, основы. Ибо гуано индийское. Посмотрите, что-ли, на uIP/lwIP.



Хочется спросить (простите всё никак не загляну в Ваши исходники) - сборка на IP уровне решена у Вас или нет? В своё время делал на 51 серии стэк, при шаренье в инете убедился - народ просто на это кладёт. Что не есть гуд. В сетевом хозяйстве разные весчи бывают...

с уважением
(круглый)
Rst7
Цитата
сборка на IP уровне решена у Вас или нет?


А смысл? Актуально для тех, кто UDP-пакеты большие носит. А с TCP необходимо и достаточно просто установить опцию MSS при передаче SYN так, чтобы не приходили большие пакеты и вуаля.

Кроме того, есть маленькая тонкость с фрагментацией IP и Fast-Retransmit TCP. Дело в том, что если влетает большой фрагментированный на уровне IP сегмент без какого-либо пакета (потерялся), то нарушится нормальная работа быстрой перепосылки. Более того, она не сможет даже отработать. Будет курить до стандартного таймаута TCP, а потом опять пачкой влетит весь сегмент (вместо маленького кусочка). Спрашивается, что сэкономили? 0.1% полосы? А если потеря пакета - то имеем некислое дупло...

Да и где-ж его дефрагментировать-то, болезного? В килобайте ОЗУ?

Вообщем - данунах smile.gif
iosifk
Цитата(Allregia @ Mar 14 2009, 20:59) *
Подскажите пожалуйста решение.
...
т.е. это надо какое-о TCP/IP, отдавать надо по запросу буквально "5 байт", но как малой кровью это сделать ?

Посмотрите KSZ8851SNL... Со стороны процессора - SPI. А Ethernet 10/100...
Rst7
Цитата
Посмотрите KSZ8851SNL...


Мы топикстартера уже к Вам в лапы отправили smile.gif На предыдущей странице.
Kovrov
Такое решение:
WIZNET 5100 - все в 1 м флаконе
Подключена к меге как внешнее озу
Видит W5100 как родную память
Сверьх минимум затрат на программирование... все она делает
Стоит совсем недорого..

Из минусов: мне непонравилась низкая помехоустойчивость - но тут возможно я ошибаюсь, может дело и не в ней..
Паять руками довольно тяжело, - но я припаял..
__TIGER__
Цитата(zhevak @ Mar 14 2009, 23:20) *
Пару лет назад я игрался с ENC28J60. Денег было не достаточно и я искал интересные для клиентов темы. Так сказать,
пытался затеять очередной старт-ап. Проект надо было как-то назвать, и я дал ему имя -- Angie (Какая-то одноименная
песня мена тогда сподобила на это!). А через пару месяцев ко мне пришли совершенно другие заказы, и я забросил
Angie в таком недоделанном, полуфабрикатном состоянии. Вобщем-то на Angie были подняты не полные протоколы ARP,
ICMP, IP и UDP. Т.е. он умел только пинговаться, да пересылать туда-сюда пакет байтов, по моему не более 128 или 256.
Собственно, ресурсов Мега8 только-только для этого хватает.

Я тут прикрепил то, что было под руками. Остальное где-то лежит в архивах на компашках. Если кому интересно,
попробую найти. Печатная плата разведена в Layout-е, а софт написан в CodeVision 1.25.


Интересное решение. Хотелось бы повторить. Можно ли запросить исходники схемы и прошивки?
vvkka
незабуть потом сюда выложить, особенно прошивки
zhevak
Цитата(__TIGER__ @ Jun 30 2010, 15:50) *
Интересное решение. Хотелось бы повторить. Можно ли запросить исходники схемы и прошивки?

Отправил на Ваш ящик: 23*@mail.ru.
(Извините, что не сразу ответил. В последнее время я стал редко сюда заходить.)
vvkka
Цитата(zhevak @ Jul 6 2010, 00:44) *
Отправил на Ваш ящик: 23*@mail.ru.
(Извините, что не сразу ответил. В последнее время я стал редко сюда заходить.)


и мне вышли тоже пожалуста
vikonik
Цитата(zhevak @ Jul 6 2010, 00:44) *
Отправил на Ваш ящик: 23*@mail.ru.
(Извините, что не сразу ответил. В последнее время я стал редко сюда заходить.)


А можно и мне схему с прошивкой.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.