RTC DS 1302 probelma impostazione

salve, il mio problema è che in pratica il modulo anziche segnare l ora da cui indico di partire, va a fatti suoi

il mio sketch è questo

#include <DS1302.h>

DS1302 rtc(13, 8, 9);



void setup(){
  rtc.halt(false);
  rtc.writeProtect(false);
  rtc.setDOW(SATURDAY);        // impostazione giorno
  rtc.setTime(24,60, 60);     // impostazione ora minuti secondi
  rtc.setDate(11, 23, 2016);   // impostazione mese giorno anno (mm/gg/aa)
  
Serial.begin(9600);

}

void loop(){
 //funzione orologio/calendario

  Serial.println(rtc.getTimeStr());

  Serial.println(rtc.getDOWStr(FORMAT_SHORT));

  Serial.println(rtc.getDateStr());
  delay (1000);
}

ma nella seriale esce:

Monday
19.01.2001
00:08:41
Monday
19.01.2001
00:08:42
Monday
19.01.2001
00:08:43

qualcuno sa come mai? come risolvo?

La batteria di backup è ben collegata e carica ?

Guglielmo

si tutto collegato

Da dove hai scaricato la libreria per il DS1302 ? Hai il link ?

Guglielmo

nel caso mi posteresti un programma breve che secondo te va bene?

Clash230:
nel caso mi posteresti un programma breve che secondo te va bene?

Vedo che la libreria è corredata di un esempio per regolare l'ora e leggerla ... usa quello :slight_smile:

Guglielmo

non va, è errato

In che senso ? Che errore ti da ?

Guglielmo

ho cambiato libreria preso tutto da qui sketch compreso

https://drive.google.com/file/d/0ByKMX29rFLseTDRBTy1yWV9GaEk/view

ma ancora una volta non va

Non hai risposto alla mia domanda ...
... la libreria era giusta quella di prima e l'esempio deve andare. Che errore ti da ?

Guglielmo

pre favore lascia stare la vecchia libreria, mi controlli il programma nel link di qusta nuova? l ho caricato cosi com è ma non va, che devo fare?

// DS1302_Serial_Easy (C)2010 Henning Karlsen
// web: http://www.henningkarlsen.com/electronics
//
// A quick demo of how to use my DS1302-library to 
// quickly send time and date information over a serial link
//
// I assume you know how to connect the DS1302.
// DS1302:  CE pin    -> Arduino Digital 2
//          I/O pin   -> Arduino Digital 3
//          SCLK pin  -> Arduino Digital 4

#include <DS1302.h>

// Init the DS1302
DS1302 rtc(2, 3, 4);

void setup()
{
  // Set the clock to run-mode, and disable the write protection
  rtc.halt(false);
  rtc.writeProtect(false);
  
  // Setup Serial connection
  Serial.begin(9600);

  // The following lines can be commented out to use the values already stored in the DS1302
  rtc.setDOW(FRIDAY);        // Set Day-of-Week to FRIDAY
  rtc.setTime(12, 0, 0);     // Set the time to 12:00:00 (24hr format)
  rtc.setDate(6, 8, 2010);   // Set the date to August 6th, 2010
}

void loop()
{
  // Send Day-of-Week
  Serial.print(rtc.getDOWStr());
  Serial.print(" ");
  
  // Send date
  Serial.print(rtc.getDateStr());
  Serial.print(" -- ");

  // Send time
  Serial.println(rtc.getTimeStr());
  
  // Wait one second before repeating :)
  delay (1000);
}

sto usando questo esempio sulla seriale e questo è il risultato

Seg. 02.00.2000 -- 00:00:02
Seg. 02.00.2000 -- 00:00:03
Seg. 02.00.2000 -- 00:00:00
Seg. 02.00.2000 -- 00:00:01
Seg. 02.00.2000 -- 00:00:00
Seg. 02.00.2000 -- 00:00:01
Seg. 02.00.2000 -- 00:00:00
Seg. 02.00.2000 -- 00:00:11
Seg. 02.00.2000 -- 00:00:00

numeri completamente a caso..
puo essere che il modulo rtc sia rotto ?

SE i collegamenti sono fatti come previsto dagli esempi (usando i pin che vengono indicati al loro interno), SE i fili fanno BENE contatto e SE la batteria è veramente carica ... beh, allora si, può anche essere un modulo difettoso, anche se mi sembra strano ... ::slight_smile:

Guglielmo

ma che ora é "rtc.setTime(24,60, 60); " ??

Lo sketch che mostri nel Tuo promo post non va con la libreria che nomini in #4.
L' esempio della libreria é questo:

Il secondo sketch dovrebbe andare bene per la seconda libreria.
Hai collegato il modulo RTC giusto?
Fai una foto dove si vedono bene i collegamenti.

Ciao Uwe

buongiorno,
vedo che anche altri usano il ds1302 io l'ho abbandonato sperando nel ds 1307 :slight_smile:
do il mio piccolissimo contributo, io usando le librerie in giro per la rete mi son trovato bene, anche a me succedeva l'errore nella visualizzazione dei numeri e ho risolto mettendo una resistenza da 220 sul data e una resistenza da 1k sul gnd. prova prima con tutte e due se non va prova con una e poi con l'altra resistenza. io avevo lasciato quella del gnd e la visualizzazione era corretta avevo solo il problema che non teneva la batteria (non so ancora il perchè, anche se questa è tutt'ora carica) e quindi ho optato per il ds 1307 che devo ancora testare :slight_smile:

buona giornata

ok grazie, ho provato con la 220 sul data pin e va perfettamente. grazie

di niente :wink: :wink: