Hallo Peter,
kleiner Schnipsel.
' DCF77 auf PinB.0 gelegt
Config Dcf77 = Pinb.0 , Timer = 1 , Debug = 1 , Check = 1 , Inverted = 1 ', Gosub = Sectic
'Hinweis: [Gosub=Sectic] wird jede Sekunden gestartet wenn aktiv.Natürlich muss du dann diese Sub anlegen.
' Datumsformat festlegen
Config Date = Dmy , Separator = .
'Synchronisiere die Uhrzeit mit dem DCF77 Zeitsignal..."
'Auf die Synchronisierung der Uhrzeit mit dem DCF77 Zeitsignal warten.
'dann muss Dcf_status.7 = 0 sein.
'Hinweis: Für programmier Arbeiten/Test einfach Status auf 1 setzen
'somit musst Du nicht die ca. 3 Minuten warten bis synchron Erfolgreich
'beendet wird und Programm weiterläuft. Ist DCF angeschlossen wird trotztem
'die Zeit übernommen.[DCF läuft ja im Hintergrund]
'ich lasse Status immer auf 1 denn Time ist durch 16 MHz Takt sehr genau
'auch wenn DCF77 mal kein "sauberes Signal empfängt" wird ja trotztem getaktet.
'Bei Datenerfassung mit Zeitstempel natürlich auf 0 setzen.
While Dcf_status.7 = 1
' Dcf_status.7 wird auf 1 gesetzt sobald die Zeit erfolgreich synchronisiert wurde
' aktuelle Zeiten (intern und DCF) sowie den Status zum Terminal ausgeben
Print "Dcf : " ; "Uhr " ; Time(dcf_sec) ; " " ; "Datum " ; Date(dcf_day) ; " Status " ; Dcf_status.7
Locate 1 , 1 'Cursor auf 1 Zeile, 1 Spalte
Lcd "DCF77 Synchron start"
Locate 3 , 1 'Cursor auf 3 Zeile, 1 Spalte
Lcd " Datum " ; Date$
Locate 4 , 1 'Cursor auf 4 Zeile, 1 Spalte
Lcd " Zeit " ; Time$
Wend
Print "Uhrzeit erfolgreich synchronisiert ! " ; Time$ ; " " ; Date$
Locate 2 , 1 'Cursor auf 2 Zeile, 1 Spalte
Lcd " Status OK "
Wait 3
Cls 'Anzeige löschen
Gruß
Fred
Lesezeichen