Wer misst, misst Mist...

Jaja, messen müsste man können: Nachdem sich die Binäruhr nun mittels des DCF77-Signals auf eine genaue Uhrzeit einstellen kann, ist mir aufgefallen, dass nicht etwa die Binäruhr pro 24 Stunden eine Sekunde falsch geht, sondern meine Referenzuhr g... wahrscheinlich ist da eine Batterie leer. Das bedeutet nun, dass sogar ohne DCF-Synchronisation die Ganggenauigkeit der Binäruhr schon sehr gut ist :)

Ich habe jetzt damit begonnen, ein paar Weckerfunktionen zu implementieren. Dafür habe ich der Uhr einen Taster zum Wechsel zwischen den verschiedenen Modi und noch zwei zusätzliche (rote) LEDs spendiert, die den Alarmstatus (ja, genau: zwei LEDs = zwei Weckzeiten) anzeigen: Leuchtet die erste rote LED, ist Alarm 1 aktiviert. Blinkt diese, stellt man gerade die erste Weckzeit ein. Wenn sie langsamer blinkt, ist der Alarm aktiv. Genauso funktioniert die zweite LED. Blinken beide LEDs, kann man die Uhrzeit ändern. Dafür habe ich einen eigenen Modus gewählt, damit im "normalen" Modus die Zeit nicht verstellt wird und die beiden anderen Taster zum Aktivieren der beiden Alarme genutzt werden können.

Momentan verhält sich die Uhr etwas merkwürdig: Sie springt ab und zu unmotiviert von einem Modus in den nächsten ohne dass eine Taste gedrückt worden wäre. Merkwürdig... ich muss wohl nochmal auf die Suche nach einem Kurzschluss oder Wackelkontakt gehen.

Außerdem habe ich einen 12 Ohm Serienwiderstand, der den Strom für alle LEDs begrenzt hat, gegen einen Transistor getauscht. Dieser wird über einen Fotowiderstand gesteuert, um die LEDs bei Dunkelheit etwas zu dimmen, damit bei Nacht nicht das ganze Zimmer beleuchtet wird :)

Den aktualisierten Schaltplan dazu gibt es demnächst, wenn alles so klappt, wie es soll...

Ich habe auch mal mit der Sounderzeugung mit Hilfe des AVR experimentiert: Wieder über einen Transistor habe ich einen Lautsprecher angeschlossen. Der Transistor wird diesmal von einem Port des AVR gesteuert, der mit einer bestimmten Frequenz ein- und ausgeschaltet wird. Im Moment benutze ich eine Überlagerung von 1000 und 440Hz. Dadurch entsteht ein Geräusch, das einen bestimmt wach kriegt, aber auch nicht zu fies klingt.

Ich habe den Lautsprecher noch nicht an die Binäruhr angeschlossen, da ich erst einmal das Problem der springenden Modi lösen möchte, bevor ich die nächste Baustelle anfange. Außerdem weiß ich auch noch nicht genau, wie ich die Sounderzeugung sinnvoll in den Code der Uhr einfüge, aber das wird sich schon noch lösen lassen... auf jeden Fall gibt es deswegen aber auch keinen neuen Code für euch. Ach ja: Ich kann nur empfehlen, das DCF-Modul mit der Antenne auf einen starren Streifen Pappe zu kleben. Seitdem ich das gemacht habe, habe ich viel weniger Probleme damit. :)