Forum Moderator
Italy
Online
Brattain Member
Karma: 219
Posts: 16487
Don't know what I do
|
 |
« Reply #900 on: May 01, 2012, 03:02:24 am » |
Buongiorno a tutti, stò provando da un bel pò di giorni ad usare la swRTC, come ben sapete, però non riesco a trovare il delta corretto per far in modo che l'arduino non perda moltissimo in un giorno... Al momento ho risultati discontinui e sbaglia anche di diversi minuti in un giorno, può dipendere dal fatto che è alimentato dal pc?
Se usi un Arduino UNO dipende dal suo risonatore ceramico, che ha una precisione molto ridotta (con scarti anche di +-20% rispetto al clock reale). Una maggior precisione la puoi ottenere o con una scheda tipo Arduino 2009, dotata di un cristallo, o costruendo un circuito standalone sempre con un quarzo oppure usando un modulo RTC vero e proprio.
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 30
|
 |
« Reply #901 on: May 01, 2012, 03:13:40 am » |
Grazie Leo, allora aspetterò di aver tutti i pezzi, speravo di riuscire cmq a centrare un pochino con swrtc ma sembra davvero che l'arduino uno sia instabile per quanto riguarda il clock. Ho letto da qualche parte che c'era la possibilità di metter un secondo quarzo, è vero oppure ho capito male? se si come si potrebbe fare?
|
|
|
|
|
Logged
|
|
|
|
|
0
Online
Faraday Member
Karma: 17
Posts: 3925
Arduino rocks
|
 |
« Reply #902 on: May 01, 2012, 04:18:37 am » |
se hai la Release 1 di arduino Uno, puoi modificarla, dissaldando il risuonatore e mettendo un quarzo e i due condensatori, e' pero' un lavoro da fare con componenti smd, come puoi vedere tu stesso
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Italy
Online
Brattain Member
Karma: 219
Posts: 16487
Don't know what I do
|
 |
« Reply #903 on: May 06, 2012, 05:23:11 pm » |
Nel 1° post trovate la versione 1.0.3. Ho introdotto il supporto al clock a 4 MHz. Questa frequenza è però supportata solo per i micro della serie Atmega (Atmega8, Atmega48/88/168/328, Atmega644/1284, Atmega640/1280/1281/2560/2561) per via dei differenti prescaler dei micro della serie Attiny.
|
|
|
|
|
Logged
|
|
|
|
|
0
Online
Faraday Member
Karma: 17
Posts: 3925
Arduino rocks
|
 |
« Reply #904 on: June 02, 2012, 05:13:40 pm » |
leo oggi ho fatto caso ad una cosa, se diamo in pasto alla tua libreria questo: Serial.print(rtc.getHours(), DEC); Serial.print(":"); Serial.print(rtc.getMinutes(), DEC); Serial.print(":"); Serial.println(rtc.getSeconds(), DEC); Il risultato e' (per la mezzanotte) 0:0:0 dopo un secondodiventa: 0:0:1 ora la mia riflessione e' questa, normalmente un orario lo si immagina con 6 cifre 00:00:00 l'eliminazione degli zeri dal valore delle ore ci sta anche, cioe' e' una scelta soggettiva voler leggere alle 2 di notte 02 oppure solo 2 Pero' questa soggettivbita' secondo me viene meno nella gestione dei minuti e dei secondi, un orario scritto 0:1 non va bene, potrebbe far pensare che sia mezzanotte e 10. Non ci sono dubbi che e' meglio scrivere 00:01 oppure come dicevo e' accettabile 0:01 Stesso discorso con i secondi, 1 secondo e' meglio scriverlo 01 e non 1 Ora secondo te ha senso implementare questa risposta lato libreria ? oppure per te va bene cosi' e quindi chi lo vuole se lo fa lato codice ? Logicamente si puo' fare, ma resta il discorso che secondo me una libreria che risponde 0:01:01 alla mezzanotte un minuto un secondo e' meglio. Se ti va potresti cambiare questa cosa ed anche creare la getWeekday al posto di dover fare (rtc.weekDay(rtc.getTimestamp()));
|
|
|
|
|
Logged
|
|
|
|
|
Catania
Offline
Sr. Member
Karma: 0
Posts: 346
|
 |
« Reply #905 on: June 03, 2012, 03:48:33 am » |
Ora secondo te ha senso implementare questa risposta lato libreria ? oppure per te va bene cosi' e quindi chi lo vuole se lo fa lato codice ? Si, secondo me ha senso, perchè i valori numerici restituiti sono utili per fare calcoli e/o confronti lato codice. A parer mio, invece, si potrebbero aggiungere altri tre metodi che restituiscano la corrispondente versione "string" (ad esempio: rtc.getStrMinutes(), rtc.getStrSeconds(), etc.) Al limite anche una comoda rtc.getStrClock() per stampare velocemente l'orario completo senza dover concatenare i vari pezzi. 
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Italy
Online
Brattain Member
Karma: 219
Posts: 16487
Don't know what I do
|
 |
« Reply #906 on: June 03, 2012, 04:07:38 am » |
@testato: La libreria restituisce valori numerici, se controlli che ore sono alle 08:00 è normale che ti restituisca il byte 8 per le ore ed il byte 0 per i minuti. Sta a te poi trattare i dati per come ti servono, eventualmente anche convertendoli in stringa se li vuoi stampare.
@dalubar: forse ha senso solo il metodo che restituisce l'ora completa in formato stringa, al max con l'opzione di averla in formato OO:MM oppure OO:MM:SS. Mettere i 3 distinti metodi (per le ore, i minuti ed i secondi) mi pare solo un aggravio di calcoli dato che alla fine se si vuole l'orario in formato stringa immagino che non si voglia solo le ore o i minuti ma proprio tutto l'orario.
|
|
|
|
|
Logged
|
|
|
|
|
0
Online
Faraday Member
Karma: 17
Posts: 3925
Arduino rocks
|
 |
« Reply #907 on: June 03, 2012, 04:31:15 am » |
capisco, infatti non intendevo che la libreria sbagliasse. Alla fine sto' chiedendo la stessa cosa che ha chiesto dalubar, perche' in realta' per come risponde la libreria se sono le 12:30:55 la stampa mi rida' i 6 numeri, ma se mi quando ci sono in gioco gli zeri si deve trattare il risultato lato sketch. Sarebbe utile poter avere il risultato sia con i secondi che senza, i miei due orologi sono casualmente uno con i secondi uno senza  Ricapitolando: rtc.getWeekday() rtc.getStrClock() senza secondi rtc.getStrClock() con secondi forza a lavoro 
|
|
|
|
|
Logged
|
|
|
|
|
Catania
Offline
Sr. Member
Karma: 0
Posts: 346
|
 |
« Reply #908 on: June 03, 2012, 04:40:36 am » |
Ricapitolando: rtc.getWeekday() rtc.getStrClock() senza secondi rtc.getStrClock() con secondi forza a lavoro  
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10280
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #909 on: June 03, 2012, 04:42:21 am » |
[OT] In tutta questa vicenda della swRTC c'è qualcosa di incredibile: la patologica ricerca della precisione oraria da parte di un Napoletano  quando un suo illustrissimo predecessore, tale Pulcinella, diceva solennemente Tanno voglio murì, quanno tre rilorge vann' eguale

|
|
|
|
|
Logged
|
|
|
|
|
Catania
Offline
Sr. Member
Karma: 0
Posts: 346
|
 |
« Reply #910 on: June 03, 2012, 05:08:25 am » |
[OT] In tutta questa vicenda della swRTC c'è qualcosa di incredibile: la patologica ricerca della precisione oraria da parte di un Napoletano  quando un suo illustrissimo predecessore, tale Pulcinella, diceva solennemente Tanno voglio murì, quanno tre rilorge vann' eguale
 Oggi Pulcinella sarebbe vittima della sua stessa affermazione, dato che ci sono ben cinque orologi che fanno la stessa ora  1) Istituto Federale Fisico-Tecnico di Braunschweig (Germania) 2) National Physical Laboratory a Teddingtion (Londra) 3) National Institute for Standards e Tecnology di Fort Collins (Colorado) 4) Communications Research Laboratory (Tokio) 5) National Time Service Center (Cina).
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Italy
Online
Brattain Member
Karma: 219
Posts: 16487
Don't know what I do
|
 |
« Reply #911 on: June 03, 2012, 05:14:23 am » |
capisco, infatti non intendevo che la libreria sbagliasse.
1a legge della Leobotica: La libreria non sbaglia, sono gli utenti che la usano in modo sbagliato  Alla fine sto' chiedendo la stessa cosa che ha chiesto dalubar, perche' in realta' per come risponde la libreria se sono le 12:30:55 la stampa mi rida' i 6 numeri, ma se mi quando ci sono in gioco gli zeri si deve trattare il risultato lato sketch.
2a legge della Leobotica: Gli utenti devono usare gli strumenti così come gli vengono forniti  Sarebbe utile poter avere il risultato sia con i secondi che senza, i miei due orologi sono casualmente uno con i secondi uno senza  Ricapitolando: rtc.getWeekday() rtc.getStrClock() senza secondi rtc.getStrClock() con secondi forza a lavoro  3a legge della Leobotica: Il Creatore non può apportare modifiche che infrangano la 1a o la 2a legge della Leobotica (soprattutto se ciò viene chiesto dopo che il Creatore ha lavorato il 2 giugno  )
|
|
|
|
|
Logged
|
|
|
|
|
Rome (Italy)
Offline
Tesla Member
Karma: 74
Posts: 7373
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
|
 |
« Reply #912 on: June 03, 2012, 05:18:36 am » |
1a legge della Leobotica: La libreria non sbaglia, sono gli utenti che la usano in modo sbagliato  +1 2a legge della Leobotica: Gli utenti devono usare gli strumenti così come gli vengono forniti  +2 3a legge della Leobotica: Il Creatore non può apportare modifiche che infrangano la 1a o la 2a legge della Leobotica (soprattutto se ciò viene chiesto dopo che il Creatore ha lavorato il 2 giugno  ) +3 
|
|
|
|
|
Logged
|
|
|
|
|
0
Online
Faraday Member
Karma: 17
Posts: 3925
Arduino rocks
|
 |
« Reply #913 on: June 03, 2012, 05:24:31 am » |
 grandi tutti vado a mangiare buon appetito
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10280
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #914 on: June 03, 2012, 05:30:23 am » |
 grandi tutti vado a mangiare buon appetito APPROVO in pieno tutte le leggi di Leo72th (una specie di Imperatore  ) A Testato, dimentichi il più importante: 6) Nixie Clock temperature compensated (Casa di Testato, dintorni di Napoli) Buon appetito a tutti, oggi sono dalla mia adorata mamma, dubito di ritornare operativo prima delle 17 
|
|
|
|
|
Logged
|
|
|
|
|
|