zu schreiben Ich verwende die Arduino-Bibliothek. Ich möchte einige Daten von einem Sensor protokollieren, Datum-Zeit-Stempel es und schreibe es auf eine SD-Karte.konvertieren String, um const char * mit Arduino
die Textdatei Namen bauen Ich
String dataFileName = String(String(sedClock.getTime().year(),DEC) +
String(sedClock.getTime().month(),DEC) +
String(sedClock.getTime().day(),DEC) +
String(sedClock.getTime().hour(),DEC) +
String(sedClock.getTime().minute(),DEC) +
String(sedClock.getTime().second(),DEC) + '_log.txt');
versucht haben, würde ich dann auf diese Datei
pinMode(SD_PIN,OUTPUT);
dataFile = SD.open(dataFileName,FILE_WRITE);
mit loggt sein mögen, aber ich
no matching function call to SDClass::open(String&, int)
candidates are: File SDClass::open(const char*,uint_8)
Aber es scheint, Diese Arduino-Zeichenfolge hat nicht das Äquivalent von
(const char *) dataFileName.c_str()
So kann ich nicht herausfinden, wie die korrekte Umsetzung zu tun
Jede Hilfe wäre sehr dankbar.
Verwenden Sie str.length() + 1 für get Länge String. Beispiel: char __dataFileName [dataFileName.length() + 1]; dataFileName.toCharArray (__ dataFileName, sizeof (__ dataFileName)); – Guihgo