/* Las patitas del modulo:
Arduino solo aguanta formato FAT16 y FAT32
CD: Card Detect se conecta a tierra cuando no hay SD en el socket.
DO/MISO: SPI data output (MISO)
SCK: SPI CLOCK
DI/MOSI: SPI DATA INPUT
CS: Chip Select
DO/MOSI: PIN 23
DI/MISO: PIN 19
CLK: PIN 18
CS: PIN 5
SD.begin(cspin); //Inicia la libreria SD y la tarjeta. Con ello se inicia el uso del bus SPI ()
el pin SS del hardware debe mantenerse como una salida o las funciones de la libreria SD no funcionaran
cspin (opcional): El pin conectado a la linea de seleccion de la SD: pone en default al pin de harware SS del bus SPI.
1 si se conecto, 0 si no es asi.
SD.exists(filename); Prueba si un archivo o directorio existe en la tajeta SD.
filename: El nombre del archivo que se verifica si existe, puede incluir directorio (delimitado por slashes /)
SD.mkdir (filename); Crea un directorio en la SD. Esto tambien va a crear directorios intermedios que no existen.
SD.mkdir(a/b/c) va a crear a b y c.
SD.open (filepath, mode); Abre un archivo en la tarjeta SD. Si el archivo se abre para escritura será creado si es que no existe aun (pero el directorio que lo contiene ya debe existir)
modo: FILE_READ abre el archivo para lectrura, iniciando desde el inicio del archivo
FILE_WRITE abre el archivo para lectura y escritura, iniciando al final del archivo).
SD.remove(filename); Quita un archivo de la SD.
SD.rmdir(filename); Quita un directorio de la SD. El directorio debe estar vacio.
*/
#include <SD.h>
#include <SPI.h>
File archivo;
// --- Declaración variables ---
void setup()
{
Serial.begin(115200);
Serial.print("Detección de la SD...");
if (!SD.begin(5)) { //Se declara un if en el pin para detección del inicio de la SD, si se inicia manda un 1 pero al estar negado es 0 lo cual hace que no entre al if que entra a un while eterno.
Serial.println("No se pudo Iniciar la SD");
while (1);
}
Serial.println("Iniciación de tarjeta correcta.");
}
// Para leer el valor de un sensor.
int readSensor()
{
return 0;
}
void loop()
{
// Open file and write value
logFile = SD.open("datalog.txt", FILE_WRITE);
if (logFile) {
int value = readSensor();
logFile.print("Time(ms)=");
logFile.print(millis());
logFile.print(", value=");
logFile.println(value);
logFile.close();
}
else {
Serial.println("Error opening the file");
}
delay(500);
}