Download the following Library to work with ENC28j60 ethercard
Circuit
Ethernet Module Arduino
SS 8
MOSI (SI) 11
MISO (SO) 12
SCK 13
GND GND
VCC 5v
Web Client Code
// Demo using DHCP and DNS to perform a web client request. // 2011-06-08 <jc@wippler.nl> http://opensource.org/licenses/mit-license.php #include <EtherCard.h> // ethernet interface mac address, must be unique on the LAN static byte mymac[] = { 0x74,0x69,0x69,0x2D,0x30,0x31 }; byte Ethernet::buffer[1000]; static uint32_t timer; const char website[] PROGMEM = "google.com"; // called when the client request is complete static void my_callback (byte status, word off, word len) { Serial.println("Reply from Server"); Serial.println("================="); Ethernet::buffer[off+900] = 0; Serial.print((const char*) Ethernet::buffer + off); Serial.println("..."); } void setup () { Serial.begin(57600); Serial.println(F("\n[webClient]")); if (ether.begin(sizeof Ethernet::buffer, mymac) == 0) Serial.println(F("Failed to access Ethernet controller")); if (!ether.dhcpSetup()) Serial.println(F("DHCP failed")); ether.printIp("IP: ", ether.myip); ether.printIp("GW: ", ether.gwip); ether.printIp("DNS: ", ether.dnsip); if (!ether.dnsLookup(website)) Serial.println("DNS failed"); ether.printIp("SRV: ", ether.hisip); } void loop () { ether.packetLoop(ether.packetReceive()); if (millis() > timer) { timer = millis() + 5000; Serial.println(); Serial.println("<<< REQ "); ether.browseUrl(PSTR("/"), "", website, my_callback); } }
Output