mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik DCF77, Frage ob Modul Signal liefert (AT8515)


Autor: Snecx (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

ich versuche das DCF77 zu decodieren. Um ueberhaupt zu sehen ob ich ein 
brauchbare Siganl bekomme habe ich aus einem Beispielprogramm folgenden 
Code kopiert und angepasst.
Ich bekomme 1 mal in der Sekunde ein Signal und der Interupt wird 
ausgeloesst.
In der 3 ten Zeile auf dem LCD lasse ich mir die Zeitdauer anzeigen.
Allerdings ist diese Zeitdauer fast immer gleich schwankt so zwischen 
3910 und 3916.
Also lese ich daraus das der Impuls immer gleich lang ist. Wenn ich aber 
ein Signal empfangen wuerde dann muesste ich doch unterschiedlich lange 
impulse sehen. Liege ich da richtig oder verstehe ich den copierten code 
nicht richtig?
Danke.

Autor: Slowhand himself (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Um ueberhaupt zu sehen ob ich ein
brauchbare Siganl bekomme habe ich aus einem Beispielprogramm folgenden
Code kopiert und angepasst.

Schau doch mal mit dem Oscar nach, wie lang die Pulse sind. Müssen 100 
oder 200 ms lang sein.

Es langt zur Not auch eine LED. Wenn man genau hinschaut, erkennt man 
die Unterschiede.

Ciao

Eric

Autor: Ralli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das DCF-Signal wird zu Beginn jeder (außer der 59.) Sekunde abgesenkt 
und nach 0,1 oder 0,2 Sekunden (Kodierung für logisch 0 oder logisch 1) 
wieder auf den Normalwert angehoben.

Mit deinem Interrupt erfasst du den SIGNALWECHSEL und zwar (da du einen 
fast konstanten Abstand erfasst) genau den RICHTIGEN zum Sekundenbeginn: 
Anderenfalls würde der Messwert um ungefähr genau +/- 10% schwanken.

Was noch fehlt, ist die Erfassung des SIGNALPEGELS 0,15 Sekunden nach 
dem Signalwechsel. Dann kann man  den logischen Wert des Sekundenbits 
feststellen: Liegt 0,15 Sekunden nach dem Signalwechsel wieder der 
Normalwert an, war es eine logische Null, ansonsten eine logische Eins.

Als alter Assembler-Freak kann ich zu deinem BASIC-Code nicht viel 
sagen, aber du scheinst ja auf dem richtigen Weg zu sein.

Viel Erfolg
Ralli

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bitte keinen Interruptpin zur Auswertung des schnarchlangsamen 
DCF-Signals verwenden. Ein per Timer-Interrupt gepollter Pin (alle 10ms) 
liefert weitaus störungsärmere und zuverlässigere Werte und schont die 
Ressourcen.

Autor: Sonic (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Travel Rec.. das hatten wir doch schonmal ?! ;-)

Aber wie Ralli schon schrieb: du misst die Periodendauer, nicht die 
Impulslänge.
Wenn's mit dem Interrupt sein muss: je nach Pegel (high/low) deiner 
Impulse musst du die Zeit zwischen den unterschiedlichen Flaken messen 
und direkt nach Auslösen des Interrupts die Flankenerkennung umschalten 
(high nach low und umgekehrt).
Ansonsten so wie  Travel Rec. geschrieben hat.
Es geht auch mit dem ICP (Input-Capture-Pin).

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.