Hallo Gemeinde, ich programmiere gerade eine DCF-77 Uhr mit Graphic-LCD, welche mit 8 MHz Systemtakt läuft. Da aus dieser Zeitbasis kein genauer Sekundentakt abzuleiten ist, habe ich probiert, den Timer2 mit einem 32,768 kHz Quarz zu takten. Leider ist es mir nicht gelungen, das System zum Schwingen zu bewegen, der TOV2 wird also nie ausgelöst. Da ich nicht weiss, ob es am Quarz liegt oder an der Initialisierung des asynchronen Modus, hier meine Fragen : 1. wird der Quarz ohne Kondensatoren angeschlossen? 2. hat jemand diese RTC zum Laufen bekommen (bitte ASM-Routine)? vielen Dank in voraus Jürgen
zu1: der quarz braucht auch zwei kondensatoren siehe datenblatt. dort werden meist vom hersteller die empfohlenen werte angegeben. bei mir sind das 12pF. Gruss, BAB
Warum lässt sich aus 8 MHz kein genauer Sekundentakt ableiten? Prescaler 256, Compare-Register 31250, und schon hast du deinen Sekunden-Interrupt.
Nun, das mit den C's werde ich probieren, selbst in den Appnotes von Atmel sind allerdings keine Kondensatoren zu sehen. Da ich den Timer1 für die DCF-Pulsaufbereitung brauche, kann ich diesen nicht nehmen (Input Capture Function) und die anderen sind ja nur 8 bit breit.
Du kannst auch den 8 Bit-Timer mit Prescaler 2 nehmen und bei jedem Überlauf eine 16 Bit-Variable hochzählen. Wenn der Wert 15625 erreicht hat ist die Sekunde um und die Variable wird wieder auf 0 gesetzt.
@Jürgen, warum kannst Du T1 nicht nehmen, der läuft doch weiter ? Die Input Capture Function beeinflußt ihn in keinster Weise. Abgesehen davon würde ich die Input Capture Function nicht nehmen, sie macht das DCF77-Signal nur unnötig störempfindlich. Schon eine kurze Störnadel von 125ns (bei 8MHZ) löst ja die Input Capture Function aus. Man muß doch nur die 0- von den 1-Bits unterscheiden, eine supergenaue Messung der Impulslänge ist daher unnötig. In meinem Beispiel in der Codesammlung mache ich das alles nur mit T0. Peter
@Peter Da ich den Noise Canceler aktiviert habe, sind Störimpulse nicht sind kritisch, ausserdem liegt der ICP beim Mega161 auf dem PortE und damit verschwende ich kein komplettes 8bit Port. Ich werde mir die Sache aber trotzdem ansehen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.