Uhrzeit- & Datumsberechnung

Harry
Moderator
Avatar
Gender:
Location: zwischen Augsburg und Ulm
Age: 59
Posts: 2133
Registered: 03 / 2003
Subject:

Uhrzeit- & Datumsberechnung

 · 
Posted: 29.12.2013 - 11:41  ·  #1
Hallo @ all,

hat einer von euch zufälligerweise einen Programmcode mit dem man aus der UTC-Zeit die richtige Zeit und das Datum berechnen kann .... ja ist nicht schwer, aber unter Berücksichtigung der Sommer-/Winterzeit und falls möglich mit automatischer Zeitzonenkorrektur aufgrund des Längengrades 👼

Mein Problem: ich müsste das letzte Wochenende im März und Oktober berechnen für die Sommer-/Winterzeitumschaltung. Nur wie ?

Gruss und nen guten Rutsch
Harry
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Re: Uhrzeit- & Datumsberechnung

 · 
Posted: 02.01.2014 - 11:52  ·  #2
Hallo Harry,

ich wünsche euch ein frohes neues Jahr :)

Also ich habe das ganze noch nicht gebraucht, ich habe vor ein paar Jahren mal die Feiertage errechnen müssen (Schaltuhr), das habe ich in Delphi ganz gut hinbekommen.

ich würde das so in etwa angehen, kann aber sein das es da was leichteres gibt.
Im Prinzip brauchste nur den aktuellen Wochentag am 1. 1. und zählst die Tage inWochen hoch solange bis nicht mehr März ist sondern April ist und gehst dann wieder zurück bis der Wochentag wieder Sonntag ist, schon hast Du den letzten Sonntag im März und im Oktober genauso.

Wenn kein Schaltjahr ist, ist hast Du ja immer 89 Tage bis zum 31.März da würde ich ansetzen,

Aktueller Wochentag am 1.1. = Mittwoch

Aktueller Wochentag 1.1. + 89 Tage = 31.03. Wochentag = Montag
Und bei Schaltjahr sind es eben 90Tage ....
Einmal brauchst Du meines erachtens den Wochentag und das Startjahr am 1.1. von da an kannst Du alle folge Jahre berechnen.

Dann machste eine CASE Anweisung, .....wenn

Montag : -1
Dienstag: -2
Mittwoch: -3
.....


Und so weiter. Und schon hast Du genau das Schaltdatum, so in der Art würde ich es anstellen, aber vielleicht gibt es ja auch eine andere Möglichkeit. Bei den alten Dos-Systemen gab es auch ein Startdatum, von da an wurde alles berechnet.

Ich habe die Datums und Zeitfunktion vom AVRco noch nicht so genutzt, wennn ich ein Gerät mit Zeit und Datum erstellt habe, benutze ich meist einen externen Baustein mit Batterie-Buffer. Leider gibt es den 128er XMEGA mit 100Pins nicht mit interner Uhr und Batteriebufferung :(

Aber aus dieser logischen Berechnung lässt sich natürlich ohne Probleme eine Funktion erstellen.

Gruss
Thorsten
rh
Administrator
Avatar
Gender:
Location: Germany
Age: 24
Homepage: e-lab.de
Posts: 5558
Registered: 03 / 2002
Subject:

Re: Uhrzeit- & Datumsberechnung

 · 
Posted: 02.01.2014 - 12:40  ·  #3
und wie siehts aus mit DCF77 ??
Würde doch auch einiges hergeben...

rolf
Harry
Moderator
Avatar
Gender:
Location: zwischen Augsburg und Ulm
Age: 59
Posts: 2133
Registered: 03 / 2003
Subject:

Re: Uhrzeit- & Datumsberechnung

 · 
Posted: 02.01.2014 - 12:59  ·  #4
Hallo @ all,

ich habs inzwischen selber rausbekommen (Code stelle ich die Tage mal ein). Hab 4 Funktionen programmiert:

  • Tag-Nummer im März: Anfang Sommerzeit (Ergebnis Integer)
  • Tag-Nummer im Oktober: Ende Sommerzeit (Ergebnis Integer)
  • Funktion Datum in der Sommerzeit ? (Ergebnis Boolean)
  • Korrektur der Zeit anhand Sommerzeit und Längengrad (Ausgabe auf Grafik-LCD)


@Rolf: DCF77 weltweit ist leider nicht möglich ;)

Gruss
Harry

PS: Geografische Korrektur kann ich leider nur bedingt testen
PS#2: Datumskorrektur muß ich noch machen
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   79   93 · Page-Gen-Time: 0.035528s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI