Pages: 1 ... 24 25 [26] 27 28 ... 72   Go Down
Author Topic: swRTC  (Read 79113 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Faraday Member
**
Karma: 47
Posts: 5961
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

spetta spetta, pero' c'e' uno sketch che fa da orologio per arduino, e funziona pure, quindi nella libreria TIME ufficiale gia' esiste la funzione che stai creand tu con la tua lib ?  smiley-eek-blue smiley-eek-blue

Code:
/*
 * TimeRTC.pde
 * example code illustrating Time library with Real Time Clock.
 *
 */

#include <Time.h>  
#include <Wire.h>  
#include <DS1307RTC.h>  // a basic DS1307 library that returns time as a time_t

void setup()  {
  Serial.begin(9600);
/*  setSyncProvider(RTC.get);   // the function to get the time from the RTC
  if(timeStatus()!= timeSet)
     Serial.println("Unable to sync with the RTC");
  else
     Serial.println("RTC has set the system time");      
*/
}

void loop()
{
   digitalClockDisplay();  
 //  delay(1000);
}

void digitalClockDisplay(){
  // digital clock display of the time
  Serial.print(hour());
  printDigits(minute());
  printDigits(second());
  Serial.print(" ");
  Serial.print(day());
  Serial.print(" ");
  Serial.print(month());
  Serial.print(" ");
  Serial.print(year());
  Serial.println();
}

void printDigits(int digits){
  // utility function for digital clock display: prints preceding colon and leading 0
  Serial.print(":");
  if(digits < 10)
    Serial.print('0');
  Serial.print(digits);
}
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 574
Posts: 12643
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Lo dicevo io che finiva che ci mordevamo le chiappe con sta storia smiley-mr-green
Non perdiamo di vista che l'obiettivo di Leo era evitare di usare hardware esterno, stai dicendo che lo sketch che hai postato fa diventare Arduino un RTC senza quarzi esterni e quant'altro smiley-eek-blue? cosa cavolo dici Willy?
Logged


0
Offline Offline
Faraday Member
**
Karma: 47
Posts: 5961
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

prova a caricarlo e vedi, lanci la seriale e lui inizia a contare dal 1 gennaio 2000 senza null'altro attaccato  smiley-eek-blue
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22938
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Beh, è normale visto che funzioni visto che usa millis()... basta dare un'occhiata al suo sorgente.
La swRTC usa invece un timer tutto suo interrupted ha la correzione per allineare il tempo calcolato al tempo reale.
E' un approccio differente ma, secondo me, molto migliore dato che non usa funzioni precostituite di Arduino ma direttamente gli interrupt.
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 574
Posts: 12643
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Beh, è normale visto che funzioni visto che usa millis()... basta dare un'occhiata al suo sorgente.
La swRTC usa invece un timer tutto suo interrupted ha la correzione per allineare il tempo calcolato al tempo reale.
E' un approccio differente ma, secondo me, molto migliore dato che non usa funzioni precostituite di Arduino ma direttamente gli interrupt.
cioè è possibile usarlo mentre sul micro gira un altro software che usa la tua lib come se fosse un RTC esterno, giusto? MI pareva questo l'obiettivo iniziale.
Logged


Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22938
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Esatto.
La forza di una routine che gira in un interrupt è che è trasparente allo sketch dell'utente. Quest'ultimo può accedere al primo ma è come accedere ad un sistema chiuso.

Immagina di ordinare una pizza per telefono o di fartela in casa. Nel primo caso alzi la cornetta, fai l'ordine, poi torni a lavorare finché non suonano alla porta e te la consegnano. Nel secondo caso, sei costretto ad interrompere ciò che stavi facendo, prendere gli ingredienti, impastare la pizza e metterla in forno, dopodiché tornare periodicamente a vedere se è pronta.
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 574
Posts: 12643
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Esatto.
La forza di una routine che gira in un interrupt è che è trasparente allo sketch dell'utente. Quest'ultimo può accedere al primo ma è come accedere ad un sistema chiuso.

Immagina di ordinare una pizza per telefono o di fartela in casa. Nel primo caso alzi la cornetta, fai l'ordine, poi torni a lavorare finché non suonano alla porta e te la consegnano. Nel secondo caso, sei costretto ad interrompere ciò che stavi facendo, prendere gli ingredienti, impastare la pizza e metterla in forno, dopodiché tornare periodicamente a vedere se è pronta.
Leo smiley-fat smiley-fat smiley-fat smiley-fat mi vuoi far crepare? hai notato che sono sparito 4 ore? ero tranquillo nel mio lab quando mi arriva LA TELEFONATA dell'anno "scommetto che hai dimenticato il nostro anniversario! smiley-twist! smiley-twist", «chi io? fossi matta? e come potrei, dopo SOLI 26 anni? smiley-confuse smiley-kiss smiley-sad-blue smiley-red smiley-mr-green» Stavo giusto per venirti a prendere per andare a cena nel miglior Ristorante della zona, era una sorpresa e me l'hai guastata smiley-mr-green smiley-mr-green".
Ho rastrellato le mie figliole in fretta e furia, in 3/4 d'ora tutti tirati a lucido, minchia che mangiata, e che conto smiley-money smiley-money smiley-money, ora sto scrivendo sdraiato, non riesco a stare seduto, troppa compressione sullo stomaco smiley-fat E TU MI PARLI DI PIZZA? smiley-twist smiley-twist smiley-twist
Logged


0
Offline Offline
Faraday Member
**
Karma: 47
Posts: 5961
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Buon anniversario  :

Leo quindi ad esempio se suo usa la Time non sui può usare millis negli scketch perché influenzerebbe anche l' orario ?

Ma come si usa questa Time per RTC esterno? Negli esempi non trovo nulla
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 574
Posts: 12643
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Buon anniversario  :

Leo quindi ad esempio se suo usa la Time non sui può usare millis negli scketch perché influenzerebbe anche l' orario ?

Ma come si usa questa Time per RTC esterno? Negli esempi non trovo nulla

Grazie! aggiusta la prima frase che non è molto comprensibile a prima occhiata.
Logged


Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22938
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Condoglianze  smiley-lol smiley-lol

Cmq mi par di capire che la Time non pregiudichi l'uso di millis perché esegue dei calcoli propri. Poi non so, andrebbe visto meglio il codice.
Logged


0
Offline Offline
Faraday Member
**
Karma: 47
Posts: 5961
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusa menny ma sto scrivendo dal cellulare. Leo cmq ha capito la domanda.
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 574
Posts: 12643
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Condoglianze  smiley-lol smiley-lol
sei un vero amico  smiley-kiss

@ Testato, ora l'ho capita anch'io, ci sono un paio di parole "suo" "sui" ma sono io in piena crocodile-digest e ho poco sangue al cervello smiley-eek-blue
Me ne vado a dormire, buonanote ragazzi, a domani smiley-lol
Logged


0
Offline Offline
Faraday Member
**
Karma: 47
Posts: 5961
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Aggiungo il risultato di  un bel test, il mio RTC reale con 1307 ha perso 7 secondi in un giorno, alla faccia della precisione smiley
Leo a questo punto credo che la tua libreria potrebbe davvero spaccare se si risolve la questione consumi e si aggiunge il deltaT funzionante
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

0
Online Online
Shannon Member
****
Karma: 132
Posts: 10498
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hai testato l precisione della libreria modificata che ho postato al messaggio #363
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

0
Offline Offline
Faraday Member
**
Karma: 47
Posts: 5961
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ho smesso i test su questa libreria perche' cmq voglio chiudere questo progetto, altrimenti rimango bloccato su questo, e visto che non posso rinunciare alla batteria di nackup per ora non ci sono sbocchi.
Cioe' la questione consumi e' prioritaria rispetto alla precisione.
Se ci sono sviluppi sulla questione consumi posso ricominciare con i test
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Pages: 1 ... 24 25 [26] 27 28 ... 72   Go Up
Jump to: