Go Down

Topic: Ds1307 e strano problema con librerie che non settano i secondi (Read 1 time) previous topic - next topic

djdanielb

May 05, 2013, 12:17 am Last Edit: May 05, 2013, 12:24 am by djdanielb Reason: 1
Salve ragazzi per diversi miei progetti ho utilizzato il ds1307 il real time clock. Dunque ho provato diverse librerie e funzionano tutte ma con nessuna riesco ad impostare l'ora dandogli i secondi diersida Zero.

Cioè in pratica utilizzo la stessa stringa che uso per settare l'ora i minuti il giorno ma se imposto con lo stesso modo i secondi questi sempre a zero riaetono. Qualcuno sà il perchè ??

Ad esempio se uso questa

setTime(hr,min,sec,day,month,yr);

Comunque siamo messi insecondi all'avvio ripartono da zero

Grazie mille
Daniele

leo72


djdanielb

In che senso ??
Dopo dal pc posterò il codice però facendo

setTime(21,13,50,5,11,12);

setTime(hr,min,sec,day,month,yr);

L'ora deve essere 21:13 e 50 secondi del 5 novembre 2012

Invece viene tutto così eccetto che i secondi sono a 0

leo72

Oltre al codice, metti anche un link alla libreria che stai usando.

djdanielb


uwefed

#5
May 05, 2013, 11:12 pm Last Edit: May 05, 2013, 11:13 pm by uwefed Reason: 1
Quote
Ho usato sia la DS1307 che la RTClib stessa cosa

prego i LINK da dove hai scaricato le librerie. Se noi cerchiamo le librerie non é detto che troviamo le stesse.
Ciao Uwe

Testato

È la libreria, l'ho usata alche io e l autore non l ha finita. La gestioneb secondi nonè implementata.
Posta il link per una verifica
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

djdanielb

Grazie ragazzi dopo appena avrò un attimo la posterò. Qui dall'ufficio è sempre un casotto.

D.

djdanielb

ragazzi posto la libreria

spero di risolvere !

grazie mille per l'aiuto

Daniele

leo72

E' una libreria molto vecchia, e non dovrebbe girare sull'IDE 1.0.x.
Ma tu compili con l'IDE 002x?

Inoltre non vedo il metodo setTime che dici di usare te, ma solo un generico set() che accetta solo 2 parametri.

Ti consiglio di cercare su internet con la chiave "arduino ds1307 library" un'altra liberia.

djdanielb

Leo grazie per la risposta

come detto ho provato due librerie diverse ( e la RTClib setta i secondi mentre questa no )

il comando usato per settare ora e data su questa libreria è

Code: [Select]

RTC.stop();
    RTC.set(DS1307_DATE,giorno);       //set the date
    RTC.set(DS1307_MTH,mese);        //set the month   
    RTC.set(DS1307_YR,anno);         //set the year
    RTC.set(DS1307_HR,pra);         //set the hours
    RTC.set(DS1307_MIN,minuti);        //set the minutes       
    RTC.set(DS1307_SEC,secondi);             //set the seconds to ZERO
    RTC.set(DS1307_DOW,giornosettimana);        //set the day of the week  RTC.set(DS1307_DOW,(set_dow + 1));
    RTC.start();
   


qualunque valore messo a SECONDI il DS riparte da 0

che fare ??

si certo uso la 0023 cerco una nuova libreria DS1307 ma come essere certo che non sia vecchia o difettosa come questa ??

non posso passare alla RTClib perchè ho tanto codice scritto da cambiare e sopratutto perchè il metodo per settare l'ora è completamente diverso

Grazie mille

Daniele

leo72

Se è la libreria che si comporta così, o la modifichi aggiungendo tu un setTime che accetti ore, minuti e secondi oppure te la tieni così. Non vedo molte vie d'uscita, se non vuoi cambiarla.

gpb01

Prova a vedere se questa versione che ti allego qui ti va bene ... credo sia più aggiornata ...

Guglielmo
Search is Your friend ... or I am Your enemy !

djdanielb

Dunque mi metterò di buona lena e farò la migraione di libreria

ho anche realizzato un programma .exe che gira su pc che via seriale SPARA l'ora aggiornata con il pc all'orologio.

per ovviare a q eusto problema facevo SPARARE l'ora allo scoccare dei minuto.

vabbè migro libreria

unico problema ( per me un pò lo è ) è che questa libreria setta INSIEME i tre valori data ( giorno mese e anno ) e l'orario

ore minuti secondi

il che obbliga ad inviarli ogni volta ma io facevo modificare anche solo uno di questi per l'ora legale solare ( che pare questo gestisca da solo )

infine come si comporta con l'anno ?? quando mi restituisce il valore mi dà YYYY ? io sto lavorando con solo YY e tocca metterci le mani sopra...

Certo modificare ad un orologio finito la  libreria DS1307 vuole dire solo di rifare tutto da capo...

Caspiterina!!!

gpb01

... scusa, hai visto la libreria che ti ho allegato ??? Ti da lo stesso problema ???

Guglielmo
Search is Your friend ... or I am Your enemy !

Go Up