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

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
Ligne 10 : Ligne 10 :
 
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-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.  
  
Mais pourquoi donc avoir besoin d'un circuit RTC en plus? }}
+
'''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'.
 
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?
+
'''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
 
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!
  
While this sort of basic timekeeping is OK for some projects, some projects such as data-loggers, clocks, etc will need to have '''consistant timekeeping that doesnt reset when the Arduino battery dies or is reprogrammed'''. Thus, we include a seperate RTC! The RTC chip is a specialized chip that just keeps track of time. It can count leap-years and knows how many days are in a month, but it doesn't take care of Daylight Savings Time (because it changes from place to place)
+
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)
  
 
[[Fichier:ADF-RTC-DS1307-INTRO1.jpg]]
 
[[Fichier:ADF-RTC-DS1307-INTRO1.jpg]]
  
''This image shows a computer motherboard with a Real Time Clock called the DS1387. Theres a lithium battery in there which is why its so big.''
+
''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.''
  
The RTC we'll be using is the DS1307. It's low cost, easy to solder, and can run for years on a very small coin cell.
+
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.
  
 
[[Fichier:ADF-RTC-DS1307-INTRO-ds1307.jpg]]
 
[[Fichier:ADF-RTC-DS1307-INTRO-ds1307.jpg]]
  
As long as it has a coin cell to run it, the DS1307 will merrily tick along for a long time, even when the Arduino loses power, or is reprogrammed.
+
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=You MUST have a coin cell installed for the RTC to work, if there is no coin cell, it will act strangly and possibly hang the Arduino so ALWAYS make SURE there's a battery installed, even if its a dead battery.}}
+
{{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.}}
  
 
== Fichiers ==
 
== Fichiers ==
  
[http://github.com/adafruit/DS1307-breakout-board Schematic and layout files can be found at GitHub - click Download Source to get the zip!]
+
[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!]
  
 
{{ADF-RTC-DS1307-TRAILER}}
 
{{ADF-RTC-DS1307-TRAILER}}

Version du 20 janvier 2013 à 20:51


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'un 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 microcontroleur, 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.

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 micro-controleur. 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)

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.

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.

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é.

Fichiers

Schemas et fichiers layout 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.