Hola badel.
Se me ocurre que puede ser que no te quede memoria RAM, y se te queda bloqueado. Si es un arduino uno puede ser eso.
mira la memoria SRAM que te queda con esta función que la colocarás antes del inicio del setup junto con tu código
..........
int freeRam () {
extern int __heap_start, *__brkval;
int v;
return (int) &v - (__brkval == 0 ? (int) &__heap_start : (int) __brkval);
}
Void setup(){
............
llama a la función antes de iniciar el loop para que te muestre la memoria SRAM libre en bytes
................
Serial,print(F("Memoria libre en SRAM ---> "));Serial.print(freeRam ());Serial.println(F(" bytes"));
} //fin del setup
void loop(){
...........................
Arduino uno ------>2000 bytes SRAM
Arduino mega----->8000 bytes SRAM
Si fuese eso el problema, sustituye todos los Serial.print("TEXTO") que tienes por Serial.print(F("TEXTO")) y no consumirás tanta memoria.
Hazlo también en myFile.println(F("TEXTO"))
Espero que te sea de ayuda.
Saludos.