Treza88:
'heure et date dans la console qui restent désespérément au 1 janvier1970.
cette date n'est pas anodine, c'est l'origine de l'"Unix Time".
L'Unix Time est le nombre de secondes écoulées depuis cette date.
Donc dans ton programme, tu dois avoir un bug qui met à zéro une variable qui devrait contenir l'Unix Time.
Du coup, retour en 1970 !
Biggil merci pour tes précision je vois bien ton raisonnement, mais je ne trouve pas le bug, pour plus de précision il ne met pas a 0 mais a 28800 exactement car l'heure débute a 8h.
J-M-L j'ai bien tester de gérer le code avec des constantes, mais rien n'y fait non plus.
J'ai beau chercher l'erreur et faire des changements, mais je reste toujours en 1970 le 1 janvier a 8h, ce qui me fait bizarre car je suis en train d'utiliser un ordinateur qui n'existe pas a cette date et que j'ai a peine 2 ans.
écrivez un code tout simple qui ne fait que configurer le réseau et accès internet, puis le configTime() et ensuite affichez l'heure et regardez si ça fonctionne. --> Postez ce code (vous semblez l'avoir)
tant que ce truc là ne fonctionne pas, pas la peine d'aller plus loin.
ensuite on peut comparer le code qui marche à votre intégration.
Oui dans ton premier post tu m"en avais parlé je j'ai supprimé mais ça na rien changé.
Par contre en faisant d'autre test je me suis a perçu que le code simple affichait la date de 1970 en première ligne de la console et après il basculait en 2019.
Est ce que le code des dht qui est avec pourrait empêcher que le code bascule en 2019 et qu'il continu sur la date de 1970
Sinon comment modifier le code simple pour qu'il affiche la date de 2019 des le départe du code?
Le type time_t sert à représenter le temps depuis le 00h00 du 1er janvier 1970 --> quand now vaut zéro c'est donc que la fonction a retourné un temps erroné...
si vous faites un
void loop() {
time_t now = time(nullptr);
if (now) Serial.println(ctime(&now));
delay(1000);
}
ça n'affichera que quand le temps retourné n'est pas merdique.