Probleam con pin 13 y lectura de la SD

Hola, me acaba de llegar la shield de Ethernet. Mi intención es usar, de momento, la SD que viene.
He probado el codigo para leer un archivo y funciona a la perfección. No obstante tengo problemas con el pin13. Pongo un led y quiero que este iniciado en HIGH al principio, no obstante, con el código SD.begin(4) no se que pasa que no se enciende el led. Da igual si pongo la instrucción digitalWrite(13,1) delante o detrás en setup() o en loop(). No se enciende. Pero si quito SD.begin(4) el pin13 funciona como le indico perfectamente.

No se que problema puede haber. Alguna incompatibilidad? Ayuda por favor

Gracias

Aquí el codigo:

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

void setup() {
pinMode(13,OUTPUT);
digitalWrite(13,1);
Serial.begin(9600);
while (!Serial);
Serial.print(“Probando SD card…”);
if (!SD.begin(4)) {
Serial.println(“No hay tarjeta”);
return; // NO sigas
}
Serial.println(“Sd encontrada.”);
File dataFile = SD.open(“LED1.txt”);
if (dataFile) // Si ha podido abrir el fichero
{ while (dataFile.available()) // Mientras no llegues al final
Serial.write(dataFile.read()); // Lee el fichero y envialo al serie
dataFile.close(); // Cierra el fichero al acabar
}
else{ // SI no puede abrir el fichero
Serial.println(“Error, no puedo usar LED1.txt”);
}

}

void loop() {

}

Si te lees el encabezamiento de los ejemplos de la SD verás que ese pin es usado por la propia tarjeta.

Ok, vale. Todavía estoy un poco verde. Conocéis donde puedo encontrar una guía con todos los códigos para SD, es decir, no tutoriales en concreto para una función sino todo los códigos y lo que hace cada uno con respecto a las tarjetas sd

Amigo, como dijo Jopapa. La SD se comunica por SPI, el SPI es una interfaz serial sincrónica que usa pines 11,12,13 y 10 en la mayoria de los casos. Si usas SD, no uses 11 a 13 y si puedes cambiar 10 por otro pin que generalmente es el 4.