Bascom ds1307 mit Bascom und Sommer/Winterzeit Umstellung.

rici35

Neues Mitglied
05. Nov. 2010
4
0
0
Sprachen
Hi,

ich möchte eine Uhr mit dem DS1307 bauen. Hat jemand eine fertige Lösung für die Sommer/Winterzeit Umstellung?

Danke.

Gruß

Rici
 
Der ds1307 ist quasi sowas wie'ne Armbanduhr (ohne Zifferblatt). Ohne Zeitzeichensynchronisation, und ohne automatischer Sommer/Winterzeitumschaltung. Wenn ich das recht in Erinnerung habe aber mit Schaltjahrbehandlung.
Er zählt also nur die eingestellte Zeit weiter, und gibt sie aus. Für alles andere brauchst Du einen "intelligenten IC und/oder ein entsprechendes Programm".

Oder anders gesagt: Welcher Kontroller, welche Programmiersprache, welche Kenntnisse hast Du bereits, was hast Du diesbezüglich selbst schon erreicht?
WO SOLLEN WIR JETZT HELFEN?
(So sind das zuwenige Informationen...)

Grüße
LotadaC
 
Hallo,

danke für die Antwort.
Ich habe das Prinzip des DS1307 verstanden. Ich schaffe es auch schon die Uhrzeit reinzuschreiben und auszulesen.

Mein Problem ist nur, dass ich eine Uhr mit automatischer Sommerzeit, Winterzeit Umstellung brauche.

Das hat doch sicherlich schon jemand gemacht. Ich kenne mich ein wenig mit Bascom aus.

Ich möchte aber das Rad nicht neu erfinden.

Und ich finde die ds1307clock_ger.lib nicht zum Download.

Vielen Dank,

Rici



WO SOLLEN WIR JETZT HELFEN?
(So sind das zuwenige Informationen...)

Grüße
LotadaC
 
Sommer-/Winterzeit

Hallo Rici,

es waere in der Tat schoen zu wissen, welchen Kenntnisstand Du hast....
Ich bin in der gluecklichen Lage, dass ich mir ueber Sommer- und Winterzeit hier in Ethiopia keine Gedanken machen muss - dafuer haben die hier eine ganz andere Zeitrechnung...wie dem auch sei...

Um die Umstellung Sommer/Winter vorzunehmen hast Du zwei Moeglichkeiten:

1) Du fragst in Deinem Programm regelmaessig das Datum und die Uhrzeit ab und vergleichst dies dann mit einem hinterlegten Datum/Uhrzeit und schreibst dann einen neuen Wert in den DS1307....
Dies setzt jedoch voraus, dass Du eine Art Tabelle/Datenbank in Deinem Programm hast.....
Die entsprechenden Daten kannst Du z.B. Wiki entnehmen

2) Die Umstellung basiert ja auf einer Berechnung unter Beruecksichtigung der Umlaufbahn unserer Erde um die Sonne sowie (wenn man z.B. es ganz genau nimmt) der veraenderung der Erdachse und Rotationsgeschwindigkeit.
(Jetzt hab ich aber wieder einen los gelassen - muss ja auch mal zeigen was im Astro-Physik Studium gelernt habe :cool:)
Da es aber nicht so genau sein muss, hat man sich darauf geeinigt, von Normalzeit (Winterzeit) auf Sommerzeit am letzten Sonntag im Maerz umzustellen.
Es wird dann die Zeit von 2:00 auf 3:00 vorgestellt. Die Rueckstellung erfolgt dann am letzten Sonntag im Oktober von 3:00 auf 2:00.

Mit der dayofweek() Funktion kannst Du Dir den Wochentag raussuchen und entsprechend eine Routine schreiben die das auswertet und entsprechend agiert.

Damit sind wir dann wieder bei Deinem Kenntnisstand.....
Wenn Du Hilfe brauchst sag bescheid, wir helfen gerne beim lernen!

LG aus Addis (uebriegens hier hat das Jahr 13 Monate)


Klaus
 
Kleines Beispiel

Hallo Rici,

ich habe mich gerade nach dem Dinner nochmals hingesetzt und Dir ein kleines Beispiel gemacht fuer die Auswertung...

Code:
' unbedingt vorher noch die Uhr configurieren und die entsprechenden Routinen zur Abfrage der Zeit und derren Zuweisung einfuegen....
dim dow as  Byte
dim day as Byte
config date = dmy, separator = .
dow = dayofweek(date$)
if dow = 6 and _month = 3 and time$ = "02:00:00" then
  day = _day
  day = day + 7
  if day > 31 then
    gosub SETSUMMERTIME
  end if
end if

Summertime:
' Hier die Routine zum aendern der Zeit einfuegen...
return
' Selbiges dann halt fuer Monat 10 zur Einstellung der Normalzeit....

Ganz wichtig ist, dass Du natuerlich die Uhr configurierst und die entsprechend Routinen fuer die Abfrage der Zeit vom DS1307 und derren Zuweisung mit einbindest.
Schau dir mal die BASCOM Hilfe dazu an (dayofweek(); config clock; date$; time$) ist eigentlich alles schon da...mit Ausnahme der Normalzeit/Winterzeit...aber das
kannst Du ja wie oben beschrieben loesen....


LG

Klaus
 
2) Die Umstellung basiert ja auf einer Berechnung unter Beruecksichtigung der Umlaufbahn unserer Erde um die Sonne sowie (wenn man z.B. es ganz genau nimmt) der veraenderung der Erdachse und Rotationsgeschwindigkeit.
(Jetzt hab ich aber wieder einen los gelassen - muss ja auch mal zeigen was im Astro-Physik Studium gelernt habe )
ja, da hast du wirklich einen losgelassen. Da hast du wohl nicht aufgepaßt im Studium der Astro-Physik. ;)
Die Rotationsgeschwindigkeit ändert sich natürlich nicht (nur -20µs pro Jahr), nur die Ausrichtung der Erdachse mit ihrer Neigung zur Umlaufbahn bedingt die langen Tage im Sommer und die kurzen im Winter.
Die Verschiebung der Zeit (aka Sommerzeit) hat politische Gründe, die Energieeinsparung wurde bereits widerlegt.

SickBoy
 
Naja 20µS sind im Prinzip eine Menge!

Hallo SickBoy,

ob es nun 20µS sind weiss ich nicht mehr ganz genau, aber 20µS sind im Prinzip eine ganze Menge. Es waere ja nur zu beachten, wenn man die genaue Uhrzeit zur bestmoeglichen Anpassung ermitteln wollte.
Das das ganze nicht wirklich Energie einspart ist schon klar......aber im Prinzip wollte ich ja nur mal auf den Putz hauen :rolleyes:. Aber 20µS...wieviele Neuronen koennten in der Zeit wohl aktivert werden????? ;)

Aber im Ernst, diese dumme Umstellung bei euch kostet jedes Jahr zig Tausenden an EULARES. Da hab ich doch wenigstens etwas positives hier :cool:

LG aus Addis


Klaus
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)