Dokumentation zu "DCF" Version 1.0 ================================== Entstehung ­­­­­­­­­­ Dieses Prg entstand notwendigerweise als ich mir von einem hinreichend bekannten deutschen Elektronik-Versand einen Bausatz für einen DCF-77 Empfänger bestellte. Nach dem erfolgreichen Zusammenbau des tatsächlich nicht mehr als streichholzschachtelgroßen SMD-Bausatzes wollte ich die an- kommenden Informationen auch auswerten. Und da konnte ich mich natürlich nicht mit der mitgelieferten C64-Diskette zufrieden geben. Hardware ­­­­­­­­ Z.Zt. läuft das Prg mit oben beschriebenem Empfangs-Modul, dessen TTL-Ausgang anstatt des Joystick-Feuerknopfes an die CIA geht. Für einen anderen Weg des Signals in den Computer läßt sich das Prg problemlos anpassen, zumindest solamge es sich um einen CIA-Port handelt. Bei einer anderen HF-Schaltung des Empfängers müssen ggf. die Konstaten (zumindest 'maxShort') angepaßt werden. Programmlauf ­­­­­­­­­­­­ Wenn das Prg gestartet wird, wartet es zuerst auf eine "Sekundenanfangsmarke", welche dadurch gekennzeichnet ist, da die sekündliche Pegelabsenkung einmal ausfällt. Darauf werden die einzelnen Bits gesammelt und sofort ausgewertet. Mit dem optionalen "Debug-Modus" kann manb sich das genau anschauen (*). Wenn alle Daten zusammen sind (nach genau einer weiteren Minute) werden, wenn gewünscht (*), Datum, Status-Bits und Zeit ausgegeben und die Systemzeit des Amiga entsprechend gesetzt. Mann hat dann mit "date" oder der "clock" die genaue (!), offizielle (!) Zeit der BR Deutschland und kann die Zeitansage im Radio auf ihre Genauigkeit überprüfen... Bei mir steht "dcf" zumindest in der "startup-sequence" - direkt hinter "setclock". (*) Optionen ­­­­­­­­ Das Prg akzeptiert bei CLI-Aufruf folgende Optionen: » ±s «, » ±d « und » ±t « Dabei werden die Optionen mit '+' ein- und mit '-' abgeschaltet. s = Systemzeit setzen ­­­­­­­­­­­­­­­­­­­­­ Beim einwandfreiem Empfang der korrekten Uhrzeit wird die Systemzeit emtsprechend gesetzt. Empfehlenswert. Vor allem für Leute ohne Akku-Uhr. Für die ist es vielleicht sogar ein Ersatz für dieselbe. d = Debug-Mode einschalten ­­­­­­­­­­­­­­­­­­­­­­­­­­ Hiermit wird etwa jede Sekunde der aktuelle Stand des Dekodierens ausgegeben. Man erhält etwa folgende Zeile: --- 13 Err.: 1/2/3/4 running ^ ^ | |---- aktuelle Sekunde |---- aktuelles Bit: "---" = logisch 0 ; "+++" = logisch 1 Die Fehlernummern geben die Anzahl der aufgetretenen Fehler an. Im Beispiel trat 1-mal ein Fehler wegen zu langen High-Pegels auf, 2-mal wegen zu langen Low-Pegels, 3-mal wegen einer "zu langen Minute", also zu vielen Sekundenmarken vor der nächsten Minutenmarke und 4-mal wegen einer "zu kurzen Minute". Letzteres ist in der Regel immer mindestens einmal der Fall, da bis zu Auftreten der ersten Minutenmarke selten genau 59 Sekundenmarken empfangen werden. Daher wird dieser Wert als einziger mit -1 initialisiert. Allerdings bricht das Prg ab, sobald die Summe der Fehler größer als 5 ist. Es folgen ein paar Flags: valid = es wurde ein kompletter, gültiger Datensatz empfangen running = das Prg läuft und seit der letzten Sekundenmarke ist kein Fehler aufgetreten sb = das Startbit wurde korrekt empfangen pb1 = das Prüfbit 1 stimmte ebenso: pb2, pb3 t = Datum und Zeit anzeigen ­­­­­­­­­­­­­­­­­­­­­­­­­­­ Mit dieser Option werden vor erfolgreichem Verlassen des Programmes das Datum und die Zeit in Klartext ausgegeben. Hier wird zusätzlich angezeigt, wenn gerade Sommerzeit (MESZ statt MEZ) gültig ist oder der Reservesender aktiviert wurde. Auch die Ankündigung der Umstellung und die einer Schaltsekunde werden angezeigt, wenngleich dies vom Prg (noch) nicht berücksichtigt wird.