Arduino Mega con MMA7361 Y SD SHIELD

Hola amigos!

Venía de nuevo a pedir ayuda con este proyecto,
tengo un MMA7361 CON SD SHIELD
estoy usando la librería del acelelerometro y todo bien, pero necesito
implementar el guardado de los datos de los tres ejes del acelerometro
en la sd,
hace poco pedi ayuda a un miembro que me ha ayudado muchísimo,
pero por más que busque siempre sale algun otro error así de la nada

y TENGO este error, como si no leyera la sd (es como si no estuviese conectada la SD)
Así que si alguno me pudiese ayudar, agradecería muchísimo ya que es un proyecto muy inportante en donde estudio.

el codigo es el siguiente

#include <SD.h>

#include <AcceleroMMA7361.h>

AcceleroMMA7361 accelero;
File Archivo; // Variable para luego manejar el fichero txt
int x;
int y;
int z;

void setup()
{
  Serial.begin(9600);
  accelero.begin(13, 12, 11, 10, A0, A1, A2);
  accelero.setARefVoltage(3.3);                   //sets the AREF voltage to 3.3V
  accelero.setSensitivity(LOW);                   //sets the sensitivity to +/-6G
  accelero.calibrate();
}
void loop()
{
  x = accelero.getXAccel();
  y = accelero.getYAccel();
  z = accelero.getZAccel();
  Serial.print("\nx: ");
  Serial.print(x);
  Serial.print(" \ty: ");
  Serial.print(y);
  Serial.print(" \tz: ");
  Serial.print(z);
  Serial.print("\tG*10^-2");
  delay(333);  //make it readable
  Escribir_SD();
}
void Escribir_SD() {
  File Archivo;
  //Se muestra por el monitor si la comunicación se ha establecido correctamente
  //o ha habido algún tipo de error.
  if (!SD.begin(10)) {

    Serial.println("Se ha producido un fallo al iniciar la comunicación");
    return;
  }
  Serial.println("Se ha iniciado la comunicación correctamente");

  /* ESCRIBIENDO DATOS EN LA MEMORIA SD DE ARDUINO */

  //Se abre el documento sobre el que se va a leer y escribir.
  Archivo = SD.open("datalog.txt", FILE_WRITE);

  //Se comprueba que el archivo se ha abierto correctamente y se procede a
  //escribir en él.
  if (Archivo) {

    //Se escribe información en el documento de texto datos.txt angulo x.
    Archivo.print(x );// Escribe linea con salto de fila
    //Se escribe información en el documento de texto datos.txt angulo y.
    Archivo.print(y );
    Archivo.println(z );

    // Si necesito escribir mas cosas añado filas con Archivo.println("Lo que quiera poner")

    //Se cierra el archivo para almacenar los datos.
    Archivo.close();

    //Se muestra por el monitor que los datos se han almacenado correctamente.
    Serial.println("Todos los datos fueron almacenados");
  }}

Conexionado:

y Así es como tengo mi montaje

Primero: ¿por qué pretendes usar el pin CS para otros propósitos? Déjalo libre si crees que le corresponde a la interfaz de la SD.

Segundo: al ser una shield, podría ser que el CS venga conectado al pin 10 o 4.

Tercero: que 1152 bytes sean apenas el 14% de la memoria RAM, evidencia el uso de un Arduino Mega. Espero que esa shield también funcione con la cabecera ICSP; o de lo contrario no es compatible.

Cuarto: al ser una shield diseñada para para Arduino Uno, muy probablemente haga que la cabecera ICSP se interconecte con los pines 10 al 13. Si también los usas para otros propósitos, puede que eso también sea la causa (puedes corregirme si el MMA7361 se controla por SPI).

Bueno, puedes mirar este enlace.
Shield Ethernet y SD card | Tienda y Tutoriales Arduino.
Si leiste mi post anterior olvidalo meto la pata asta el fondo, lo he borrado para no crear confusión.

Igual entro sin haberme percatado de algo, pero a primera vista creo que lo que ocurre sencillamente es que has conectado el acelerómetro en los pines 10, 11, 12 y 13, que son los que usa precisamente el SPI, y por tanto el shield SD.