Vielen Dank schon mal für Eure Antworten.
Habe leider den falschen Code ohne SD hochgeladen.
Ich habe ein bisschen weiter gebastelt und mittlerweile scheint es, aus welchen Gründen auch immer, zu funktionieren 
Leider schreibt er mir die Werte nur auf 2 Kommastellen in die Datei, weiss jemand wo ich das ändern kann ?
[*code]
#include<Wire.h>
const int MPU_addr1=0x68;
double AcX1,AcY1,AcZ1,Tmp1,GyX1,GyY1,GyZ1;
const int MPU_addr2=0x69;
double AcX2,AcY2,AcZ2,Tmp2,GyX2,GyY2,GyZ2;
uint32_t timer;
double compAngleX1, compAngleY1;
double compAngleX2, compAngleY2;
#define degconvert 57.2957786
const int m_time = 1; //Meassuretime in Seconds
int wind_ct = 0;
float wind = 0.0;
unsigned long time = 0;
bool MessungGestarted = false;
#include <SD.h> //SD Card Bibliothek
#include <SPI.h> //Bibliothek zum zugriff auf die SPI Schnittstelle des Arduinos
File outFile; // Die Datei welche geschrieben bzw. gelesen werden soll
int pinCS = 53; // Chip Select Pin 10 auf dem Arduino Uno
String filename = "Wind.csv"; //Dateiname der zu lesenden bzw. schreibenden Datei
int val;
int dat;
int index = 0;
void setup(){
// Set up First Sensor
Serial.begin(9600);
time = millis();
Serial.println("CLEARDATA");
Serial.println("LABEL,time,compAngleX1,compAngleY1, km/h - ");
delay(100);
// Set up Second Sensor:
Wire.begin();
#if ARDUINO >= 157
Wire.setClock(400000UL);
#else
TWBR = ((F_CPU / 400000UL) - 16) / 2;
#endif
Wire.beginTransmission(MPU_addr1);
Wire.write(0x6B);
Wire.write(0);
Wire.endTransmission(true);
Wire.beginTransmission(MPU_addr2);
Wire.write(0x6B);
Wire.write(0);
Wire.endTransmission(true);
Wire.beginTransmission(MPU_addr1);
Wire.endTransmission(false);
Wire.requestFrom(MPU_addr1,14,true);
AcX1=Wire.read()<<8|Wire.read();
AcY1=Wire.read()<<8|Wire.read();
AcZ1=Wire.read()<<8|Wire.read();
Tmp1=Wire.read()<<8|Wire.read();
GyX1=Wire.read()<<8|Wire.read();
GyY1=Wire.read()<<8|Wire.read();
GyZ1=Wire.read()<<8|Wire.read();
double roll1 = atan2(AcY1, AcZ1)*degconvert;
double pitch1 = atan2(-AcX1, AcZ1)*degconvert;
//3) set the starting angle to this pitch and roll
double gyroXangle1 = roll1;
double gyroYangle1 = pitch1;
double compAngleX1 = roll1;
double compAngleY1 = pitch1;
Wire.beginTransmission(MPU_addr2);
Wire.write(0x3B);
Wire.endTransmission(false);
Wire.requestFrom(MPU_addr2,14,true);
AcX2=Wire.read()<<8|Wire.read();
AcY2=Wire.read()<<8|Wire.read();
AcZ2=Wire.read()<<8|Wire.read();
Tmp2=Wire.read()<<8|Wire.read();
GyX2=Wire.read()<<8|Wire.read();
GyY2=Wire.read()<<8|Wire.read();
GyZ2=Wire.read()<<8|Wire.read();
double roll2 = atan2(AcY2, AcZ2)*degconvert;
double pitch2 = atan2(-AcX2, AcZ2)*degconvert;
double gyroXangle2 = roll2;
double gyroYangle2 = pitch2;
double compAngleX2 = roll2;
double compAngleY2 = pitch2;
// Initiate Timer1 at 1 HZ
TCCR1A = 0;
TCCR1B = 0;
TCNT1 = 0;
OCR1A = 15624;
// CTC mode
TCCR1B |= (1 << WGM12);
// 1024 prescaler
TCCR1B |= (1 << CS12) | (1 << CS10);
// Enable Timer Compare interrupt
TIMSK1 |= (1 << OCIE1A);
// Allow Interrupts
sei();
timer = micros();
pinMode(pinCS, OUTPUT);
if (SD.begin()){ //Wenn die SD Card initialisiert werden konnte dann....
Serial.println("SD Karte konnte erfolgreich geladen werden!"); //Ausgabe des Textes auf der Seriellen Schnittstelle
} else {
//Dieser Block wird ausgeführt wenn die SD Card nicht initialisiert werden konnte.
Serial.println("SD Karte konnte NICHT erfolgreich geladen werden!"); //Ausgabe des Textes auf der Seriellen Schnittstelle
Serial.println("---Programm wird beendet!"); //Ausgabe des Textes auf der Seriellen Schnittstelle
return; //vorzeitiges beenden der setup Methode
}
}
void writeContent(int wind)
{
outFile = SD.open(filename, FILE_WRITE); //Öffnet bzw. erzeugt die Datei im Modus schreibend
if (outFile) { //Wenn die Datei existiert dann...
outFile.print(++index);
outFile.print(",");
outFile.print(compAngleX1);
outFile.print(",");
outFile.print(compAngleY1);
outFile.print(",");
outFile.print(wind);
outFile.println("");
outFile.close(); //Schließen der Datei (Dieses ist wichtig da sonst beim beenden des Sketches dies Daten verloren gehen können.)
} else {
//Dieser Block wird ausgeführt wenn die Datei nicht erzeugt werden konnte.
Serial.println("Fehler beim öffnen der Datei test.txt"); //Ausgabe des Textes auf der Seriellen Schnittstelle
}
}
int readwind(){
val = analogRead(wind_ct); // Den analogen Wert des Temperatursensors lesen.
return dat; // Temperatur zurück gegeben
}
void loop()
{
int wind = readwind();
writeContent(wind);
delay(1000);
Wire.beginTransmission(MPU_addr1);
Wire.write(0x3B);
Wire.endTransmission(false);
Wire.requestFrom(MPU_addr1,14,true);
AcX1=Wire.read()<<8|Wire.read();
AcY1=Wire.read()<<8|Wire.read();
AcZ1=Wire.read()<<8|Wire.read();
Tmp1=Wire.read()<<8|Wire.read();
GyX1=Wire.read()<<8|Wire.read();
GyY1=Wire.read()<<8|Wire.read();
GyZ1=Wire.read()<<8|Wire.read();
double dt1 = (double)(micros() - timer) / 1000000;
timer = micros();
double roll1 = atan2(AcY1, AcZ1)*degconvert;
double pitch1 = atan2(-AcX1, AcZ1)*degconvert;
double gyroXrate1 = GyX1/131.0;
double gyroYrate1 = GyY1/131.0;
compAngleX1 = 0.99 * (compAngleX1 + gyroXrate1 * dt1) + 0.01 * roll1;
compAngleY1 = 0.99 * (compAngleY1 + gyroYrate1 * dt1) + 0.01 * pitch1;
Wire.beginTransmission(MPU_addr2);
Wire.write(0x3B);
Wire.endTransmission(false);
Wire.requestFrom(MPU_addr2,14,true);
AcX2=Wire.read()<<8|Wire.read();
AcY2=Wire.read()<<8|Wire.read();
AcZ2=Wire.read()<<8|Wire.read();
Tmp2=Wire.read()<<8|Wire.read();
GyX2=Wire.read()<<8|Wire.read();
GyY2=Wire.read()<<8|Wire.read();
GyZ2=Wire.read()<<8|Wire.read();
double dt2 = (double)(micros() - timer) / 1000000;
timer = micros();
double roll2 = atan2(AcY2, AcZ2)*degconvert;
double pitch2 = atan2(-AcX2, AcZ2)*degconvert;
double gyroXrate2 = GyX2/131.0;
double gyroYrate2 = GyY2/131.0;
compAngleX2 = 0.99 * (compAngleX2 + gyroXrate2 * dt2) + 0.01 * roll2;
compAngleY2 = 0.99 * (compAngleY2 + gyroYrate2 * dt2) + 0.01 * pitch2;
// Second Measurement
if(!MessungGestarted)
{
wind_ct = 0;
attachInterrupt(1, countWind, RISING);
MessungGestarted = true;
// Start Timer
}
// Print Data Measurement 1
Serial.print("DATA, TIME,");
Serial.print(compAngleX1, 5); Serial.print(",");
Serial.print(compAngleY1, 5); Serial.print(",");
Serial.println(wind); //Speed in Km/h
}
ISR(TIMER1_COMPA_vect){
MessungGestarted = false;
wind = (float)wind_ct / (float)m_time * 2.4;
detachInterrupt(1);
}
void countWind() {
wind_ct ++;
}
[*/code]