Страница 1 из 1
Устройства на Ethernet. Софт для управления с компьютера?
Добавлено: Сб дек 29, 2012 04:32:18
zigler
Как создать приложение для работы с устройствами в сети Ethernet?
Например, нужно подключть Atmega16 к компьютеру по Ethernet. Для связи преобразователь ENC28J60 (со сторомы МК SPI).
Десктопная программа нужна несложная, просто загужающая по Ethernet в МК значения переменных.
Вопрос в следующем: в чем вообще создаются такие приложения? Языки C++ или C#. Ну например Microsoft Visual Studio, или еще что-то.
Буду благодарен за ссылки на статьи по сабжу.
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 06:05:35
igor-x
для Ардуино есть разаработанные модули и библиотеки для работы с Eth
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 09:03:34
uk8amk
zigler писал(а):: в чем вообще создаются такие приложения? Языки C++ или C#. Ну например Microsoft Visual Studio, или еще что-то.
Delphi, C#, Visual Basic, C++(Builder, Visual Studio, QT или др.).
В общем случае подключается к программе готовый компонент типа Winsock и через него работаете с сетью. Поэтому выбор языка здесь обычно дело десятое, но лично я бы рекомендовал C++.
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 17:33:54
zigler
uk8amk писал(а):Delphi, C#, Visual Basic, C++(Builder, Visual Studio, QT или др.).
В общем случае подключается к программе готовый компонент типа Winsock и через него работаете с сетью. Поэтому выбор языка здесь обычно дело десятое, но лично я бы рекомендовал C++.
Хорошо, возьмем к примеру C++.
Нужно создать графический интерфейс с полями ввода и кнопками (ну это дело двух минут).
При нажатии на кнопочку содержимое полей отправлять на выбранный ip по выбранному порту.
Например, MS Visual Studio. Конечно, все должно реализоваться библиотеками и функциями для работы с сетями.
Поэтому просто нужен примерчик (компонент типа Winsock).
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 19:25:08
urry

Ну а теперь, Василий Иванович, попа..
Для обеспечения вязки сокетов их нужно минимум 2 - и, хм, по микрочиповскому фреймворку - там около 50 килобайт памяти уходит легко.
Ну, на меге 16 это сделать - как бы ... ну, теоретически можно... Если юзать только юдп протокол...Не трогая сокеты...
Но...
Удачи типа

Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 19:55:05
Мурик
zigler писал(а):Вопрос в следующем: в чем вообще создаются такие приложения?
Можно например на PureBaic написать такую прогу.
Работа с сетью вообще не сложная.
Вот к примеру подключение к IP 192.168.1.10 порт 1234, TCP-протокол и передача строки текста.
Код: Выделить всё
InitNetwork()
Connect = OpenNetworkConnection("192.168.1.10", 1234, #PB_Network_TCP)
If Connect
SendNetworkString(Connect, "Этот текст будет отправлен серверу")
CloseNetworkConnection(Connect)
Else
MessageRequester("", "Инет-адрес не доступен!")
EndIf
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 19:57:50
igor-x
zigler писал(а):Нужно создать графический интерфейс
да все реально.
на стороне МК(девайса) создается сервис, например http, обмен с девайсом организуется как с WEB сервером, со стороны клиента можно даже программ не делать - все управляется из Иксплерера, если лень свое приложение написать .
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 20:39:08
Satyr
Классический вопрос - тут атмега16 самоцель или просто желание затрахаться ?
Вот дейвас в том числе и управляемый (если перемычку накинуть -)) ) через езернет
http://satyr666.dyndns.org:20000/
схему, исходники и т.п. выкладывал тут на сайте как пример.
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 21:49:02
zigler
Satyr писал(а):Классический вопрос - тут атмега16 самоцель или просто желание затрахаться ?
Вот дейвас в том числе и управляемый (если перемычку накинуть -)) ) через езернет
http://satyr666.dyndns.org:20000/
схему, исходники и т.п. выкладывал тут на сайте как пример.
Да не вопрос, можно Atmega128 взять или что там пошустрее есть. 16-ю просто есть возможность мучать уже сейчас

Прошу прощения, о lwIP первый раз слышу.
Здесь что-то вроде запуска на компьютере веб-сервера, и обращение устройства-клиента по Ethernet как к веб-сервису на сервере?
Можно подробнее насчет выкладывания на сайте?
urry писал(а): Для обеспечения вязки сокетов их нужно минимум 2 - и, хм, по микрочиповскому фреймворку - там около 50 килобайт памяти уходит легко.
Ну, на меге 16 это сделать - как бы ... ну, теоретически можно... Если юзать только юдп протокол...Не трогая сокеты...
Да не вопрос, Atmega128 подойдет? Или что лучше взять?
Мурик писал(а):Можно например на PureBaic написать такую прогу.
Работа с сетью вообще не сложная.
Вот к примеру подключение к IP 192.168.1.10 порт 1234, TCP-протокол и передача строки текста.
Спасибо за дополнительную возможность (на Basic), и за пример.
Но стоит требование на С++, в крайнем случае C#.
igor-x писал(а):zigler писал(а):Нужно создать графический интерфейс
да все реально.
на стороне МК(девайса) создается сервис, например http, обмен с девайсом организуется как с WEB сервером, со стороны клиента можно даже программ не делать - все управляется из Иксплерера, если лень свое приложение написать .
Вооот! Это уже теплее. С вебсервисами работать приходилось, и на C++, и на C#. Насчет работы через браузер, понял о чем вы, представляю, на первое время годится.
Можете подкинуть примерчики библиотек, классов или методов для работы? Буду очень благодарен!
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 22:12:48
Satyr
zigler писал(а):Satyr писал(а):Классический вопрос - тут атмега16 самоцель или просто желание затрахаться ?
Вот дейвас в том числе и управляемый (если перемычку накинуть -)) ) через езернет
http://satyr666.dyndns.org:20000/
схему, исходники и т.п. выкладывал тут на сайте как пример.
Да не вопрос, можно Atmega128 взять или что там пошустрее есть. 16-ю просто есть возможность мучать уже сейчас
атмега что 16, что 128 - вобще то одно и тоже, только флеша больше. Надо вобще забыть такое слово, как атмега.
Прошу прощения, о lwIP первый раз слышу.
Лучший IP стек для МК
Здесь тоже что-то вреде запуска на компьютере веб-сервера, и обращение устройства-клиента по Ethernet как к веб-сервису на сервере?
Нет никакого сервиса и компьютера.
Ты напрямую с инета с голым МК на крошечной платке, что у меня под столом висит, связываешься.
Можно подробнее насчет выкладывания на сайте?
схема, исходники
http://radiokot.ru/forum/download/file.php?id=107426
вот так оно выглядит
http://radiokot.ru/forum/download/file.php?id=74765
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Сб дек 29, 2012 22:56:38
Tolmi
Ну, можно и на атмеге. Я делал. Но RAW ethernet socket'ы. На приёмной стороне, естественно, уже никакая винда не катит ( впрочем, это не совсем правда, там просто потрахаться нужно гораздо больше)
Линуксовое консольное приложение принимает трафик и складывает его на диск. У меня до 40 Мбит получалось, равномерно и без пропусков. Дальше - надо или буферизовать где-то, или менять всю архитектуру. В любом случае мне хватало, в отличие от USB CDC.
Но если ТС нужны примеры на Winsock, и он не знает, я предполагаю, что они есть, просто он не знает, где их у него на компе вагон и маленькая тележка, то этот путь для него возможно окажется неподъемным.
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Вс дек 30, 2012 01:14:53
urry
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Вс дек 30, 2012 03:11:36
zigler
Satyr писал(а):
атмега что 16, что 128 - вобще то одно и тоже, только флеша больше. Надо вобще забыть такое слово, как атмега.
Ну не надо так горячиться, а вдруг еще пригодится.
lwIP - лучший IP стек для МК
Да мне без разницы, можно например, uIP-0.9 использовать, хорошо все расписано
http://www.gaisler.com/doc/net/uip-0.9/ ... /main.html
Нет никакого сервиса и компьютера.
Ты напрямую с инета с голым МК на крошечной платке, что у меня под столом висит, связываешься.
Это все чудесно и прекрасно. Но мне нужно, чтобы через Ethernet МК Atmega получил свои несчастные биты с компьютера. Всё.
Насчет Схемы - это да, красиво вышло =))
Tolmi писал(а):Ну, можно и на атмеге. Я делал. Но RAW ethernet socket'ы. На приёмной стороне, естественно, уже никакая винда не катит ( впрочем, это не совсем правда, там просто по*ться нужно гораздо больше)
Линуксовое консольное приложение принимает трафик и складывает его на диск. У меня до 40 Мбит получалось, равномерно и без пропусков. Дальше - надо или буферизовать где-то, или менять всю архитектуру. В любом случае мне хватало, в отличие от USB CDC.
Но если ТС нужны примеры на Winsock, и он не знает, я предполагаю, что они есть, просто он не знает, где их у него на компе вагон и маленькая тележка, то этот путь для него возможно окажется неподъемным.
Как человеку, реализовавшему на атмеге Ethernet: как вам ATmega16 + ENC28 + uIP-0.9 ? работать будет? Или вместо ENC лучше RTL8019AS ?
PIC конечно хорошо, но мне бы пока с AVR хотя бы разобраться до конца...
Насчет атмег что-то подскажите?
ОГО! Вот это здесь крутотень несусветная!!!!
http://www.pocketmagic.net/2012/07/atme ... N-OwHoS2ho
Всё, беру на Ebay "ENC28J60 Ethernet LAN Module" за 4 бакса, и ничего паять даже не надо =))))))
Всем спасибо, все свободны
До новых встреч

Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Вс дек 30, 2012 08:37:14
Satyr
uIP, очень мягко говоря, не дотягивает до lwIP.
zigler писал(а):
Как человеку, реализовавшему на атмеге Ethernet: как вам ATmega16 + ENC28 + uIP-0.9 ? работать будет? Или вместо ENC лучше RTL8019AS ?
Из какого музея его воровать ?
По плате там меж чипами соединений 30 будет, оно надо ?
Если уж к пещерному барахлу инет прикручивать, советую продукцию визнета посмотреть. на ебеях тоже за дешево продаются. Там не микросхеме не просто езернет, там IP стек уже внутри.
http://www.wiznet.co.kr/Sub_Modules/en/ ... 6&pid=1011
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Ср янв 09, 2013 15:33:02
Alexeyslav
Что-то вы из мухи слона раздули. Для передачи маленькой порции данных не нужны никакие универсальные стеки, надо реализовать лишь один выбранный - например UDP. Чтобы контроллер понял что это "его" данные надо лишь просматривать заголовки приходящих пакетов на наличие нужных констант. Фильтр по MAC-адресу зашит аппаратно, поэтому тонны пакетов программе обрабатывать не прийдется. Дальше надо убедится что пришел UDP IP-пакет, сравнить IP-адрес с собственным и только тогда начнется самое интересное - проверяем порт(если нужно) и считываем данные переданные в пакете. При необходимости сохранить поле адреса отправителя и вернуть назад ответ "данные принял".
Для этого не нужны всякого рода библиотеки занимающие кучу места в прошивке, они реализуют слишком много ненужного.
Re: Устройства на Ethernet. Софт для управления с компьютера
Добавлено: Ср янв 09, 2013 15:47:17
ploop