Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

setevoj_modul_dlja_arduino_uno_mega_w5100 [2015/09/07 18:19] (текущий)
ansealk создано
Строка 1: Строка 1:
 +====== Сетевой модуль для Arduino Uno/Mega W5100 ======
  
 +**//​!!!Здесь позднее будет статья по работе с модулем . Пока есть только общие сведения!!!//​**
 +
 +Предназначен для подключения к IP-сети Arduino Nano.
 +
 +===== Используемые пины =====
 +
 +^Пин^Назначение^Комментрарий^
 +|VCC|3V3| ​ |
 +|GND|GND| ​ |
 +|CS(SS)|10(8)| На шилде для Nano используется 10 пин, в остальных случаях(по-умолчанию) - 8 |
 +|SI(MOSI)|11| ​ |
 +|SO(MISO)|12| ​ |
 +|SCK|13| ​ |
 +
 +===== Используемые библиотеки и проблемы при сборке =====
 +
 +Есть три варианта библиотек для работы с этим модулем. По результатам:​
 +  * для обучения идеален {{:​arduino_and_raspberrypi:​enc28j60:​ether_28j60.zip|}};​
 +  * для серьезного кодинга - {{:​arduino_and_raspberrypi:​enc28j60:​ethercard-master.zip|ethercard}};​
 +  * для серьезного использования на системах с большой памятью - {{:​arduino_and_raspberrypi:​enc28j60:​arduino_uip-master.zip|uip-ethernet}}.
 +
 +==== ether_28j60 и EtherShield ====
 +  * Иногда при первом использовании библиотек {{:​arduino_and_raspberrypi:​enc28j60:​ether_28j60.zip|ether_28j60}} и {{:​arduino_and_raspberrypi:​enc28j60:​ethershield.zip|EtherShield}} может возникнуть ошибка:​ <​code>​
 +  error: ‘prog_char’ does not name a type
 +</​code>​Для ее исправления необходимо во всех файлах библиотек {{:​arduino_and_raspberrypi:​enc28j60:​ether_28j60.zip|ether_28j60}} и {{:​arduino_and_raspberrypi:​enc28j60:​ethershield.zip|EtherShield}} заменить все строки **prog_char** и **char PROGMEM** на **char**.
 +  * Также заметил,​ что при работе с этой библиотекой более часа-двух модуль может зависнуть. **Дополнено:​ виснет как миленькая. Не используем.**
 +
 +  ***+** самая компактная библиотека \\
 +  ***+** самый простой в написании код
 +  ***-** Годится только для вывода простой веб-страницы. \\
 +  ***-** Довольно тормозная
 +  ***-** Неоднократно было замечено зависание после 1-2 часов работы
 +
 +
 +
 +==== EtherCard ====
 +Если же мы используем библиотеку {{:​arduino_and_raspberrypi:​enc28j60:​ethercard-master.zip|EtherCard}},​ то стоит обратить внимание на строку инициализации. В примерах она выглядит как ​
 +<code cpp>
 +ether.begin(sizeof Ethernet::​buffer,​ mymac)
 +</​code>​
 +Эту строку надо поменять следующим образом:​
 +<code cpp>
 +ether.begin(sizeof Ethernet::​buffer,​ mymac,10)
 +</​code>​
 +, где 10 - это пин Arduino, покдлючаемый к CS модуля. По-умолчанию,​ если он не указан,​ пин подклчается к 8 пину Adruino. В нашем случае,​ при использовании Nano пин должен быть 10-м.
 +
 +По стабильности - зависаний не наблюдал,​ вроде библиотека годная.
 +
 +Недостаток - 
 +
 +  ***+** Стабильность работы
 +  ***+** Высокая скорость обработки данных
 +  ***+** Большое количество возможностей
 +  ***+** Компактный код, но больше чем у {{:​arduino_and_raspberrypi:​enc28j60:​ether_28j60.zip|}}
 +  ***-** Нет явной функции аналогичной print для вывода на веб-страницу. Страница формируется в буфере и выводится целиком.
 +
 +==== UIPEthernet ====
 +
 +С этой библиотекой вроде бы проблем не наблюдается. Более того, с ней работают стандартные примеры из комплекта Arduino IDE. В них достаточно просто заменить строку
 +<code cpp>#​include <​Ethernet.h></​code>​ на <code cpp>#​include <​UIPEthernet.h></​code>​.
 +
 +  ***+** Самый большой набор функций из всех рассмотренных выше
 +  ***+** Самое удобное использование,​ подходят стандартные примеры,​ достаточно просто заменить подключаемую библиотеку
 +  ***+** Быстрое выполнение
 +  ***-** Очень громоздкий код после сборки. В связи с этим для серьезного использования годится только для Arduino Mega или аналогичных плат с большой памятью.
 +
 +
 +
 +===== Ссылки =====
 +
 +  * [[http://​www.tweaking4all.com/​hardware/​arduino/​arduino-enc28j60-ethernet/​|Страница разработчика модуля с примерами исползования]]
 +  * [[http://​ru.aliexpress.com/​item/​Mini-ENC28J60-Webserver-module-Ethernet-Shield-board-for-for-Ar-Nano-v3-0/​1859123003.html|Модуль на Aliexpress]]
 +  * Библиотеки {{:​arduino_and_raspberrypi:​enc28j60:​ether_28j60.zip|ether_28j60}} и {{:​arduino_and_raspberrypi:​enc28j60:​ethershield.zip|EtherShield}}
 +  * Библиотека {{:​arduino_and_raspberrypi:​enc28j60:​ethercard-master.zip|EtherCard}}
 +  * Библиотека {{:​arduino_and_raspberrypi:​enc28j60:​arduino_uip-master.zip|UIPEthernet}}
setevoj_modul_dlja_arduino_uno_mega_w5100.txt · Последние изменения: 2015/09/07 18:19 — ansealk
GNU Free Documentation License 1.3
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 Яндекс.Метрика