IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Problème avec un module DS3231


Sujet :

Arduino

  1. #1
    Membre averti
    Homme Profil pro
    Demandeur d'emploi
    Inscrit en
    Octobre 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Demandeur d'emploi

    Informations forums :
    Inscription : Octobre 2018
    Messages : 34
    Par défaut Problème avec un module DS3231
    bonjour, avec le DS3231, j’obtiens toujours le mémé résultat 2165/165/165 165:165:85 (même si je débranche tout).
    branchement
    VCC -> 5v
    GND -> GND
    CLK -> SCL
    DAT > SDA

    le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    #include <Wire.h>
    #include <RTClib.h>
     
    RTC_DS3231 rtc;
     
    void setup ()
    {
      Wire.begin(); 
      Serial.begin(115200);
      rtc.adjust(DateTime(2018,10,24,10,0,0));
    }
     
    char daysOfTheWeek[7][12] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
     
    void loop () {
        DateTime now = rtc.now();
     
        Serial.print(now.year(), DEC);
        Serial.print('/');
        Serial.print(now.month(), DEC);
        Serial.print('/');
        Serial.print(now.day(), DEC);
        Serial.print(" (");
        Serial.print(daysOfTheWeek[now.dayOfTheWeek()]);
        Serial.print(") ");
        Serial.print(now.hour(), DEC);
        Serial.print(':');
        Serial.print(now.minute(), DEC);
        Serial.print(':');
        Serial.print(now.second(), DEC);
        Serial.println();
        delay(3000);
    }
    que faut il faire?
    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Bonjour,

    le circuit DS3231 fonctionne sous 3,3V même si dans la datasheet il est indiqué qu'on peut l'alimenter en 5V. Je ne sais pas si c'est un circuit que tu as acheté ou conçu toi même.

    Dans l'exemple proposé de la bibliothèque rtclib, il y a la ligne de code rtc.begin() qui, visiblement, initialise la communication avec le DS3231. Cette commande est absente dans ton code.

  3. #3
    Membre averti
    Homme Profil pro
    Demandeur d'emploi
    Inscrit en
    Octobre 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Demandeur d'emploi

    Informations forums :
    Inscription : Octobre 2018
    Messages : 34
    Par défaut problème module DS3231
    mon module DS3231 je l'ai acheter dans un kit.c'est bien 3 v (erreur de touche) et j'ai rajouter rct.begin().
    rien ne change.

  4. #4
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Peux-tu nous donner la référence du kit ? Un lien ?

  5. #5
    Membre averti
    Homme Profil pro
    Demandeur d'emploi
    Inscrit en
    Octobre 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Demandeur d'emploi

    Informations forums :
    Inscription : Octobre 2018
    Messages : 34

  6. #6
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Si j'en crois la documentation, le circuit fourni dans le kit est un DS1302 et pas un DS3231. Peux-tu vérifier le nom du composant en regardant dessus ?
    Si c'est bien un DS1302 voici un tutoriel : https://phmarduino.wordpress.com/201...-vos-montages/

  7. #7
    Membre averti
    Homme Profil pro
    Demandeur d'emploi
    Inscrit en
    Octobre 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Demandeur d'emploi

    Informations forums :
    Inscription : Octobre 2018
    Messages : 34
    Par défaut problème module DS3231
    bonjour vous avez raison c'est un DS1302

    dernière petite question
    j'ai obtenue ce code, a la ligne Serial.print(rtc.getMonthStr());
    il me donne le mois en lettre, je voudrais en 2 chiffres

    EX : September -> 09

    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    #include <DS1302.h>
     
    // Init DS1302
    DS1302 rtc(2, 3, 4);
     
    // Init structure Time-data
    Time t;
     
    void setup()
    {
      // Positionnement horloge a run-mode et desactive protection en ecriture
      rtc.halt(false);
      rtc.writeProtect(false);
     
      // Init connection serie
      Serial.begin(9600);
     
      // Initialisation de l'horloge
      // A mettre a jour avec les bones valeurs pour initialiser l horloge RTC DS1302
      rtc.setDOW(FRIDAY);        // Jour a FRIDAY
      rtc.setTime(19, 10, 0);    // Heure a 19:10:00 (format sur 24 heure)
      rtc.setDate(3, 6, 2016);   // Date  au 3 juin 2016
    }
     
    void loop()
    {
      // recup donnees DS1302
      t = rtc.getTime();
     
      // Ecriture date sur console serie
     
      Serial.print(t.date, DEC);
      Serial.print("/");
      Serial.print(rtc.getMonthStr());
      Serial.print("/");
      Serial.print(t.year, DEC);
      Serial.println(" - ");
     
      // Ecriture heure sur console serie
     
      Serial.print(t.hour, DEC);
      Serial.print(" heures, ");
      Serial.print(t.min, DEC);
      Serial.print(" minutes ");
      Serial.print(t.sec, DEC);
      Serial.println(" secondes.");
     
      // Affichage d un separateur
      Serial.println("------------------------------------------");
     
      // Attente d une seconde avant lecture suivante :)
      delay (1000);
    }

  8. #8
    Membre averti
    Homme Profil pro
    Demandeur d'emploi
    Inscrit en
    Octobre 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Demandeur d'emploi

    Informations forums :
    Inscription : Octobre 2018
    Messages : 34
    Par défaut problème module DS3231
    excuse
    une autre question
    est il possible d'importer la date et l'heure du pc
    merci d'avance

  9. #9
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Citation Envoyé par Yanss49 Voir le message
    bonjour vous avez raison c'est un DS1302

    dernière petite question
    j'ai obtenue ce code, a la ligne Serial.print(rtc.getMonthStr());
    il me donne le mois en lettre, je voudrais en 2 chiffres

    EX : September -> 09
    Es-tu sûr que septembre est le 9ème mois et pas le 8ème ? Généralement, le mois de janvier a pour indice 0.

    Tu dois faire un tableau de correspondances :
    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    char *month[]={"Janvier", "Février", "Mars",.....,"Novembre", "Décembre"}; // à compléter
    source

    Puis pour y accéder :
    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    int m = rtc.getMonthStr(); //normalement la fonction retourne une valeur entre 0 (Janvier) et 11 (Décembre)
    Serial.println( month[m] ); //


    Citation Envoyé par Yanss49 Voir le message
    excuse
    une autre question
    est il possible d'importer la date et l'heure du pc
    merci d'avance
    non, l'Arduino et le PC sont indépendants. Il faudrait que tu aies un programme qui lit l'heure du PC et envoie l'information à l'Arduino.

Discussions similaires

  1. Problème avec le module AI::Categorizer
    Par Pinoute dans le forum Modules
    Réponses: 0
    Dernier message: 20/07/2007, 11h50
  2. problème avec le module TK
    Par thierry7106 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 12/05/2007, 13h50
  3. Probléme avec le module turtle
    Par Newbie46 dans le forum Général Python
    Réponses: 7
    Dernier message: 15/02/2007, 21h03
  4. problème avec le module DBI
    Par vbcasimir dans le forum SGBD
    Réponses: 6
    Dernier message: 08/10/2005, 12h48
  5. problème avec un module
    Par vbcasimir dans le forum Modules
    Réponses: 2
    Dernier message: 29/08/2005, 15h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo