Hey, cool de voir que je ne suis pas le seul.
Pour ma part, électroniquement tout est OK, j'ai pu tester in situ à Ancenis ce qui m'a permis d'identifier des bugs que j'ai corrigés, encore pas mal de taf en perspective (en même temps c'est sans limite). J'ai récemment testé le chrono GPS qui semble opérationnel lui aussi, faut juste que je fasse un petit site web pour préprogrammer visuellement les circuits et les partiels sur la carte SD et éviter de rentrer les coordonnées manuellement.
De l'intérieur ça ressemble à ça:
alexdu86 a écrit:il me reste juste une fonctionnalité a intégré, un sauvegarde des temps sur une carte sd
Avec la librairie arduino SdFat, j'ai fait ça:
void initChronosSD() {
GD.__end();//pour éviter les conflits avec GD, on l'arrête
sprintf(nomDossierCHRONO, "CHRONOS/%02d-%02d-%02d", rtc.getDay(), rtc.getMonth(), rtc.getYear() - 2000);//on crée le nom de dossier si le jour a changé
sprintf(nomFichierCHRONO, "CHRONOS/%02d-%02d-%02d/", rtc.getDay(), rtc.getMonth(), rtc.getYear() - 2000,"chronosDuJour.csv");//chaque jour une liste de chronos
int resultatMK = sd.mkdir(nomDossierCHRONO);
if (!sd.exists(nomFichierCHRONO)) {
fichierChrono.open(nomFichierCHRONO, O_CREAT | O_WRITE);
fichierChrono.print(F("heure chrono,valeur chrono,valeur millisecondes\r\n"));
fichierChrono.close();
}
initialisationChrono = false;
GD.resume();//on peut reprendre GD
}
void enregistreChronoSD() {
GD.__end();//pour éviter les conflits avec GD, on l'arrête
String lignelog = "";
fichierChrono.open(nomFichierCHRONO, FILE_WRITE);
lignelog += String(heure) + ":" + String(minute) + ":" + String(rtc.getSeconds()) + ",";
lignelog += dernierTemps + ",";
lignelog += String(tour);
fichierChrono.println(lignelog);
fichierChrono.close();
GD.resume();//on peut reprendre GD
lignelog = "";
}
La première fonction se fait dans le setup et la seconde est bien évidemment déclenchée à chaque interruption au franchissement de la barrière de chronométrage.
Comme ça tu évites d'y passer trop de temps