Prueba a ver...
#include <SD.h>
#include <SPI.h>
#include "DHT.h"
#define DHTPIN 2 // what pin we're connected to
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
File myFile;
void setup()
{
Serial.begin(9600);
dht.begin();
Serial.print("Iniciando SD ...");
if (!SD.begin(4)) {
Serial.println("No se pudo inicializar");
return;
}
Serial.println("inicializacion exitosa");
}
void loop()
{
float t = dht.readTemperature();
float h = dht.readHumidity();
char myFileName[] = "sensor.txt";
myFile = SD.open(myFileName, O_CREAT|O_APPEND); //Creamos el archivo o abrimos para agregar
if (myFile) {
Serial.print("Escribiendo SD: ");
myFile.print(" temperatura=");
myFile.print(t);
myFile.print("| humedad=");
myFile.println(h);
myFile.close(); //cerramos el archivo
Serial.print("temperatura=");
Serial.print(t);
Serial.print(", humedad=");
Serial.println(h);
}
delay(5000);
}