mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik DS1307 Wie viel Tage sind verstrichen


Autor: Nitram Exset (slexx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abnd,

ich stehe vor einem Problem.
Ich habe einen Arduino und eine DS1307.
Jetzt ist meine Frage:

Wie berechne ich jetzt die Differenz zweier Daten?

z.B.: 21.07.16 bis 14.08.2016 an der Hand abgezählt sind es 24 Tage.
Aber wie bekommt man das in einem Code unter?

Es gibt einen julianischen Kalender, kann man das irgendwie verwenden?

Vlt hat jemand Anregungen, Tipps oder vlt hat es jemand schon mal 
gemacht!

:)

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
benutzt du die DS1307 LIB?

RTC.time2000

liefert dir doch Sekunden und die Differenz / (3600*24) die Tage

Schaltsekunde mal vernachlässigt!

: Bearbeitet durch User
Autor: Draco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Unix Time Stamp wird dein Freund:

https://de.wikipedia.org/wiki/Unixzeit

Autor: Nitram Exset (slexx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> benutzt du die DS1307 LIB?
>
> RTC.time2000
>
> liefert dir doch Sekunden und die Differenz / (3600*24) die Tage
>
> Schaltsekunde mal vernachlässigt!

Ich habe die DS1307new.lib!

Also die 2000 steht für das Jahr oder wie?

Also wenn ich z.b.

vergangeneZeit = RTC.time2000;

dann zeigt er mir die Zeit vom 01.01.2000 bis heute in Sekunden an????

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Martin T. schrieb:
> vergangeneZeit = RTC.time2000;
>
> dann zeigt er mir die Zeit vom 01.01.2000 bis heute in Sekunden an????

klat die merkts du dir für ein Datum und bildest die Differenz für ein 
anderes Datum.

Wenn du unbedingt "bequem" rechnen willst speichere die aktuelle, fülle 
die RTC mit Datum deiner Wahl, lese RT.time2000 und bilde die Differenz. 
Danach kannst du ja deine Uhr wieder stellen, die "Messung" dauert keine 
Sekunde und somit geht deine Uhr auch nicht falsch.
Solltest du Bedenken haben warte auf die nächste Sekunde, dann hast du 
für alles ein Sekunde Zeit ohne das deine Uhr falsch läuft.

: Bearbeitet durch User
Autor: Nitram Exset (slexx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach ich glaube ich weiß wie du das meinst.

Also angenommen ich lese time2000 am 01.08.16 dann wäre die variable 
dann z.b. 500.000.000 mioSekunden, am 10.08.16 lese ich dies in eine 
andere variable neu, wären dann ohne dass es jetzt stimmt z.b. 
500.010.000 mio.Sekunden, macht eine Differenz von 10.000 TSekunden! 
Habe ich das so richtig gecheckt?
Und genau so brauche ich das, mir reicht die Differenz in Sekunden 
völlig aus!

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
perfekt verstanden!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.