Bonjour,
Pour effectuer des tâche à interval réguluer, je travaille avec des données en temps unix afin d'éviter au maximum les delay() qui interrompent mon loop().
Celà marche très bien avec des choses comme :
const int checkInterval = 10;
DateTime loopStart = RTC.now();
int loopStartUnix = loopStart.unixtime();
MyTime = RTC.now().unixtime();
(...)
if (loopStartUnix-MyTime >= checkInterval){
(... mes instructions ...)
}
Par contre, que je veux logger ma donnée temporelle sur carte SD j'utilise le code suivant :
dataString=String(MyTime,DEC) + ";mes autres infos";
(...)
File dataFile = SD.open("dat2_env.txt", FILE_WRITE); // ouverture du fichier
dataFile.println(dataString);
Je me retrouve avec des enregistrement dont les lignes ressemblent à ceci :
-3477,5;mes autres infos
Où est-ce que je me trompe ?