Moin,
ich will eine Textfile in meinem Programm selbst generieren aus dem Datum und der Uhrzeit. Ich kann mit einem Voreingestellten Namen die .csv Datei generieren. Doch wenn ich das mit dem selbst erzeugten Namen mache, klappt das nicht. Hier einmal die Funktionen:
boolean initialsSD(){
if(!SD.begin(53)){
Serial.println(F("Initial SD Card failed!"));
Serial.flush();
return false;
}else{
Serial.println(F("Initial SD Card successful!"));
Serial.flush();
return true;
}
}
boolean initalFile(){
char endoffile[5]=".csv";
strcpy(Filename,Timevar);
strcat(Filename,endoffile);
Serial.println(Filename);
Serial.flush();
CSVFile=SD.open(Filename, FILE_WRITE);
if(CSVFile){
CSVFile.print("Lfd. Nummer,");
CSVFile.print("System Mode,");
CSVFile.print("Cell ID,");
CSVFile.print("RSSI,");
CSVFile.print("RSRP,");
CSVFile.print("RSRQ,");
CSVFile.print("SNR,");
CSVFile.print("Latitude,");
CSVFile.print("Longitude,");
CSVFile.print("Date,");
CSVFile.print("Time,");
CSVFile.print("Altitude,");
CSVFile.print("Speed,");
CSVFile.print("Course,");
CSVFile.println("Timestamp;");
CSVFile.close();
Serial.println(F("inital file successful"));
Serial.flush();
return(true);
}else{
Serial.println(F("inital file failed"));
Serial.flush();
return(false);
}
}
Wenn ich das ganze durchlaufen lasse also so:
if(initialsSD()){
initalFile();
}
Dann bekomme ich folgende Ausgabe:
10:38:48.123 -> 20220223-1038
10:38:48.123 -> Time set ok
10:38:48.167 -> Initial SD Card successful!
10:38:48.167 -> 20220223-1038.csv
10:38:48.214 -> inital file failed
Wenn ich aber den Filename vorher zu "test.csv" einstelle und die strcpy und strcat Funktionen bei initalFile() dann klappt das ganze mit folgender Ausgabe:
10:42:28.721 -> 20220223-1042
10:42:28.721 -> Time set ok
10:42:28.769 -> Initial SD Card successful!
10:42:28.769 -> test.csv
10:42:28.853 -> inital file successful
Ich habe zudem probiert "20220223-1038.csv" vor einzustellen, doch da klappt das ganze auch nicht. Ist möglicherweise der Dateiname nicht möglich?
Danke schon mal im Voraus