7-Segment Werkstattuhr

Hallo Flo!

Wie war das jetzt?
Hast du die Platinen schon fertig? :hmmmm:
Das ganze Multiplexen könntest du dir sonst ggf. sparen.....


Ich habe noch mal eine Bitte....
Schau dir den ersten Beitrag doch noch mal genau an.
Schaltplan und Codebeispiel.
Beachte mal die IC`s CD4543 und das 74HC595 dafür.....

Wenn die Hardware aber schon fix und fertig ist, dann stellen wir deinen Code "später" mal etwas um.

Grüße,
Cassio
 
Hallo Flo!

Ach quatsch.... vergiss das mit den CD4543.
Du hast deine Platine zur Ansteuerung ja schon längst fertig. :rolleyes:

War wohl schon etwas spät bzw. früh, heute Morgen. :eek:


Dann schauen wir doch mal, ob wir dein Programm nicht mal etwas umstrukturieren können.
Vielleicht solltest du dir dazu mal den Befehl "Lookup()" ansehen.

Was soll denn letztlich passieren?
Du schaltest die einzelnen Stellen, Zehner-Stunde--> Einer-Stunde--> Zehner-Minute--> Einer-Minute durch und legst immer das passende Byte für die einzelnen Segmente an.

Überlegen wir mal......
Das Zerlegen der BCD-Werte in zwei einzelne Zahlen hast du ja schon realisiert.

Nun hast du also vier Variablen mit binären Ziffern, entsprechend der Uhrzeit.
Zum Beispiel:
21:34 Uhr
H_stunden = &B0000_0010 = 2 dezimal
L_stunden = &B0000_0001 = 1 dezimal
H_minuten = &B0000_0011 = 3 dezimal
L_minuten = &B0000_0100 = 4 dezimal

Natürlich kannst du diese Werte nicht zu den Anzeigen schicken.......
du musst also eine Art "Segmentbild" erstellen.

Die Zwei wäre also:
(gemeinsamer Anodenanschluss, bei "0" wird zu GND durchgeschaltet)
a b c d _ e f g DP
0 0 1 0 _ 0 1 0 1

.---a---
|.........|
f.........b
|.........|
.---g---
|.........|
e.........c
|.........|
.---d---

Damit ergibt also eine binäre "2" das Segmentbild= &B00100101 ......bzw. &H25 ;)


Da du aber immer nur EINE Stelle mit dem passenden Segmentbild ansteuern kannst, benötigst du theoretisch auch immer nur eine Variable zum Senden.
Dafür hast du bei dir die Variable "Ausgabe" erstellt.

Nun kommt zum Füllen der "Ausgabe" mal "Lookup()" ins Spiel.

Dafür musst du aber vorher noch etwas hinzufügen.
Am ENDE deines Programmes legst du dir eine Datentabelle mit allen Segmentbildern an.
Diese Tabelle bekommt einen Namen, z.B. "Segmentbild" und wird als DATA-Zeile ausgewiesen.

WICHTIG ist hierbei.....
Die Tabell muss NACH dem "End" angefügt werden und darf KEIN "Return" enthalten!

Prinzipieller Programmaufbau wäre dann als so:
Code:
Do
.
.
Loop


Subroutine1:
.
Return


Subroutine2:
.
Return


End


Segmentbild:
DATA &HFF , &H00 , &H25


Die DATA-Zeile zählt von "0" an, also musst du die Segmentbilder nur der Reihe nach von 0 bis 9 hinterlegen.
Du kannst natürlich noch eine "10" verwenden, damit bei 01:23 Uhr die erste Null nicht angezeigt wird sondern alle Segmente deaktiviert bleiben (&HFF).


Mit dem Befehl "Lookup()" kannst du nun zur Datentabelle springen und das entsprechende Segmentbild laden.
Aufrufen kannst du es folgender Maßen:
Code:
Ausgabe = Lookup(H_stunden , Segmentbild)

Nun kommt dein "Stellen-Zähler" für die Anzeigenstelle noch hinzu und du kannst alles rausschieben..... und das immer wieder im "Kreis". :)


Ich denke mal, dass du alles soweit verstanden hast, weil das Meiste davon hattest du ja schon realisiert. ;)

Grüße,
Cassio
 
Hallo ihr da draussen:ciao:

lange habe ich nichts mehr von mir hören lassen. Die Uhr hat jetzt ein schönes weisses Gehäuse aus Plastik bekommen ( erstes mal Plastik fräsen........schmelz,schmelz:p ). Der SUB-D Anschluss führt 12V, GND, USB und ISP. Eine Plexiglasplatte mit roter Folie schützt die Segmente.

Danke für deine Hilfe Cassio, das programm ist jetzt umgeändert worden und ist jetzt übersichtlicher. An dieser Stelle einfach mal Danke an alle die mir geholfen haben. Ich hoffe dass ich euch auch mal helfen kann .

Das Problem mit den Ziffern (1 heller als Rest) habe ich nicht behoben, da ich dafür die ganzen Widerstände umändern müsste. Hoffentlich überleben die Anzeigen das:stupido2: . Auf den Bildern sieht man durch die Folie gut durch (wegen Blitz) , dies ist aber in Wirklichkeit nicht so.

Mfg,
Flo
 

Anhänge

  • 7 Segment.jpg
    7 Segment.jpg
    65,6 KB · Aufrufe: 49
  • Gehäuse.jpg
    Gehäuse.jpg
    99,6 KB · Aufrufe: 43
Hallo Flo!

Hey... das ist ja SUPER geworden! :party:
Das Gehäuse und die Front sind auch wirklich top!

Der Gehäusebau ist ja immer mein Schwachpunkt..... von daher dauert es noch ein Weilchen bis du Bilder mit Gehäuse von meiner Uhr sehen kannst. :rolleyes:


Ich finde es auch gut, dass du uns nicht vergessen hast und deine fertige Einheit hier noch zeigst.
Genial wäre es noch, wenn du deinen endgültigen Programmcode hier auch noch einstellen würdest. ;)




Was die Problematik mit den unterschiedlichen Helligkeiten und den Widerständen betrifft.....
Kannst du die Widerstände vor den Anoden nicht durch Drahtbrücken ersetzen, die Leiterbahnen vor dem ULN2803 unterbrechen und 1206er-SMD Widerstände dazwischen löten?
Der Platz müsste doch ausreichen.


Ich gratuliere jedenfalls zum sehr gelungenen Projekt! :)

Grüße,
Cassio
 
Hi,

sieht nicht schlecht aus ;) Braucht man wenigstens keine Brille um die
Uhrzeit abzulesen :D

Was die Problematik mit den unterschiedlichen Helligkeiten und den Widerständen betrifft.....
Kannst du die Widerstände vor den Anoden nicht durch Drahtbrücken ersetzen, die Leiterbahnen vor dem ULN2803 unterbrechen und 1206er-SMD Widerstände dazwischen löten?
Der Platz müsste doch ausreichen.
Würde ich auch empfehlen. Wär schade wenn nach nem Jahr auf einmal die
LEDs nach und nach die Flügel streichen.

Gruß
Dino
 
Werkstattuhr

Hallo Leute, habe vor einiger Zeit auch mal so etwas gemacht.
War eine schöööne Arbeit. ;)
Gruß Sofimole
 

Anhänge

  • uhr.jpg
    uhr.jpg
    103,3 KB · Aufrufe: 60
Hallo Sofimole!

Ist das eine optische Täuschung, oder stehen da wirklich zwei Europaletten nebeneinander? :eek:

Wo hast du die denn her? War das mal `ne Stadionanzeige?


Wenn dazu noch Unterlagen hast, dann mach doch einen neuen Thread auf und stell das Ganze mal vor.
Allein schon die Anzeigen mit den vielen einzelnen LED`s wären ja für viele interessant.
Wie aber schon erwähnt..... dann bitte in einem eigenen Thread! ;)


Grüße,
Cassio
 
Den Code habe ich ja glatt vergessen sehe ich! Das muss nachgeholt werden:p

Mit Cassios Hilfe ist ja jetzt schon mal die Tabelle und ähnliches drinnen. Das einzige Problem dass sich mir stellt ist das Multiplexen der einzelnen Anzeigenbzw. Ziffern . Ich habe dies aber auch nochmal im Code vermerkt.

Des öfteren Blitzen mal halbe Ziffern für ne halbe Sekunde auf. Ich habe aber keine Ahnung wieso. Ich vermute einen Übertragungsfehler zu den Registern. Das könnte daran liegen dass ich ein bisschen zu schnell Multiplexe, aber der nächst tiefere Prescaler wäre zu langsam:eek: .



CodeBox BascomAVR
'              / Segmentuhr mit 100mm Anzeigen\
'                 Datum: 10.Februar 2011
'                 Entwickler: Eberl Florian
'                 Copyright: Eberl Florian
'           Änderungen: Shiftout, LED Punkte auf PB0
'          Probleme: Ziffernmultiplexen
'          Anmerkungen: Danke an das AVR-Praxis Forum ;)




$regfile = "m168def.dat"
$crystal = 12000000
$baud = 38500


'I/Os
Si Alias Portc.3
Config Si = Output

Takt Alias Portc.2
Config Takt = Output

Rck Alias Portc.1
Config Rck = Output

Punkte Alias Portb.0
Config Portb.0 = Output


' Variablen
Dim R As Byte
Dim Z As Byte
Dim Ausgabe As Byte
Dim I As Byte
Dim S As Byte
Const Load_timer1 = 43286
Dim Delete As Byte
Dim Datum As Byte
Dim Anzeige As Bit
Dim Zd As Byte
Anzeige = 0


'Zeitdaten für Register
Dim L_minuten As Byte
Dim L_sekunden As Byte
Dim L_stunden As Byte

Dim H_minuten As Byte
Dim H_sekunden As Byte
Dim H_stunden As Byte

Dim L_monat As Byte
Dim H_monat As Byte
Dim L_tag As Byte
Dim H_tag As Byte


'Zeitdaten für DS1307
Dim Sekunde As Byte
Dim Minute As Byte
Dim Stunde As Byte
Dim Tag As Byte
Dim Wochentag As Byte
Dim Monat As Byte
Dim Jahr As Byte


' Einstellen der I2C Schnittstelle
Config Sda = Portc.4
Config Scl = Portc.5

' Addresse des DS1307
Const Ds1307w = &HD0
Const Ds1307r = &HD1


'Timer
On Timer0 7segment                                          'Interrupt-Routine für Timer0-Overflow
Config Timer0 = Timer , Prescale = 64                       'Takt: Quarz/Prescale  (möglich: 1, 8, 64, 256, 1024)
Enable Timer0
Start Timer0                                                'Timer0-Overflow-Interrupt einschalten

On Timer1 Blinken                                           'Interrupt-Routine für Timer1-Overflow
Config Timer1 = Timer , Prescale = 256                      'Takt: Quarz/Prescale  (möglich: 1, 8, 64, 256, 1024)
Enable Timer1                                               'Timer0-Overflow-Interrupt einschalten
Enable Interrupts                                           'Interrupts global zulassen
Load Timer1 , Load_timer1                                   'Lädt den Timer auf einen wert vor
Start Timer1






'##########################Beginn der Hauptschleife#################################

Do

I2cstart                                                    ' Start
I2cwbyte Ds1307w                                            ' DS1307 schreiben
I2cwbyte 0                                                  ' DS1307 Adresszeiger auf 0 stellen

I2cstart
I2cwbyte Ds1307r                                            ' DS1307 lesen (ab vorher eingestellter Adresse 0)
I2crbyte Sekunde , Ack                                      ' Sekunden
I2crbyte Minute , Ack                                       ' Minuten
I2crbyte Stunde , Ack                                       ' Stunden
I2crbyte Wochentag , Ack                                    ' Wochentag (in Dummy gelesen da von date$/time$ nicht genutzt)
I2crbyte Tag , Ack                                          ' Tag
I2crbyte Monat , Ack                                        ' Monat
I2crbyte Jahr , Nack                                        ' Jahr
I2cstop

'Sekunde = Makedec(sekunde)
Jahr = Makedec(jahr)


'Umrechnung
L_minuten = Minute And &B0000_1111
H_minuten = Minute And &B1111_0000
Shift H_minuten , Right , 4

L_stunden = Stunde And &B0000_1111
H_stunden = Stunde And &B1111_0000
Shift H_stunden , Right , 4

L_monat = Monat And &B0000_1111
H_monat = Monat And &B1111_0000
Shift H_monat , Right , 4

L_tag = Tag And &B0000_1111
H_tag = Tag And &B1111_0000
Shift H_tag , Right , 4



'Aussortierung der Nullen beim Datum
If H_tag = 0 Then
H_tag = 10
End If

If H_monat = 0 Then
H_monat = 10
End If


'Kontrollausgabe
Print "Htag  " ; H_tag ; "L_Tag  " ; L_tag ; "H_Monat  " ; H_monat ; "L_Monat  " ; L_monat
Print "Tag  " ; Tag ; "Monat  " ; Monat


Waitms 20


Loop


'#################################Ende der Hauptschleife########################



7segment:


If Z = 4 Then                                               'Zähler
Z = 0
End If

Incr Z


'##############################Multiplexen der Ziffern##########################

If Anzeige = 0 Then                                         'Auswahl der Ausgabe
Select Case Z
   Case 1:
         Ausgabe = L_minuten
   Case 2:
         Ausgabe = H_minuten
   Case 3:
         Ausgabe = L_stunden
   Case 4:
         Ausgabe = H_stunden
End Select

Else

Select Case Z
   Case 1:
         Ausgabe = L_monat
   Case 2:
         Ausgabe = H_monat
   Case 3:
         Ausgabe = L_tag
   Case 4:
         Ausgabe = H_tag
End Select

End If



I = Lookup(ausgabe , Segmenttabelle)                        'Suchen der Ziffern


Shiftout Si , Takt , I , 0                                  'Ausgabe der Ziffern




'################################Multiplexen der Segmente########################


'Wieso funktioniert das nicht??????????????????????????????????????????????????

'S = Lookup(z , Zifferntabelle)
'Shiftout Si , Takt , S , 0

'??????????????????????????????????????????????????????????????????????????????


Select Case Z
   Case 1:                                                  '00001000
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 1
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
   Case 2:                                                  '00000100
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 1
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0

   Case 3:                                                  '00000010
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 1
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0

   Case 4:                                                  '00000001
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 0
         Takt = 1
         Takt = 0
         Si = 1
         Takt = 1
         Takt = 0

End Select


Rck = 1                                                     'An Pins übergeben
Rck = 0

Return



Blinken:

Incr Datum

If Datum = 5 Then                                           'Datums-Anzeige Timer
Anzeige = 1
Datum = 0
Else
Anzeige = 0
End If                                                      'Doppelpunkt blinken lassen

If Anzeige = 0 Then
Toggle Punkte
Else
Punkte = 1
End If


Return
End



'###################################TABELLE######################################
Segmenttabelle:
Data &H7E , &HC , &HB6 , &H9E , &HCC , &HDA , &HFA , &HE , &HFE , &HDE , &H0

Zifferntabelle:
Data &H8 , &H4 , &H2 , &H1

 
Hallo Flo!

Ich habe mir mal erlaubt deinen Programmcode mit Farbe zu versehen. ;)
So ist er einfach übersichtlicher und leichter zu lesen.... gerade wenn er etwas länger ist!


Es können hier ja noch mal einige BASCOM-User (mich eingeschlossen) drüber schauen.....
Vielleicht finden sie ja deine "Lichtblicke". ;)



Hast du die Sache mit den Widerständen noch geändert?
Es müsste doch ein Leichtes sein, die ursprünglichen Widerstände an den Anodenabgängen mit Drahtbrücken zu versehen und dafür welche in die unterbrochenen Kathoden-Leiterbahnen einzubauen.
Wäre doch schade, wenn so eine coole Uhr nicht perfekt wär. :)


Grüße,
Cassio
 
Das könnte daran liegen dass ich ein bisschen zu schnell Multiplexe, aber der nächst tiefere Prescaler wäre zu langsam:eek: .


Hallo Flo!

Ich habe dein Programm nur mal durchgesehen und ich würde nicht behaupten, dass ich den Ablauf nun schon komplett im Kopf habe, aber dein Timer0 kommt mir auch mächtig kurz vor. :hmmmm:

Wenn ich mir die ISR dazu so ansehe dann bezweifle ich, dass diese immer fristgerecht in den 1,34ms fertig wird..... bevor der nächste Interrupt wieder ansteht.

Bevor wir aber am Programm "rumschrauben"....
hast du mal versucht den Timer0 während der Abarbeitung der ISR abzuschalten?

Einfach beim Eintritt in die Sub "7Segment" gleich ein "Stop Timer0" einfügen und
vor den "Return" der ISR wieder "Start Timer0".
Auf diese Weise ist der Timer0 solange ruhig gestellt, wie deine Bearbeitung läuft.

Außerdem könnte ich mir vorstellen, dass sich Timer0 und Timer1 irgendwann mal "treffen".
Da laut Vektortabelle der Interrupt des Timer0 Vorang vor dem Interrupt des Timer1 hat (wenn ich das noch richtig im Kopf habe), wird die ISR "7segment" zwar nicht von er ISR "Blinken" unterbrochen.... aber es steht irgendwann sofort nach dem Verlassen der ISR "7segment" die ISR "Blinken" an.
Ich könnte mir daher vorstellen, dass die Daten zu den Schieberegistern dann manchmal ganz kurz "gemischt" werden.


Wie aber oben schon geschrieben....
Schalte den Timer0 zum Test erst mal ab, solange seine eigene ISR abgearbeitet wird.



Btw:
Was mir auch nicht gefallen würde, ist die extrem häufige Abfrage der RTC.
Da würde ich an deiner Stelle noch mal nachbessern.....
Hat die DS1307 nicht auch ein Flagsignal, dass alle 500ms wechselt? :hmmmm:
Zum Einen könntest du das Signal abfragen und dann entscheiden, ob du die Daten alle neu auslesen musst und
zum Anderen könntest du dann damit dein Blinken realisieren. :)
Bei der PCF8583 gibt es diese Flags...... mit der DS1307 kenne ich mich leider (noch) nicht aus.
Eventuell kann Dino dazu mal etwas schreiben.... der hat auf alle Fälle eine in der Bauteilschublade. ;)


Grüße,
Cassio
 
Hallo zusammen,

Hat die DS1307 nicht auch ein Flagsignal, dass alle 500ms wechselt? :hmmmm:
Zum Einen könntest du das Signal abfragen und dann entscheiden, ob du die Daten alle neu auslesen musst und
zum Anderen könntest du dann damit dein Blinken realisieren. :)
Bei der PCF8583 gibt es diese Flags...... mit der DS1307 kenne ich mich leider (noch) nicht aus.
Eventuell kann Dino dazu mal etwas schreiben.... der hat auf alle Fälle eine in der Bauteilschublade. ;)

also im Datenblatt steht da folgendes drin ...

SQW/OUT (Square Wave/ Output Driver) - When enabled, the SQWE bit set to 1, the SQW/OUT pin
outputs one of four square wave frequencies (1 Hz, 4 kHz, 8 kHz, 32 kHz). The SQW/OUT pin is open
drain which requires an external pullup resistor
. SQW/OUT will operate with either Vcc or Vbat applied.

Man kann sich also ein 1Hz-Signal generieren. Damit hat man ganz nebenbei
seinen SecTic ;)

An den Ausgang hab ich zum testen immer ne LED drangesetzt. Aber ACHTUNG!
Wie im Datenblatt steht ist der Ausgang mit OpenDrain/OpenCollector. Er
schaltet also nur nach GND und benötigt darum einen PullUp-Widerstand.

Gruß
Dino
 
Hallo Dino!

Danke, für dem prompten Service. :)

Ich weiß nun aber nicht, ob Flo noch einen Draht nachlöten möchte....
Gibt es dieses Signal z.B. auch in einem "Statusbyte", dass man abfragen kann?

So müsste er nur immer wieder das "Statusbyte" auslesen und dann prüfen, ob eine Sekunde vergangen ist um die anderen Daten auch noch zu holen...... oder eben noch zu warten.

Bei der PCF8583 sind das Bit0 und Bit1 des Control/Status-Byte.
Wenn kein Alarm vorliegt dann:
Wechselt das Bit0 alle 500ms... um z.B. eine LED blinken zu lassen...
und das Bit1 wechselt zusätzlich noch alle 30 Sekunden.


Die Variante mit dem nachgelöteten Draht ist natürlich sauberer und verursacht viel weniger "Traffic" auf dem BUS.... und weniger "Hektik" für den AVR. ;)


Grüße,
Cassio
 
Hi,

Ich weiß nun aber nicht, ob Flo noch einen Draht nachlöten möchte....
Gibt es dieses Signal z.B. auch in einem "Statusbyte", dass man abfragen kann?
Anhang anzeigen DS1307_RTC.pdf
also auf Seite 5 steht das mit dem ControlRegister. Das scheint aber nur ein
Register zum schreiben zu sein. Also man kann die Frequenz einstellen und
ob der Ausgang mit einer Frequenz belegt werden soll. Sonst kann man den
Ausgang noch mit einem Bit manuell ein/aus schalten. Mit Abfragen steht
da leider nichts.

Am besten geht es eigentlich wirklich mit dem SQWE-Pin an einen INT-Eingang
des Atmels. Ich hab mal dran gedacht für so einen "Firlefanz" den Eingang
des AnalogComparators zu mißbrauchen. Er erzeugt einen Interrupt und wird
eigentlich sonst sehr selten benötigt. Man hat also noch INT0/INT1 frei und
besitzt trotzdem einen Interrupt-Eingang ;)

Gruß
Dino
 
Hallo,

der Tipp mit dem SQWE Pin ist echt toll (gleich mal in meiner Datenblattsammlung vermerkt:) ) aber ich habe schon die komplette Uhr verklebt und verschraubt. Das würde mehr als eine Stunde dauern bis ich die wieder offen hätte. Ich habe es jetzt so gelöst, dass der RTC nur alle 500ms abgefragt wird und falls ich die Uhr wieder aufschrauben muss, werde ich dann die Methode mit dem SQWE Pin benutzen.

Die Widerstände der Uhr wurden gleich dann umgelötet als ihr es mir gesagt hattet. Jetzt ist sie deutlich heller und endlich leuchten alle Ziffern gleichmäßig:adore: . Ich habe jetzt in der ISR den Timer angehalten und dann am Ende wieder gestartet. Das hat jetzt auch gegen die mysteriösen Ziffernstücke geholfen:D .

Die Uhr wird von einem Pollin Schaltnetzteil versorgt, das ich irgendwann mal bei denen aus der Restekiste im Laden gekauft habe. Bis jetzt tut es seinen Dienst und hält brav genau seine 12 V:cool: . Es ist doch immer wieder toll wenn man Sachen findet, von denen man nie gedacht hätte dass sie mal nützlich wären:D .

Mfg,
Flo
 
Hallo,

heute ist was wirklich was komisches passiert: Die Uhr hat sich um 24 Std zurückgestellt! Ich hab gedacht ich seh schlecht. Ich habe dann natürlich die neue Zeit wieder raufgeladen und jetzt gehts wieder. Trotzdem wärs interessant zu wissen was da vor sich gegangen sein könnte. Habt ihr da eine Ahnung?

Mfg,
Flo
 
Hallo Flo!

Da du ja letztlich nur einmal die RTC mit Daten fütterst und danach nur noch die neuen Werte ausliest, kann ja eigentlich nichts die Uhr verstellen.
Momentan fällt mir nichts ein, was diesen Effekt zur Folge haben könnte.

Wäre ja nun erst mal interessant, ob sich dieser Effekt nach der gleichen Zeit wiederholt.


Grüße,
Cassio
 
Hi,

ich spiele ungern Leichengräber aber ich hole den Thread nochmal hoch. Die Uhr ist bis jetzt (also doch 4 Jahre) perfekt durchgelaufen. Da ich nun mit der Werkstatt auf den Dachboden gezogen bin wollte ich ihr DCF77 nachrüsten. Voller entsetzen stellte ich fest dass mir die Layouts fehlten. Und hier ein riesen Danke dass ihr die Daten so lange aufgehoben habt trotz starker Änderungen des Forums.....dank diesen Threads muss ich nicht alles nachzeichnen ;) .

Gruß,
Florian
 
  • Like
Reaktionen: Dirk
dank diesen Threads muss ich nicht alles nachzeichnen

Hi Florian!

:D Es ist doch OK, wenn du den Thread nocheinmal vervor holst! So ein Forum hat also noch andere Vorteile, an die man garnicht denkt ;)

Noch viel Erfolg beim Nachrüsten von DCF77.

Dirk :ciao:
 
Hi Florian,

Voller entsetzen stellte ich fest dass mir die Layouts fehlten. Und hier ein riesen Danke dass ihr die Daten so lange aufgehoben habt trotz starker Änderungen des Forums.....dank diesen Threads muss ich nicht alles nachzeichnen ;) .

genau aus dem Grund wird bei einem Forum immer zickig reagiert wenn jemand Bilderhoster verwendet. Da wären dann spätestens 6-12 Monate später nur noch leere Kästchen. :D Schön das dir das "externe Backup" geholfen hat :cool:

Gruß
Dino
 

Ü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)