Je me suis fixé comme objectif d'offrir une horloge fabriquée par mes soins pour Noël.
J'ai naïvement pensé pouvoir partir de rien et la monter sur batterie, mais je me suis assez vite rendu compte que ce n'était pas viable. Je me suis alors rabattu sur le super projet de Shuira, j'ai nommé : "Hollow Clock".
Mais, pour que le cadeau soit plus personnel et que je trouve un intérêt dans mon apprentissage, j'ai décidé d'ajouter un module horloge comme lui qui permet d'augmenter grandement la précision (décalage d'une seconde par heure avec l'Arduino Nano, 1 min par an avec le module).
Le but final, qui me paraît compliqué à atteindre, serait que la carte retienne en permanence la position des aiguilles et qu'en cas de débranchement, elle demande l'heure au module horloge et que les aiguilles se remette à leur position logique.
Ma question est donc : est-ce que la carte peut stocker des informations d'une variable même éteinte ? Y a-t-il d'autres obstacles ?
Voila Merci d'avoir pris le temps de lire ce message et merci d'avance pour toute réponse constructive.
Tu es sur le forum anglophone.
You can't read clock hands position (easily) but you can save data (actual time in your case) in the Arduino EEPROM in case of a power failure. Here is a guide (in french) on how to do that : Arduino: sauvegarde de données en EEPROM en cas de coupure d'alimentation
Oui, comme le dit @Etienne_74 tu peux stocker des informations dans l'EEPROM d'un Arduino qui en est équipé (un nano par exemple). La RTC (real time clock) que tu as choisie possède aussi une EEPROM que tu peux utiliser pour stocker.
Tu peux aussi faire une horloge qui se connecte à internet régulièrement et lit l'heure sur un serveur NTP pour rester en permanence à l'heure, voire faire les changements d'heure (été / hiver) automatiquement.
Oui je vois merci beaucoup,néanmoins ,je pense qu'ajouter une connexion a internet serait difficile,en effet l'espace que nous laisse la petite boite et très faible et j'ai déjà du l'agrandir pour le module horloge.
Sinon je ne savais pas que l'horloge possédait une EEPROM.
Si tu n'utilises pas les registres du DS3231 qui permettent d'enregistrer les dates-heures d'alarmes dans sa SRAM, tu pourras les utiliser pour sauvegarder quelques octets.
Contrairement à l'EEPROM, la SRAM n'est pas limitée en nombre de lectures/écritures.
Quand on utilise un scanner I2C avec "une horloge RTC" on trouve deux adresses.
Bizare non ?
Quand on regarde les cartes DS1307 ou DS3231, on voit "deux cachous noirs".
Sur l'un est marqué DS3231 sur l'autre est marqué quelque chose comme 24Cxyz.
Un développeur curieux utilise son moteur de recherche préféré pour connaitre la fonction de ce second cachou → c'est une eeprom, I2C comme le DS3231, d'où les deux adresses trouvées par le scanner.
Puis, il recherche l'existence de bibliothèques pour le gérer, bingo, elles sont nombreuses.
Quand on est développeur la curiosité n'est pas un vilain défaut, c'est une qualité .
Surtout avec les modules "Asie" qui sont très mal documentés.
Finalement je pense partir sur une version plus simple en me servant du module uniquement pour le décompte des seconde.Utiliser ce module pour remettre les aiguilles a leur place est complexe et on ne peut pas compter sur la fiabilité des engrenages.
Merci quand même pour ton aide