Hallo Trexis5,
so, habe alles gesichtet:
1. Dcf77_soft.lib:
Scheint alles ok, PD2 als Eingang eingetragen.
2. Dcf77_2_soft.bas:
Die Zeile:
"Disable Timer1 'zunächst ausschalten" ... löschen!
Dafür:
"Enable Interrupts
Enable Timer1" ... einfügen!
3. M32.bas:
Zeigt ja aktuell nichts außer deiner LED an PB0 an, weil die Sub Showtime in der DO-LOOP gar nicht aufgerufen wird.
Ich würde nur ...
... in die DO-LOOP packen bis alles läuft.Code:If Sekunde <> _sec Then Cls Locate 1 , 1 'Zeile 1: Lcd Time$ ; " " 'Uhrzeit Sekunde = _sec End If
Der Teil ...
... muss ganz raus, weil der Timer nicht abgeschaltet werden kann (sowieso nicht Timer0!)Code:'Wenn Uhr oder Datum inaktuell, dann nach DCF stellen: 'Timer0 ist nur aktiv, solange DCF-Empfang läuft!!! If Dcfstatus.5 = 0 Or Dcfstatus.6 = 0 Then Dcfstatus.7 = 1 Enable Timer0 Else Dcfstatus.7 = 0 Disable Timer0 End If
Mehr fällt mir spontan nicht auf!
Zumindest müßte die Uhrzeit jetzt weiter laufen (ohne DCF-Synchronisierung).
Schreib doch 'mal, wie's klappt.
Wenn's nicht klappt:
1. Timer1 noch für andere Zwecke benutzt?
2. Andere Interrupt-lastige oder Timer-basierte Dinge im Rest deiner Software?
3. Wirklich externe 16 MHz oder interner Teiler? Fusebits korrekt?
4. DCF-Empfänger arbeitet störungsfrei?
Gruß Dirk







Zitieren

Lesezeichen