Différences entre versions de « ADF-RTC-DS1307 »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(7 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
{{ADF-RTC-DS1307-NAV}}
 
{{ADF-RTC-DS1307-NAV}}
  
== Qu'est ce qu'un RTC ==
+
== Qu'est ce qu'une RTC ==
  
 
{{bloc-etroit
 
{{bloc-etroit
   |text=Une horloge temps réel est fondamentalement identique à une montre - elle fonctionne sur une pile et reste à l'heure même en cas de coupure de tension! Utiliser un RTC ("''Real Time Clock''" signifiant littéralement "Horloge temps réel") permet de préserver l'heure sur de très-très-très longues périodes, même si vous reprogrammer votre microcontroleur, déconnectez la prise USB ou retirez la fiche d'alimentation.
+
   |text=Une horloge temps réel est fondamentalement identique à une montre - elle fonctionne sur une pile et reste à l'heure même en cas de coupure de tension! Utiliser un RTC ("''Real Time Clock''" signifiant littéralement "Horloge temps réel") permet de préserver l'heure sur de très-très-très longues périodes, même si vous reprogrammer votre microcontrôleur, déconnectez la prise USB ou retirez la fiche d'alimentation.
  
La plupart des micro-controlleurs, y compris Arduino, inclus un chronomètre interne appelé '''millis()''' et il y a également des minuteries dans le circuit intégré qui permettent de suivre de plus longues périodes de temps comme des minutes ou des jours.  
+
La plupart des micro-contrôleurs, y compris Arduino, inclus un chronomètre interne appelé '''millis()''' et il y a également des minuteries dans le circuit intégré qui permettent de suivre de plus longues périodes de temps comme des minutes ou des jours.  
  
 
'''Mais pourquoi donc avoir besoin d'un circuit RTC en plus?''' }}
 
'''Mais pourquoi donc avoir besoin d'un circuit RTC en plus?''' }}
Ligne 16 : Ligne 16 :
 
Vous avez besoin de programmer/initialiser la date et l'heure actuelle et vous pouvez alors compter sur le fait que le temps continue à progresser normalement depuis ce point du temps. Mais s'il y a une perte de tension, vous devrez redéfinir/reprogrammer la date et l'heure. C'est un peut comme avec les alarmes bon marchés: à chaque fois qu'il y a une coupure de tension, l'alarme/horloge clignote stupidement sur le chiffre 12:00
 
Vous avez besoin de programmer/initialiser la date et l'heure actuelle et vous pouvez alors compter sur le fait que le temps continue à progresser normalement depuis ce point du temps. Mais s'il y a une perte de tension, vous devrez redéfinir/reprogrammer la date et l'heure. C'est un peut comme avec les alarmes bon marchés: à chaque fois qu'il y a une coupure de tension, l'alarme/horloge clignote stupidement sur le chiffre 12:00
  
Si cette façon élémentaire de maintenir le temps convient à quelques projets, d'autres projets comme un "data logger", horloge, etc aurons besoin de '''préserver l'heure et l'écoulement du temps de façon cohérente même lorsque la pile de votre Arduino rends l'âme ou que vous ayez besoin de reprogrammer votre micro-controleur'''. Pour y arriver, il faut utiliser un module RTC!  
+
Si cette façon élémentaire de maintenir le temps convient à quelques projets, d'autres projets comme un "data logger", horloge, etc aurons besoin de '''préserver l'heure et l'écoulement du temps de façon cohérente même lorsque la pile de votre Arduino rends l'âme ou que vous ayez besoin de reprogrammer votre microcontrôleur'''. Pour y arriver, il faut utiliser un module RTC!  
  
Le composant RTC est une puce spécialisée qui ne fait que suivre l'écoule du temps. Il sait compter les années bissextiles et sait combien il y a de jours dans un mois, mais ne se préoccupe pas des horaires Eté/Hiver (parce que cette règle change d'un endroit à l'autre)
+
Le composant RTC est une puce spécialisée qui ne fait que suivre l'écoule du temps. Il sait compter les années bissextiles et sait combien il y a de jours dans un mois, mais ne se préoccupe pas des horaires été/hiver (parce que cette règle change d'un endroit à l'autre)
  
[[Fichier:ADF-RTC-DS1307-INTRO1.jpg]]
+
{{ADFImage|ADF-RTC-DS1307-INTRO1.jpg}}
  
 
''Cette image présente la carte d'un ordinateur avec un module ''Real Time Clock'' (horloge temps réel) appelé DS1387. S'il est si gros, c'est parce qu'il contient une pile au lithium.''
 
''Cette image présente la carte d'un ordinateur avec un module ''Real Time Clock'' (horloge temps réel) appelé DS1387. S'il est si gros, c'est parce qu'il contient une pile au lithium.''
  
Le circuit RTC que nous allons utiliser est le DS1307. Il est bon marché, facile à souder, et fonctionne pendant des années avec une petite pile bouton.
+
== DS1307 ou PCF8523 ==
 +
{{ambox|text=Vous <strong>DEVEZ</strong> avoir une pile bouton en place pour que le module RTC fonctionne. S'il n'y a pas de pile, il fonctionnera de façon bizarre et pourrait même planter votre Arduino. Assurez vous donc de TOUJOURS AVOIR une pile en place, même s'il s'agit d'une pile totalement morte.}}
 +
 
 +
=== Breakout avec RTC DS1307 ===
 +
De nombreux breakout utilisent le circuit [https://www.maximintegrated.com/en/products/digital/real-time-clocks/DS1307.html RTC DS1307] de Maxim Integrated. Il est bon marché, facile à souder, et fonctionne pendant des années avec une petite pile bouton.
  
[[Fichier:ADF-RTC-DS1307-INTRO-ds1307.jpg]]
+
{{ADFImage|ADF-RTC-DS1307-INTRO-ds1307.jpg}}
  
 
Aussi longtemps qu'il dispose d'une pile pour le faire fonctionner, le DS1307 fera tic-tac bravement pendant très-très longtemps, même si votre Arduino perd son alimentation ou est reprogrammé.
 
Aussi longtemps qu'il dispose d'une pile pour le faire fonctionner, le DS1307 fera tic-tac bravement pendant très-très longtemps, même si votre Arduino perd son alimentation ou est reprogrammé.
  
{{ambox|text=Vous <strong>DEVEZ</strong> avoir une pile bouton en place pour que le module RTC fonctionne. S'il n'y a pas de pile, il fonctionnera de façon bizarre et pourrait même planter votre Arduino. Assurez vous donc de TOUJOURS AVOIR une pile en place, même s'il s'agit d'une pile totalement morte.}}
+
=== Breakout avec RTC PCF8523 ===
 +
Les cartes plus récentes (comme le datalog shield ci-dessous) utilisent également le [http://www.nxp.com/products/interface-and-connectivity/interface-and-system-management/i2c-bus-portfolio/i2c-real-time-clocks-rtc/real-time-clock-rtc-and-calendar:PCF8523 PCF8523] de NXP. Ce dernier utilise également un bus I2C (comme la DS1307) mais '''utilise son propre code d'exemple''' !
 +
 
 +
{{ADFImage|ADF-RTC-DS1307-INTRO-PCF8523.png|480px}}
  
== Fichiers ==
+
== Téléchargements ==
  
[http://github.com/adafruit/DS1307-breakout-board Schemas et fichiers layout peuvent être trouvé sur GitHub - cliquer sur "Download Source" et téléchargez l'archive zip!]
+
[http://github.com/adafruit/DS1307-breakout-board Schéma et fichiers layout pour le breakout DS1307 peuvent être trouvé sur GitHub - cliquer sur "Download Source" et téléchargez l'archive zip!]
  
 
{{ADF-RTC-DS1307-TRAILER}}
 
{{ADF-RTC-DS1307-TRAILER}}

Version actuelle datée du 8 février 2018 à 16:59


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Qu'est ce qu'une RTC

Une horloge temps réel est fondamentalement identique à une montre - elle fonctionne sur une pile et reste à l'heure même en cas de coupure de tension! Utiliser un RTC ("Real Time Clock" signifiant littéralement "Horloge temps réel") permet de préserver l'heure sur de très-très-très longues périodes, même si vous reprogrammer votre microcontrôleur, déconnectez la prise USB ou retirez la fiche d'alimentation.

La plupart des micro-contrôleurs, y compris Arduino, inclus un chronomètre interne appelé millis() et il y a également des minuteries dans le circuit intégré qui permettent de suivre de plus longues périodes de temps comme des minutes ou des jours.

Mais pourquoi donc avoir besoin d'un circuit RTC en plus?

Et bien, la raison la plus importante est que millis() ne "chronomètre" le temps que depuis le dernier démarrage d'Arduino - cela signifie que lorsque l'alimentation est enclenché, la minuterie des millisecondes recommence à 0. Un Arduino ne sait pas qu'il est 'jeudi' ou 'le 8 mars' et tout ce qu'il peut dire c'est que 'il y a 14.000 millisecondes que j'ai été mis sous tension'.

Que faire si vous voulez initialiser l'heure sur un Arduino?

Vous avez besoin de programmer/initialiser la date et l'heure actuelle et vous pouvez alors compter sur le fait que le temps continue à progresser normalement depuis ce point du temps. Mais s'il y a une perte de tension, vous devrez redéfinir/reprogrammer la date et l'heure. C'est un peut comme avec les alarmes bon marchés: à chaque fois qu'il y a une coupure de tension, l'alarme/horloge clignote stupidement sur le chiffre 12:00

Si cette façon élémentaire de maintenir le temps convient à quelques projets, d'autres projets comme un "data logger", horloge, etc aurons besoin de préserver l'heure et l'écoulement du temps de façon cohérente même lorsque la pile de votre Arduino rends l'âme ou que vous ayez besoin de reprogrammer votre microcontrôleur. Pour y arriver, il faut utiliser un module RTC!

Le composant RTC est une puce spécialisée qui ne fait que suivre l'écoule du temps. Il sait compter les années bissextiles et sait combien il y a de jours dans un mois, mais ne se préoccupe pas des horaires été/hiver (parce que cette règle change d'un endroit à l'autre)

 
Crédit: AdaFruit Industries www.adafruit.com

Cette image présente la carte d'un ordinateur avec un module Real Time Clock (horloge temps réel) appelé DS1387. S'il est si gros, c'est parce qu'il contient une pile au lithium.

DS1307 ou PCF8523

Breakout avec RTC DS1307

De nombreux breakout utilisent le circuit RTC DS1307 de Maxim Integrated. Il est bon marché, facile à souder, et fonctionne pendant des années avec une petite pile bouton.

 
Crédit: AdaFruit Industries www.adafruit.com

Aussi longtemps qu'il dispose d'une pile pour le faire fonctionner, le DS1307 fera tic-tac bravement pendant très-très longtemps, même si votre Arduino perd son alimentation ou est reprogrammé.

Breakout avec RTC PCF8523

Les cartes plus récentes (comme le datalog shield ci-dessous) utilisent également le PCF8523 de NXP. Ce dernier utilise également un bus I2C (comme la DS1307) mais utilise son propre code d'exemple !

 
Crédit: AdaFruit Industries www.adafruit.com

Téléchargements

Schéma et fichiers layout pour le breakout DS1307 peuvent être trouvé sur GitHub - cliquer sur "Download Source" et téléchargez l'archive zip!


Source: DS1307 Real Time Clock Breakout Board Kit. Ecrit par Tyler Cooper pour AdaFruit. Crédit AdaFruit Industries

Traduit par Meurisse D. pour MCHobby.be

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.