Anwendungen von
AVR-Einchip-Controllern AT90S, ATtiny, ATmega und ATxmega Quarzoszillator für DCF77-Uhr mit ATmega16
Ein Quarzoszillator für den DCF77-AM-Superhet-Empfänger
Bitte beachten: diese Seite ist noch nicht
in der Praxis getestet.
1 Warum und für was ein Quarzoszillator?
Der Empfänger, wie beschrieben, verwendet einen TCA440 um die
Oszillatorfrequenz von (455 + 77,5 kHz) mit der Empfangsfrequenz von
77,5 kHz zu mischen, um die Zwischenfrequenz von 455 kHz zu
erhalten. Die Originalauslegung verwendet eine Spule, einen Kondensator
und einen C-Trimmer, um die Oszillatorfrequenz mit dem TCA440-internen
Oszillator zu erzeugen. Es ist daher klar, dass die Einstellung der
Oszillatorfrequenz temperaturabhängig ist. Die Empfangsfeldstärke
im Sommer und Winter variiert etwa mit einem Faktor zwei. Bei mir, 28 km
entfernt von der DCF77-Antenne, mag das noch hinnehmbar sein, in
größerer Entfernung zu Mainflingen oder bei starken
Störsignalen neben der DCF77-Frequenz kann das zum Problem werden.
Ich denke daher schon seit längerem darüber nach, wie man die
Oszillatorfrequenz stabil auf 532,5 kHz einstellen kann. Natürlich
gibt es keine 532.5-kHz-Quarze zu kaufen, es muss daher auf eine höhere
Frequenz ausgelegt und auf 532.5 kHz (oder 377.5 kHz)
heruntergeteilt werden.
2 Auswahl der Quarzfrequenz
Um optimale im Handel verfügbare Quarze und Quarzoszillatoren
auszuwählen, habe ich alle kriegbaren im LibreOffice-Berechnungsblatt
hier zusammengestellt und
die nächstliegenden ganzzahligen Teiler für 532,5 und
377,5 kHz berechnet,
die Abweichungen der erzeugten geteilten Frequenz von den beiden
Sollfrequenzen gebildet (in % und in Hz).
Das ist ein Auszug aus den verfügbaren Einzelquarzen. Die Abweichungen
beim 6,4- und beim 16-MHz-Quarz von 833 (additive Mischfrequenz) bzw. beim
9,8304-MHz-Quarz von 592 Hz (subtraktive Mischfrequenz) von der
Sollfrequenz sind verschmerzbar, weil der Eingangskreis mit der Ferritantenne
eine viel breitere Selektivität aufweist.
Das sind die verfügbaren Quarzoszillatoren (Auszug) und die Differenzen
beim 14.31818-MHz (subtraktiv) und beim 16.00 MHz-Oszillator liegen
ebenfalls unter einem kHz.
Beides, ein Einzelquarz als auch ein Quarzoszillator, ist also für
diesen Zweck gut geeignet.
3 Der Controller ATtiny25 für diesen Zweck
Teilen kann man die Quarzfrequenz entweder mit einem TTL-Divide-by-N-Zähler
(old school) wie einem 74LS93-Zähler mit einem 74LS85-Vergleicher), mit
einem CMOS-Divide-by-N-Zähler 4018 oder 4059 oder halt mit einem
Mikrocontroller, hier einem ATtiny25. Der Controller hat folgende Vorteile:
er kommt in einem kleinen 8-poligen Gehäuse daher,
gegenüber TTL hat einen sehr viel geringeren Strombedarf,
er kann durch jede Ganzzahl zwischen 1 und 256 teilen,
ein Quarzoszillator ist schon vorhanden und braucht nicht extra
zugebaut werden, nur eine Fuse ist zu ändern,
er produziert gleichzeitig das normale und das invertierte
Signal, um zwei symmetrische Sinusse für den TCA440 zu erzeugen.
Natürlich muss man in der Lage sein, den ATtiny25 zu programmieren.
Das Teilen durch 13 wird mit dem 8-Bit-Timer/Counter TC0 im ATtiny25
erledigt. Dieser wird in den CTC-Modus versetzt (Clear Timer on Compare
match) und der Teilerwert Minus 1 wird in die beiden Vergleicher-Register
geschrieben. Die Ausgabepins OC0A und OC0B werden in den Toggle-Modus
versetzt und im Richtungsregister als Ausgang definiert. Um ein
gegenphasiges Signal zu kriegen wird einer der beiden Ausgänge
zu Beginn auf High gesetzt, der andere auf Low gelassen. Das produziert
ein gegenphasiges Ausgangssignal an den beiden Pins. TC0 wird dann
mit einem Vorteiler von 1 gestartet.
Beim Programmieren des ATtiny25 in der fertigen Schaltung nicht vergessen,
dessen internen RC-Taktoszillator auf den externen Quarz umzustellen.
4 Sinuskurven aus Rechtecken
Der ATtiny25 produziert zwei invertierte Signale an seinen OC0A- und
OC0B-Ausgängen. Da der TCA440 zum Mischen aber Sinussignale
erwartet, müssen diese Rechtecke etwas umgeformt werden, in einem
vierstufigen RC-Netzwerk.
Unter Verwendung des RC-Netzwerk-Simulators aus
dieser Webseite,
Kapitel 4, habe ich vier R mit 3k3 und C mit 100pF bei 378 kHz
kombiniert, was schöne Sinussignale mit ausreichender Amplitude
erzeugt, mit denen der TCA440 an seinen Oszillatorpins gespeist werden
kann.
5 Schaltung des Oszillators
Das ist schon alles. Damit gehört das ständige Nachjustieren
der Oszillatorfrequenz bei TCA440 der Vergangenheit an.
Bitte beachten, dass ich das noch nicht getestet habe.
Lob, Tadel, Fehlermeldungen, Genöle und Geschimpfe oder Spam bitte über
das Kommentarformular an mich.