module DS1302 RTC, aidez moi svp

bonjour,
debutant en programation j aurais besoin d aide pour mon projet
allumage journalier progressif a heure definie
le matos:
arduino uno
alim pc 480W MAX (12v a 220W)
ecran pcd 8544
ULN2803 (4 pcs)
DS1302 RTC module
LED blanc 3* 1,65M 12V 2A
LED rgb 2* 1,65M 12V 1,5A

pour les branchements aucun souci
rtc pin 2.3.4 plus alim et masse
lcd pin 13.12.8.7.6 plus alim et masse
led blanc 5.1.0
led rgb 9.10.11 en PWM
par contre la programation j ai rien compris
surtout avec le rtc( reste a la date et heure d usine apres reset)
une idee de prog des exemples?
quelqu un peut il m aide?

Ton message est loin d'être clair.

Pourrais tu faire une description de ton problème de façon moins erratique ?

je cherche quelqu un qui pourrai m expliquer comment procede pour utilise l ecran avec affichage de l heure /date grace a la pile de sauvegarde de mon rtc module

Salut pour régler l'heure de ton DS1307 il faut que tu programme ton Arduino avec ce petit bout de code dans lequel tu renseigne la date et l'heure actuelle ou autre....

Prends cette lib > ICI décompresse la et mets les trois lib dans ton dossier lid de ton IDE et injecte ce code pour régler l'heure

#include "WProgram.h"
#include "Wire.h"
#include "DS1307.h"

void setup()
{
// Réglage Horloge DS1307 : 

RTC.stop();
RTC.set(DS1307_SEC,0); // Secondes
RTC.set(DS1307_MIN,00); // Minutes
RTC.set(DS1307_HR,22); // Heures
RTC.set(DS1307_DOW,0); // Jour de la semaine (0=Dimanche, 7=Samedi)
RTC.set(DS1307_DATE,9); // Jour du mois
RTC.set(DS1307_MTH,10); // Mois
RTC.set(DS1307_YR,11); // Année
RTC.start();
}

void loop(){}

une fois que tu as reglé l'heure tu peux reprogrammer ton Arduino avec ce code, pour synchroniser l'heure avec la Lib Time, et afficher une String sur le LCD:

#include <Time.h> 
#include <DS1307RTC.h>

const int RS=2; //declaration constante de broche
const int E=3; //declaration constante de broche
const int D4=4; //declaration constante de broche
const int D5=5; //declaration constante de broche
const int D6=6; //declaration constante de broche
const int D7=7; //declaration constante de broche 
LiquidCrystal lcd(RS, E, D4, D5, D6, D7);// initialisation LCD en mode 4 bits 


void setup()
{
setSyncProvider(RTC.get);// Synchronise Time et DS1307
lcd.begin(20,4); // Initialise le LCD avec 20 colonnes x 4 lignes
delay(10);
lcd.print("LCD OK") ; 
delay(1000);
lcd.clear();
}

void loop(){
char heureString[9] = ""; //Nombre Char dans string heure
sprintf(heureString, "%02d:%02d:%02d", hour(), minute(), second()); //Definit la forme string Time
lcd.setCursor(0,0);// Positionne le curseur
lcd.write(heureString); //Affiche sur le LCD string heure
}

Voila A+

axel_67:
je cherche quelqu un qui pourrai m expliquer comment procede pour utilise l ecran avec affichage de l heure /date grace a la pile de sauvegarde de mon rtc module

Le rapport avec le titre du post ?

Jean-François:
Le rapport avec le titre du post ?

Faudrait demander aux expert miami :grin:

Sinon pour ton probléme de DS1307 / affichage j'ai fait un tuto sur le sujet : [Tutoriel Arduino] Horloge RTC (DS1307) + librairie LiquidCrystal | Skyduino - Le DIY à la française

Sinon tu as aussi un tuto en anglais par ladyada : DS1307 RTC tutorial

Salut Skywood, ton tuto est super mais y'a plus simple pour le DS1307 :grin: , toi tu rentres vraiment dans le camboui :wink:

Arioch:
Salut Skywood, ton tuto est super mais y'a plus simple pour le DS1307 :grin: , toi tu rentres vraiment dans le camboui :wink:

C'est vrai qu'il y a plein de librairie pour le DS1307, mais bon avec deux fonctions simple, et deux fonctions de conversion on peu faire la même chose :slight_smile:

salut
merci pour vos reponse;
c un ds 1302 que j ai !
y a t il une difference avec ds1307 ?

:~ Erf Désolé j'avais lu DS1307, ben pour le coup la réponse m'intéresse, donc j'attends l'avis d'un expert miami? ..... :grin:

axel_67:
c un ds 1302 que j ai !
y a t il une difference avec ds1307 ?

Oups! J'avais pas vu, je lisait DS1307 :blush:

Le DS1302 c'est l'équivalent du DS1307 mais au lieu de ce contrôler par I2C il se contrôle par SPI.

J ai trouver une lib et un prog ici

http://www.henningkarlsen.com/electronics/library.php?id=5#struct_2

ca fonctionne !
reste un truc que je saisie pas
lorsque je remet le courant l heure revient au debut!

J'ai édité le titre.

MERCI

axel_67:
ca fonctionne !
reste un truc que je saisie pas
lorsque je remet le courant l heure revient au debut!

Tu as une pile de sauvegarde en état de marche ? Si la pile de sauvegarde est HS l'heure est remise à zéro à chaque perte d'alimentation.

J ai 2v !

axel_67:
J ai 2v !

2v c'est le minimum requis comme tension de sauvegarde, donc c'est bien ta pile qui déconne il faudrait du 3v pour que l'heure soit conservé correctement.

si je la remplace par des R3 AAA 1.5
c est possible?

comment je fais pour ecrire l'heure dans la ram ;
y as conflit dans mon prog " serial easy"
le moniteur m affiche l'heure juste que les secondes impair
la ligne secondes pair il affiche: 00.00.2000 -- 00:00:85
Au lieu de 12.01.2012 -- 20:25:59

axel_67:
si je la remplace par des R3 AAA 1.5
c est possible?

2 AAA ça le ferai, mais une pile bouton 3v serait plus compact et donc moins encombrant, à toi de voir.