• -20%
Module "PMOD" horloge

Module "PMOD" horloge

PMODRTC
Peu de pièces en stock
10,09 € TTC 12,61 €TTC -20%

Dont 0,01 € d'eco-participation déjà incluse dans le prix (non impacté par la promotion)


8,41 € HT
Temps restant

Conçu pour être piloté par un arduino via une liaison I2C, ce module "Pmod" intègre une horloge RTC de type MCP79410. Un support permet de recevoir une pile CR1220 (proposée en option en bas de page).

Fonction du moduleInterface du moduleConnectique du module


Doté d'un connecteur mâle 2 x 6 broches, ce module pourra être déporté via des cordons optionnels (voir modèles en bas de page).
 
Ce module est soumis au contrôle de la réglementation américaine relative à l’exportation (15 CFR Part 730 et. seq.). 
  
   
Exemple d'application avec un arduino™
 
Raccordement du module à l'arduino™  


************************************************************************
*
* Test du module Pmod horloge
*
*************************************************************************
* Description: Pmod_RTC
* La date et l'heure sont affichées sur le moniteur série.
*
*
* Matériel
* 1. Arduino Uno
* 2. Module Pmod RTC
*         Schéma publié sous licence CC Attribution-ShareALike (réalisé avec Fritzing)
*
* N'importez pas le programme par un copier/coller dans l'IDE de l'arduino.
* Utilisez le lien ci-dessous pour télécharger le code source.
*

*        Code source téléchargeable ici
************************************************************************/

#include <Wire.h> // appel de la bibliothèque
#define MCP79410_Adresse 0x6F // adresse I2C du module Pmod RTC

void setup()
{
Serial.begin(9600); // initialisation de la liaison série
Wire.begin(); // initialisation de la liaison I2C
Init_RTC(); // initialisation du module RTC
}

void loop()
{
DisplayRTCDay(); // affichage jour de la semaine
DisplayRTCData(4,6); // affichage date
Serial.print(".");
DisplayRTCData(5,5);
Serial.print(".");
Serial.print("20");
DisplayRTCData(6,8);
Serial.print(" ");
DisplayRTCData(2,6); // affichage de l'heure
Serial.print(":");
DisplayRTCData(1,7);
Serial.print(":");
DisplayRTCData(0,7);
Serial.println();

delay(1000);
}

// Initialisation du module Pmod RTC
void Init_RTC(void)
{
WriteRTCByte(0,0x00); // configuration registre des secondes
WriteRTCByte(1,0x55); // configuration registre des minutes
WriteRTCByte(2,0x13); // configuration registre des heures
WriteRTCByte(3,0x03); // configuration registre des jours de la semaine
WriteRTCByte(4,0x09); // configuration registre du jour
WriteRTCByte(5,0x08); // configuration registre du mois
WriteRTCByte(6,0x17); // configuration registre de l'année
WriteRTCByte(0,0x80); // démarrage de l'horloge
delay(100);
}

void WriteRTCByte(const unsigned char adresse, const unsigned char donnee)
{
Wire.beginTransmission(MCP79410_Adresse);
Wire.write(adresse);
Wire.write(donnee);
Wire.endTransmission();
}

void DisplayRTCData(const unsigned char adresse, const unsigned char nb_bits)
{
unsigned char data;
data=ReadRTCByte(adresse);
data=data & 0xFF>>(8-nb_bits);
if (data<10)
{
Serial.print("0");
}
Serial.print(data,HEX);
}

void DisplayRTCDay()
{
unsigned char data;
data=ReadRTCByte(3);
data=data & 0xFF>>(5);
switch (data)
{
case 1:
Serial.print("Lundi ");
break;
case 2:
Serial.print("Mardi ");
break;
case 3:
Serial.print("Mercredi ");
break;
case 4:
Serial.print("Jeudi ");
break;
case 5:
Serial.print("Vendredi ");
break;
case 6:
Serial.print("Samedi ");
break;
case 7:
Serial.print("Dimanche ");
break;
}
}

unsigned char ReadRTCByte(const unsigned char adresse)
{
unsigned char data;

Wire.beginTransmission(MCP79410_Adresse);
Wire.write(adresse);
Wire.endTransmission();

Wire.requestFrom(MCP79410_Adresse,1);
while (Wire.available())
{
data=Wire.read();
}
return data;
}
 
 
Notes d'applications pour modules Pmod 
 
La note d'application ci-dessus a retenu votre attention ? Téléchargez toutes les autres notes d'applications concernant l'utilisation des modules Pmod™ avec un arduino™ Uno. 
Aucun avis
Il est nécessaire d'être connecté pour laisser un avis
Produit ajouté à ma liste