DCF- Funkuhr mit PIC

OP #3301036
Hallo,
ich hab folgendes Problem, in der Schule soll ich eine Funkuhr mit einem 
DCF77-Modul und einem PIC16F628A bauen und alles sauber dokumentieren, 
d.h. Schaltplan,Ablaufplan...
Kann mir jemand in diesem Fall vielleicht behilflich sein?
Habe keine Idee wie ich anfangen soll.
Vielen Dank im Voraus!
#3301058
Es sollte genug Beispielcode für DCF und Microcontroller geben.

Das ist ein guter Anfang. Deine Hausaufgaben wird dir hier keiner 
machen.

Wenn du weißt wie DCF funktioniert musst du das Signal eben noch per PIC 
korrekt auslesen und interpretieren. Gehe Schritt für Schritt vor.

gruß cyblord
Gast #3301067
>Habe keine Idee wie ich anfangen soll.

Ja, dann suche doch mal nach "Funkuhr mit PIC". Dann hast Du eine Menge
Artikel dazu und siehst, wie es Andere gemacht haben.

MfG Paul
#3301135
Lisa B. schrieb:
> Habe keine Idee wie ich anfangen soll.

Na irgendwelche Vorkenntnisse mußt Du doch haben.
Ansonsten, wieviel Jahre hast Du für das Projekt Zeit?

Fang erstmal mit ner Quarzuhr an, d.h. ein Timerinterrupt zählt die Zeit 
und eine Anzeige (7-Segment-LEDs oder Text-LCD).

Und dann die DCF-77 Empfangsroutine als Timerinterrupt, die bei Erfolg 
die Quarzuhr stellt.

Vorzugsweise nimmt man den gleichen Timerinterrupt (z.B. 10ms) für 
beides, dann kann es beim Stellen nicht zu Race-Conditions kommen.
#3302108
Lisa B. schrieb:
> Kann mir jemand in diesem Fall vielleicht behilflich sein?
> Habe keine Idee wie ich anfangen soll.

Hallo LisaB.

Ich gebe Dir mal einen ersten (nicht ins Detail gehenden) Überblick

Hardware für eine DCF77-Uhr:
Gehäuse
DCF77-Empfangsmodul (z.B. Pollin, Conrad)
PIC 16F628
Quarz z.B. 4MHz
LCD 2x16

Programmteile:
Interne Uhr, erhält Sekundentakt von Interrupt-Routine
Interruptroutine z.B. alle 4ms(*250=1s), 10ms(*100=1s) usw..
Dekodierroutine für das DCF77-Signal
Routine zur Ausgabe von Datum Uhrzeit im LCD.

Infos zu DCF77:
Internetsuche,
PTB Braunschweig [http://www.ptb.de/cms/index.php?id=1787]
[http://www.unagel.de/dcf/]
usw.

Wie anfangen?
Wichtig: Dein Wissenstand!!! Programmiersprache?
1. LCD-Ausgabe-Routine erstellen (hilft auch bei der Fehlersuche)
2. Interruptroutine erstellen
3. Uhr mit Stunde, Minute, Sekunde (Takt durch Interrupt) programmieren 
und im LCD ausgeben
Das ist fürs erste wohl genug, die DCF77-Dekodierung wäre dann als 
nächstes an der Reihe.

mfG Ottmar
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 13 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.