AVR - DCF77 Uhr
Nachdem mich der Webserver einige Zeit beschäftigt hat, hier mal wieder ein neues Projekt. Dieses mal ein DCF77 Empfänger (Conrad) an einen Atmel. DCF wird von der Physikalisch-Technischen Bundesanstalt (PTB) Braunschweig betreut, und sendet seit 1959 eine Normalfrequenz und seit 1973 zusätzlich Datum und Uhrzeit. Das DCF77 Signal kommt aus Mainflingen in der nähe von Frankfurt. Die Sendeleistung beträgt 50kW. Die Zeitinformationen, die diese Station sendet, sind hochgenau, die Abweichung beträgt ca. 1 Sekunde in 300.000 Jahren. Bei jeder Sekunde wird ein Bit übertragen. Dabei wird genau am Anfang einer Sekunde, der Träger (Langwelle 77,5 kHz) auf 25% Trägeramplitude abgesenkt entweder 100ms oder 200ms lang. Das bedeutet ein Trägerabsenkung von 100ms Pulsweite ist eine logische "0" und eine Trägerabsenkung von 200ms eine logische "1". In der 59 Sekunde erfolgt zur Syncronisation keine Trägerabsenkung also keine 0 oder 1. Der Anschluß des DCF77 Empfänger erfolgt an Interrupt0 mit einen 10KOhm Widerstand nach VCC (+5V).
Die Sekundenmarken 1 - 14 wurden bisher für Betriebsinformationen verwendet, die nicht für DCF77 - Nutzer bestimmt sind, neuerdings verwendet Meteotime diese Bits für Wetterdaten. Diese Daten sind verschlüsselt und nicht ohne weiteres zu verwenden. Die Sekundenmarken 15 bis 19 informieren über die verwendete Sendeantenne, die Zeitzone und kündigen Beginn und Ende der Sommerzeit sowie Schaltsekunde an. Von der 20. bis 58. Sekunde wird die Zeitinformation für die nächste Minute übertragen.
Bit Bedeutung
0 Minute beginnt immer mit 0
1-14 (Wetterdaten von Meteotime verschlüsselt)
15 0=Normalantenne, 1=Reserveantenne
16 1=Am Ende dieser Stunde wird MEZ/MESZ umgestellt
17 0=MEZ, 1=MESZ
18 0=MESZ, 0=MEZ
19 1=Am Ende dieser Stunde wird eine Schaltsekunde eingefügt
20 Startbit ist immer "1"
21-27 Minute
28 Parität der Minute
29-34 Stunde
35 Parität der Stunde
36-41 Monatstag
42-44 Wochentag
45-49 Monat
50-57 Jahr
58 Parität Datum
59 Weder "0" noch "1" Sync
Hier ist noch der Source Code für einen Atmel Mega8/88/32, durch anpassen der Register (Interrupt) kann dieser auch für andere AVR´s benutzt werden.
Source Code Version1.6 für AVR - GCC (16.11.2009)
Was bedeutet nun DCF77? Also das "D" steht für Deutschland, "C" für den Langwellenbereich, "F" für die nähe Frankfurts und 77 für die Trägerfrequenz 77,5kHz.
Vorherige Seite: BaseKit AVR Experimentierboard
Nächste Seite: MMC-SD