schönen guten tag, ich benutze einen ds1307 und möchte einen timestamp auslesen und in eine datei auf einer sd karte speichern.
leider tritt hierbei ein problem auf, das jahr wird eingeschrieben alle anderen daten nur als merkwürdige sonderzeichen.
hier ma ein snippet vom code
#define datumadresse 0x68
#include <Wire.h>
#include "RTClib.h"
RTC_DS1307 RTC;
RTC_DS1307 RTC;
im setup:
RTC.begin();
if (! RTC.isrunning()) {
Serial.println("RTC is NOT running!");
// following line sets the RTC to the date & time this sketch was compiled
RTC.adjust(DateTime(__DATE__, __TIME__));
}
und hier der code der einen dateiheader schreiben soll:
DateTime now = RTC.now();
String headerString = "";
headerString += "index";
headerString += ",";
headerString += "Luftdruck[mbar]";
headerString += ",";
headerString += "1.Byte";
headerString += ",";
headerString += "2.Byte";
headerString += ",";
headerString += "Temperatur[°C]";
headerString += ",";
headerString += "1.Byte";
headerString += ",";
headerString += "2.Byte";
dataFile.print(now.year());
dataFile.print('/');
dataFile.print(now.month());
dataFile.print('/');
dataFile.print(now.day());
dataFile.print(' ');
dataFile.print(now.hour());
dataFile.print(':');
dataFile.print(now.minute());
dataFile.print(':');
dataFile.print(now.second());
dataFile.println();
dataFile.println(headerString);
dataFile.close();
den ganze quellcode schreibe ich wenn das projekt datenlogger fertig ist.
das problem ist jetzt das im datenlogger folgendes steht:
"2011/ / :':a"
index,Luftdruck[mbar],1.Byte,2.Byte,Temperatur[°C],1.Byte,2.Byte
61,702,0,0,-38,0,0
62,1011,70,43,25,59,203
62,1011,70,43,25,59,186
62,1011,70,83,25,59,198
62,1011,70,70,25,59,198
mit dem A das in der Klammer hinter Temperatur steht kann ich ja noch leben, aber dieser mist bei der datums anzeige der ist wirklich doof. ich würde das gerne in eine datei hineinschreiben, ich weiss jedoch nicht wo der fehler liegt :0
kann mir da bitte jemand mal nen tip geben?