Ethernet shield DHCP/Static IP error

Do you have a microSD card in the slot?

I use this to test the SPI connection. If the serial monitor shows 192.168.2.2, then it is ok. If it shows anything else, like 0.0.0.0, then it failed.

#include <SPI.h>
#include <Ethernet.h>

byte mac[] = {  0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192,168,2,2);

void setup() {
  Serial.begin(9600);

  // disable SD card if one in the slot
  pinMode(4,OUTPUT);
  digitalWrite(4,HIGH);

  Serial.println("Starting w5100");
  Ethernet.begin(mac,ip);

  Serial.println(Ethernet.localIP());
}

void loop() {
}