Nouvelles:

Bienvenue au Forum de discussion Électro-Bidouilleur! Inscrivez-vous pour participer aux discussions!: 
https://forum.bidouilleur.ca/index.php?action=signup Les demandes d'inscription sont révisées quotidiennement.

Menu principal

EB_#210 la RTC Horloge à  Temps Réel DS1302

Démarré par pierre 20, Mars 21, 2019, 05:15:58 PM

« précédent - suivant »

pierre 20

Bonjours, j'ai réalisé le EB_#210 avec l'horloge DS1302. Les heures, les minutes, les secondes (et même les centièmes il me semble bizarement) s'affiche parfaitement. Cependant, je n'arrive pas a avoir la date. Pour le jour, le moi et l'années il n'y a que des 0 qui s'affichent. Je débute en aduino et je n'arrive pas a arranger le problème.
Merci d'avance pour vos conseils.

papyblue

Bonjour,
Si vous utilisez le code de Bertrand, avez-vous pensé à  de-commenter la zone d'initialisation ?

pierre 20

Bonjour,
Quand vous dite de-commenter la zone d'initialisation cela veux dire enlever les commentaire ? Je ne comprend pas comment cela va changer quelque chose a mon programme mais je l'es quand même fait et cela ne change rien.
Ce que je n'arrive pas a comprendre aussi et que je n'es absolument pas changer le programme de Bertrand.
Merci pour m'aider

papyblue

Bonjour,
c'est de ce bloc dont je parlais :
/*
// Bloc permettant de configurer l'horloge. Pas exécuté systématiquement
  ecrire_registre_horloge(7,0b00000000);    // Deverouiller le registres
  ecrire_registre_horloge(0,0b00000000);    // Activer l'horloge, 00 secondes
  ecrire_registre_horloge(1,0b01010110);    // 00 minutes
  ecrire_registre_horloge(2,0b00100000);    // Mode 24 heures, 00 Heures
  ecrire_registre_horloge(3,0b00010111);    // 17 date
  ecrire_registre_horloge(4,0b00000011);    // 03 mois
  ecrire_registre_horloge(5,0b00000110);    // 01 jour de la semaine
  ecrire_registre_horloge(6,0b00011000);    // 18 annee
*/

pierre 20

Bonjours,
J'ai donc enlevé les (/*  et  */) ce qui me donne:
// Bloc permettant de configurer l'horloge. Pas exécuté systématiquement
  ecrire_registre_horloge(7,0b00000000);    // Deverouiller le registres
  ecrire_registre_horloge(0,0b00000000);    // Activer l'horloge, 00 secondes
  ecrire_registre_horloge(1,0b01010110);    // 00 minutes
  ecrire_registre_horloge(2,0b00100000);    // Mode 24 heures, 00 Heures
  ecrire_registre_horloge(3,0b00010111);    // 17 date
  ecrire_registre_horloge(4,0b00000011);    // 03 mois
  ecrire_registre_horloge(5,0b00000110);    // 01 jour de la semaine
  ecrire_registre_horloge(6,0b00011000);    // 18 annee

Je ne sais pas si c'est cela qu'il faut faire quand vous me dite de-commenter.

Je tiens aussi a rectifier mon premier message quand je disait que l'heure s'affiche, c'est l'horodatage qui m'affiche l'heure non pas le programme.
Ca me donne cela:
16:43:39.700 -> 00/00/00
16:43:39.856 -> 00:00:00
16:43:39.936 ->
16:43:40.468 -> 00/00/00

Et quand j'enlève l'horodatage:
00/00/00
00:00:00

Merci beaucoup de votre aide


papyblue

Bonsoir,
Essayez ce code :
https://github.com/msparks/arduino-ds1302/blob/master/examples/set_clock/set_clock.ino
en mettant les broches de votre montage, cela permettra de vérifier que le matériel n'est pas en panne.

pierre 20

Bonjours papyblue,
J'ai essayé le code que vous m'avez passé, cependant je n'es pas réussi a introduire les library "Stdio.h" et "DS1302.h" . Je l'es ai pourtant téléchargé, j'ai regardé des vidéos pour savoir comment faire et j'ai essayé plusieurs fois avec plusieurs téléchargement de ces library et a chaque fois je n'es pas réussi a le faire fonctionner (oui je suis peut être pas très doué). Si tu aurait le liens où je puisse les télécharger je te serait infiniment reconnaissant.
Merci en tout les cas pour tout l'aide que tu m'a apporté cela ma bien aidé.

papyblue

Bonjour,
Chez moi cela compile parfaitement. J'ai la version IDE 1.8.5.
Voici comment je pratique :

Je télécharge la bibliothèque au format zip sur le site indiqué.
Dans l'environnement de développement Arduino je fais  Croquis/Inclure une bibliothèque/Ajouter la bibliothèque .zip
( je choisis le fichier que je viens de télécharger : arduino-ds1302-master)
Puis je fais Fichier/Exemples et je choisis arduino-ds1302/set_clock
Après il faut modifier les lignes suivantes pour les faire correspondre à  votre montage
const int kCePin   = 5;  // Chip Enable
const int kIoPin   = 6;  // Input/Output
const int kSclkPin = 7;  // Serial Clock

et le tour est joué...

pierre 20

Bonjours papybleue,
Je viens de me connecter au forum quand j'ai vue que la réponse que je vous avez donné la dernière fois ne c'était pas envoyé. Je disait que le problème était l'horloge et non le programme. Un grand merci pour ton aide il m'a été très très utile. :)