Mit dem ENC28J60 Breakout steht ein preisgünstiges Ethernet Modul zu Verfügung – gibt es eine simple Lösung dieses Modul mit einem Arduino zu verbinden? Ja – hier unser Low Budget – Quik and Dirty Arduino Ethernet:
Die Eingänge des ENC28J60 sind laut Datenblatt 5V tolerant – die Eingänge des Arduino/ATMEL328 sind auch relativ tolerant bezüglich der Pegel (ca. 2,6V H, ca 2,1V L bei 5V Vcc) – es spricht also nichts dagegen beide auf direktem Weg zu verbinden.
PIN Belegung:
- INT Digital 2
- SO Digital 12
- SCK Digital 13
- RESET RESET
- GND GND
- Clockout frei
- WOL frei
- SI Digital 11
- CS Digital 10
- VCC 3,3V (per 2x 1N4007 an 5V)
die 3,3V Versorgungsspannung für des Ethernet Modul wird durch zwei in Reihe geschaltete Dioden (1N4007 in diesem Fall) “erzeugt” – das ist echt quikanddirty ;-)
Verkabelung zum Test mit Jumper und Patchkabel
schnell noch die ethershield library installiert – das Webserver Example in die Arduino IDE geladen – richtige IP Adresse eingegeben – aber – Fehler beim kompilieren:
/home/michi/arduino-0021/libraries/etherShield/etherShield.cpp:8:25: Fehler: EtherShield.h: Datei oder Verzeichnis nicht gefunden
/home/michi/arduino-0021/libraries/etherShield/etherShield.cpp:11: Fehler: »EtherShield« has not been declared
/home/michi/arduino-0021/libraries/etherShield/etherShield.cpp:11: Fehler: ISO-C++ verbietet Deklaration von »EtherShield« ohne Typ
/home/michi/arduino-0021/libraries/etherShield/etherShield.cpp:14: Fehler: »EtherShield« is not a class or namespace
/home/michi/arduino-0021/libraries/etherShield/etherShield.cpp:18: Fehler: »EtherShield« is not a class or namespace
Hmm – scheinbar hat es sich immer noch nicht rumgesprochen dass richtige Betriebssysteme “case sensitive” sind es also nicht egal ist ob man Files gross oder klein schreibt ;-)
auf einem Windows System würde es wahrscheinlich laufen – doch leider sitze ich ich an einem Ubuntu Linux System…
also entweder man nennt das File etherShield.h in EtherShield.h um und ändert auch im Sketch #include “etherShield.h” in #include “EtherShield.h”
oder man editiert Ethershield.cpp und passt dort #include “etherShield.h” an…
…na ja – jedenfalls läuft es nun:
Habe ich eben grad noch gefunden: Updated Arduino ENC28J60 Ethernet library available http://blog.thiseldo.co.uk/?p=504
Diese Library wurde erweitert (DNS Support!!) und kompiliert auch unter Linux!
ToDo:
WOL – Wake on LAN – was könnte man damit alles anstellen?
Links Datenblätter etc:
Ethernet Breakout mit ENC28J60
Updated Arduino ENC28J60 Ethernet library – mit DNS Support!!


Ich habe D2/INT nicht verkabelt. Wenn man nur das Ethernet-Modul mit Spannung versorgt leuchtete bei mir mit verkabeltem INT die Power-LED.
Mit dem WOL könnte man einen Remote-Reset des Controllers umsetzen.
Ist das eigentlich normal, dass das Ethernet-Modul 150mA zieht?
Hallo,
ich kann nirgends fonden, wo ich mit etherCard die verwendeten Pins konfigurieren kann…..
Habe nur gelesen, dass CS standardmässich auf 8 liegt.
Kann mir jemand helfen?