www.mikrocontroller.net

Forum: Mikrocontroller und Elektronik DCF77-Modul von Pollin

Autor: Holger Krull (krulli) Benutzerseite
Datum:

Hallo,
ich hab beim Stöbern auf der Pollin-Seite gerade das DCF77-Modul
(Best.Nr 810054) entdeckt. Gibt es damit schon Erfahrungen?
http://www.pollin.de/shop/detail.php?pg=OA==&a=NTQ...
Autor: M. H. (zebrafalke02)
Datum:

Das ist aber im moment wohl nicht lieferbar, ich hab ein paar bestellt
und die waren nicht dabei und werden irgendwann nachgeliefert.
Autor: Pete K. (pete77)
Datum:

470 Stück sind noch da.
Autor: Wolfgang Birner (logox2)
Datum:

Hat jemand sowas wie eine DCF-lib für AVR+GCC? Ich hab schon lange
Interesse daran mal einen DCF-Empfänger zu realisieren.
Autor: Stefan Ernst (sternst)
Datum:

Such mal in der Codesammlung nach "DCF77" und "DCF 77", da gibt es
einige Treffer.
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Heute sind meine Module von Pollin nachgesendet worden. Habe gleich eins
probiert und festgestellt, daß es funktioniert. Es ist so ähnlich, wie
das Reichelt Modul, nur viel kleiner, hat eine push-pull-Endstufe mit
5µA Ausgangs"leistung" und kann somit direkt an einen CMOS-Eingang
geschaltet werden. Der PON-Pin hat bei diesem Modul tatsächlich eine
Bedeutung: liegt er auf Vcc, ist das Empfangsmodul abgeschaltet. Liegt
er auf Masse, ist das Empfangsmodul eingeschaltet. Das Modul muß nach
dem Einschalten der Betriebsspannung mindestens eine High-Low-Flanke an
diesem Pin sehen, um aktiviert zu werden. Dies kann auch durch ein
externes R/C-Glied mit einer Zeitkonstante von mindestens 1 Sekunde
geschehen, wenn man keinen extra Controllerpin opfern will und das Modul
immer an sein soll.
Autor: Marius S. (lupin) Benutzerseite
Datum:

uii das ist ja sehr günstig. Pollin ist echt super :)

Billiger geht's wohl nur direkt aus china.
Autor: Michael U. (amiga)
Datum:

Hallo,

>Das Modul muß nach
>dem Einschalten der Betriebsspannung mindestens eine High-Low-Flanke an
>diesem Pin sehen, um aktiviert zu werden.

ist zumindest ungewöhnlich. In den Datenblättern, die ich bisher von
solchen ICs gesehen habe, war das immer ein statischer Eingang.

Vielelicht nur nicht lange genug gewartet? Andere Module brauchen
teilweise etliche Sekunden, bis der Empfänger eingeregelt hat und
Impulse kommen.

Gruß aus Berlin
Michael
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Nee Michael, ich hab´s lange genug getestet. Beim direkten an Masse
legen des Eingangs läuft das Modul nicht los. Beim H/L-Tasten startet es
sofort mit der Ausgabe der DCF-Impulse. Ich denke mal, daß intern eine
Reset-Logik oder ähnliches verknüpft ist. Es arbeitet aber nach der
beschriebenen Methode sehr ordentlich. Die Leuchtstofflampe direkt an
der Arbeitsplatte bringt es jedenfalls nicht durcheinander.
Autor: klaus (Gast)
Datum:

Hi!

Kannst du die nötige Schaltung inkl. R/C-Glied bitte mal hier posten?

Habe nun auch so ein Pollin Modul und bekomme es nicht zum werkeln.

Wie würde eine Verstärkerstufe (Transistor?) wenn man es nicht direkt an
einen µC hängen will?

Gruß
Autor: Duke (Gast)
Datum:

Hallo,

kann jemand die Maße der Antenne posten ?

Danke
Autor: klaus (Gast)
Datum:

55mm lang und 9mm Durchmesser
Autor: klaus (Gast)
Datum:

8mm Durchmesser, sry
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Also die Flanke an dem Eingang des Moduls muß steil genug sein, ein
einfaches R/C-Glied reicht nicht (muß wohl Zufall gewesen sein). Mit
einem Schmitt-Trigger geht es auf jeden Fall. Zwischen dem Einschalten
der Betriebsspannung und der H/L Flanke muß wenigstens eine Sekunde
liegen.
Autor: klaus (Gast)
Datum:

wie sieht die Schaltung denn dann aus? Brauch man dann nicht auch ein
Verzögerungsglied (C?)?
Autor: Michael U. (amiga)
Datum:

Hallo,

Travel Rec.: werd ich mir mal vorsichtshalber merken, dieses Verhalten.

Naja, noch ein Pin am AVR frei? Dann ist es doch schon gelöst. ;)

Gruß aus Berlin
Michael
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Ja, ein R, ein C und ein Schmitt-Trigger oder zwei Rs und ein C und ein
Transistor. Letzteres habe ich nicht getestet.
Autor: g-k (Gast)
Datum:

Hab hier auch so ein Pollin DCF Modul geordert. Das mit dem PON Pin
scheint traurige Wahrheit :(

Man muss es wirklich etwas spaeter starten, und mit einem RC bekomme ich
es nicht sauber hin. Steht ja auch im "Datenblatt", ab der ersten
neg.Flanke. Mal schaun, wie ich das endgueltig loese.

Ansich wollte ich das teuere Conrad DCF ersetzen. Aber das Pollin
scheint bei mir auch auf der Versorgung sehr viel stoerempfindlicher zu
sein. VDD sollte man also unbedingt filtern.

Der Datenausgang ist uebrigends high activ.

Falls Ihr Erfahrungen/Vergleiche mit anderen DCFs habt, oder eine
einfache Loesung des PON bitte posten :)

Gruss G.
Autor: Andreas K. (a-k)
Datum:

Ich habe das Modul letzthin mal ausprobiert. Klappt in fliegender
Verdrahtung wunderbar. Stundenlang durchgängig ein störungfreies Signal
trotz allerlei Hardware daneben, Röhrenmonitore inklusive.

Ist allerdings richtungsabhängig, in der falschen Richtung geht
garnichts.

PON frisst in dem (Test-) Aufbau halt einen zweiten Pin vom Controller.
Autor: Oliver (Gast)
Datum:

Hallo,

was meinst Du mit Richtung? Horizontal/vertikal? Oder muss man damit
tatsächlich "zielen"?

Schöne Grüße,
Oliver
Autor: Andreas K. (a-k)
Datum:

Wenn der Stab in Richtung Mainflingen zeigt kann der Empfang etwas
schwierig werden. Horizontal quer dazu ist besser.
Autor: Andreas K. (a-k)
Datum:

Bei meinem Exemplar ist die ansteigende Flanke nicht sonderlich steil
und hat einen kleinen Sägezahn draufmoduliert. Da die Hysterese der
AVR-Eingänge sehr gering ist, ist es je nach AVR Typ/Exemplar schon
vorgekommen, dass der Impuls vom AVR gelegentlich nicht als ein
einzelner vollständiger Impuls erkannt wurde, sondern ein sehr kurzer
vorneweg erkannt wurde.
Autor: Hannes Lux (hannes)
Datum:

Andreas Kaiser wrote:
> Bei meinem Exemplar ist die ansteigende Flanke nicht sonderlich steil
> und hat einen kleinen Sägezahn draufmoduliert. Da die Hysterese der
> AVR-Eingänge sehr gering ist, ist es je nach AVR Typ/Exemplar schon
> vorgekommen, dass der Impuls vom AVR gelegentlich nicht als ein
> einzelner vollständiger Impuls erkannt wurde, sondern ein sehr kurzer
> vorneweg erkannt wurde.

Hmmm... - Ein Grund mehr, das Ding über einen entprellten Tasteneingang
auszuwerten (PeDa-Bulletproof-Entprellung, so modifiziert, dass sie
steigende und fallende Flanken separat erkennt).

;-)

...
Autor: Andreas K. (a-k)
Datum:

Ja, ein Problem ist das nicht wirklich, das war mehr als Tip für andere
gedacht. Ist softwareseitig leicht zu lösen.

Da in meiner Anwendung allerdings sowieso ein bischen Hardware
dazwischen für Einschaltflanke und Signalverstärkung nötig war, habe ich
das kurzerhand einen übrig gebliebenen Tiny15 machen lassen. Dahinter
schaut's nun deutlich schöner aus und der Code am anderen Ende der
Leitung ist einfacher.
Autor: Andre (Gast)
Datum:

Hat schon jemand nachgemesen wie hoch die Stromaufnahme im Power Down
ist ?

Ich habe da eine Akkugestützte Schaltung mit RTC und möchte die gerne um
DCF erweitern.
Natürlich zählt hier jedes µA :D
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Die Stromaufnahme des Moduls kann "0,nix" sein, wenn man es über einen
Portpin versorgt und halt abschaltet, wenn man es nicht braucht ;-).
Autor: Andre (Gast)
Datum:

Stimmt !

Auf die Idee bin ich noch gar nicht gekommen.

Danke dann bestell ich das Teil mal.
Autor: Gast (Gast)
Datum:

Ich hab das Pollin DCF77-Modul auch und kann das mit der H-L-Flanke
nicht bestaetigen. Bei mir habe ich den PON-Pin einfach auf Masse gelegt
und es funktioniert wunderbar. Dauert allerdings etwas (3-5 min) bis es
Signale ausgibt. Im Datenblatt steht auch das es bis zu 20 Minuten
dauern kann bis der Empfaenger sich mit dem Signal synchronisiert hat.

Das Problem mit der langsam steigenden Flanke und den Saegezaehnen hab
ich mit einem Verstaerker zwischen Signalausgang und uC Eingang geloest.
Damit ist der Saegezahn komplett raus und die Flanke steigt in ~100 us.

Die Qualitaet der Signale ist auch super. Hab mir mal ein Testprogramm
geschrieben was auf dem Display meiner Uhr-Schaltung die Laenge der
Pulse ausgibt und die sind recht konstant (Abweichung +-3ms). Meine Uhr
laeuft damit nun schon >18 h ohne einen einzigen Bitfehler.
Autor: stepp64 (Gast)
Datum:

Ich habe mir auch dieses Pollin-Modul bestellt und bin mir etwas
unsicher, wie ich es an einem µC anschliesen soll. Kann ich den Ausgang
des Moduls einfach mit einem Eingang meines PICs verbinden, oder sollte
da noch ein Transistor dazwischen? Könnt ihr mir mal eure Schaltung
skizieren oder beschreiben, wie ihr das Modul angeschlossen habt? Danke.

Sven
Autor: Andreas K. (a-k)
Datum:

Direkt anschliessen sollte funktionieren. Schmitt-Trigger-Eingang ist
zwar von Vorteil, es sollte aber auch ohne den etwas dabei rauskommen.

Kein Pullup, kein Transistor. Ein bipolarer Transistor wäre bei der
immensen Treiberleistung von dem Teil (glatte 5µA) ohnehin ein Schuss
ins Knie.

Rechne damit, dass die ansteigende Flanke möglicherweise prellt. Also
Entprellung wie bei Taster.
Autor: stepp64 (Gast)
Datum:

OK. Ich wollte den Empfänger an einen Captureeingang des PIC16F887
anschliesen. Das ist schon mal ein ST-Eingang. Wie bekomme ich denn nun
heraus, welchen Strom der Eingang des PIC zieht? Ist der Parameter
"Input Leakage Current" der richtige? Dann würde das ja mit max. 1µA
funktionieren.

Wie lange denkst du denn, dass das Signal prellt?

Sven
Autor: Z. Z. (Gast)
Datum:

hi,

ich bekomme das DCF Modul einfach nicht zum laufen, habe Ausgang und PON
am AVR angeschlossen aber es wird auch nach 30min. am Terminal keine
Uhrzeit bzw. Datum aktualisiert.

hier mal mein Code:
$regfile = "M8def.dat"
$crystal = 4000000
$baud = 9600

$hwstack = 128
$swstack = 128
$framesize = 128

'///////////////PORT Zuweisungen////////////////////////
'Port C =6543210
Ddrc = &B1111111                                            '0 = Eingäng; 1 = Ausgänge
Portc = &B1111111

Power_dcf Alias Portc.1

'////////////////Schnittstellenkonfiguration/////////////////
Config Dcf77 = Pinc.0 , Timer = 1 , Debug = 1 , Check = 1 , Gosub = Sectic
'Config Dcf77 = Pinc.0 , Timer = 1 , Debug = 1

Enable Interrupts
Config Date = Dmy , Separator = .
Declare Function Dcf_timezone() As Byte


Dim I As Integer
Dim Sec_old As Byte , Dcfsec_old As Byte

Sec_old = 99 : Dcfsec_old = 99

Wait 2

'////////////////Initialisierungen/////////////////////////

Print "Modul wird einschalten"
Power_dcf = 0
   While Power_dcf = 1
      nop
   Wend

Do
   For I = 1 To 78
      Waitms 10
      If Sec_old <> _sec Then
         Exit For
      End If
      If Dcfsec_old <> Dcf_sec Then
         Exit For
      End If
   Next
   Waitms 220
   Sec_old = _sec
   Dcfsec_old = Dcf_sec
   Print Time$ ; " " ; Date$ ; " " ; Time(dcf_sec) ; " " ; Date(dcf_day) ; " " ; Bin(dcf_status) ; " " ; Bin(dcf_parity) ; " " ; Bin(dcf_bits) ; " " ; Bdcf_impuls ; " " ; Bdcf_pause       '; " " ; db1 ; " " ; db2
   If Dcf_sec > 45 Then
      Reset Dcf_status.7
   End If
   Print "Timezone : " ; Dcf77timezone()
Loop


'optional, is called every second by the library
Sectic:
  nop
Return


End


was mach ích falsch?
Autor: Andreas K. (a-k)
Datum:

Fang doch mal vorne an und schau nach ob überhaupt ein brauchbares
Signal kommt. Debug=2 könnte da helfen, und dann halt in die
entsprechenden Variablen reinschauen.
Autor: Andreas K. (a-k)
Datum:

stepp64 wrote:

> OK. Ich wollte den Empfänger an einen Captureeingang des PIC16F887
> anschliesen. Das ist schon mal ein ST-Eingang.

Ein Comparator-Eingang ist nur dann ein Schmitt-Trigger, wenn man den
Schwellwert entsprechend umprogrammiert. Ich bin da bei diesem PIC grad
nicht auf dem Laufenden, bei manchen jedenfalls geht das.

> Ist der Parameter
> "Input Leakage Current" der richtige? Dann würde das ja mit max. 1µA
> funktionieren.

Korrekt.

> Wie lange denkst du denn, dass das Signal prellt?

Weiss ich nicht mehr. Worst case ist ein kurzer Puls vorneweg. Probier's
aus, vielleicht klappt es auch so.
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Normalerweise prellt das Signal gar nicht und ist ein sauberes Rechteck.
Nur wenn der Empfang mies ist, wird dieses Rechtech durch unregelmäßige
Pulse unterbrochen oder fällt ganz aus.
Autor: Andreas K. (a-k)
Datum:

Travel Rec. wrote:

> Normalerweise prellt das Signal gar nicht und ist ein sauberes Rechteck.

Ich hatte bei durchaus sauberem Empfang den Effekt, dass die ansteigende
Flanke bei sehr genauer Betrachtung nicht ganz steil und mit einem
kleinen Sägezahn überlagert war. In Verbindung mit der eher kleinen
Hysterese der AVR-Eingänge führte das dazu, dass ab und zu ein sehr
kurzer Impuls vorweg erkannt wurde. Ich hatte nicht weiter untersucht,
ob das nur bei diesem Exemplar der Fall war.
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Ahh ja. Naja, bei einem Polling des Pins in einem 5ms-Raster würde dies
nicht in´s Gewicht fallen, dabei werden solche Ausreißer weginterpoliert
;-)
Autor: Andreas K. (a-k)
Datum:

Travel Rec. wrote:

> Ahh ja. Naja, bei einem Polling des Pins in einem 5ms-Raster würde dies
> nicht in´s Gewicht fallen, dabei werden solche Ausreißer weginterpoliert
> ;-)

Stimmt. Wenn das allerdings per Timer-Capture macht, weil noch frei,
dann merkt man das.
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

DCF macht man nicht per Timer-Capture! Selbst wenn nur der Pin noch frei
ist, kann man diesen in einer ohnehin laufenden Timer-ISR pollen, ohne
die Capturefunktion zu nutzen.
Autor: Hannes Jaeger (pnuebergang)
Datum:

> Ich hatte bei durchaus sauberem Empfang den Effekt, dass die ansteigende
> Flanke bei sehr genauer Betrachtung nicht ganz steil und mit einem
> kleinen Sägezahn überlagert war.
> ...
> Ich hatte nicht weiter untersucht,
> ob das nur bei diesem Exemplar der Fall war.

Das ist bei meinen beiden auch so. Ein kleiner Sägezahn mit ca. 1,7 kHz
überlagert die steigende Flanke. Da der Sägezahn im Vergleich zur
Impulsbreite des Nutzsignals klein ist, ist es keine großes Problem, den
in Software "auszuknipsen".
Autor: stepp64 (Gast)
Datum:

Was spricht denn gegen capturn? Ich hatte mir das eigentlich einfacher
vorgestellt. Bei jeder LH-Flanke wird der Zählerstand ausgelesen und
verglichen ob es nun 100ms oder 200ms waren. Dabei kann man natürlich
auch noch leichte Abweichungen mit einbauen.

Allerdings hast du natürlich mit dem Pollen auch recht. Da bei mir
sowiso alle 10ms ein Interrupt ausgelößt wird (welcher die Grundlage für
die Sekunden darstellt) könnte ich natürlich in der Routine auch gleich
das Signal des Empfängers abfragen und dann halt auf 10 oder 20 eines
Zählers vergleichen. Ist eigentlich auch machbar und würde das Problem
der Peaks entschärfen.

Sven
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Genau. Setze Dein Zählerfenster auf 8...12 für logisch 0 und auf 18...22
für logisch 1 und Du hast alle Probleme, was unsaubere Pulse angeht, auf
einmal erschlagen. Damit kann Deine Software recht tolerant abtasten und
zu verkorkste Bits gleich ausmaskieren.
Autor: Der Dude (Gast)
Datum:

Mein Pollin-Modul macht ausser dem Sägezahn auf der Steigenden Flanke
auch noch auf der Fallenden Flanke einen kurzen Zacken wieder nach oben,
und zwar ziemlich genau in der Mitte 0-VCC. Scheint der Umschaltpunkt
der Gegentakt-Endstufe zu sein.

Hat jedenfalls Ärger gemacht, bis ich das gefunden habe. Sieht man nur
auf dem Speicheroszi.

Ist softwaremässig leicht in den Griff zu kriegen, wenn man's weiss.
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Mit der Poll-Methode sind noch so an den Flanken ausgefranste Impulse
sauber zu detektieren, da es ja nun mal nur 1 und 0 gibt und keine
Flanke eines noch so lausigen Modus flacher als 1V/ms ist.
Autor: obake (Gast)
Datum:

Hallo,

bei mir (zwischen Ostsee und Berlin, Holzhaus) hat das Pollin Modul
vorgestern beim ersten Versuch recht saubere Signale (Oszi) abgegeben,
war aber stark richtungsempfinglich. Gestern + heute gab es dann
anstelle von sauberen Rechteckimpulsen nur noch wilde Zacken (Modul
solo, ohne uC ausprobiert) von sich. Ich habe alle Lötstellen (auch die
an Spule und C auf dem Ferrit-Stab) nachgelötet, einen Widerstand
seriell und einen C parallel in die (stabilisierte, 5V, Signal ist
sauber) Spannungszuführung gelegt, das Modul mit geschirmten Leitungen
einen Meter von allen Stromleitungen angebracht -- alles ohne Erfolg.
Mal kommen wilde Zacken anstelle der Bit-Signale, mal fallen Bits aus.
Alle DCF77-Uhren im Haus funktionieren ohne Probleme.

Momentan denke ich daran, das Modul abzuschreiben und es mit dem Modul
von C** zu versuchen.

Hat jemand Ideen zu den Ursachen, Lösungsvorschläge?

Danke,

obake
Autor: Hannes Jaeger (pnuebergang)
Datum:

> Ich habe alle Lötstellen (auch die an Spule und C auf dem Ferrit-Stab)
> nachgelötet,

Und dabei wahrscheinlich mehr kaputt gemacht als kaputt war.

> Alle DCF77-Uhren im Haus funktionieren ohne Probleme.

Klar, die schalten ihren Empfänger auch nur einmal in der Stunde zum
synchronisieren an. Wenn sie dann nichts bekommen, dann ticken sie
einfach munter mit ihrem internen Quarz weiter. Denen gehen
DCF77-Störungen ziemlich am A. vorbei.

> Momentan denke ich daran, das Modul abzuschreiben und es mit dem Modul
> von C** zu versuchen.

Ähm, dir ist schon klar, dass es bei Funksignalen zu allen Arten von
Störungen kommen kann?
Autor: obake (Gast)
Datum:

Hallo pnübergang,

> Und dabei wahrscheinlich mehr kaputt gemacht als kaputt war.
Was soll die implizite Unterstellung, dass ich das nicht kann? Muss ich
hier erklären, dass ich regelmäßig mit 0402 Komponenten arbeite, um
solche Kommentare zu vermeiden? Hauptsache Leute runtermachen! Macht dir
das eigentlich Spaß? Hilft es irgendwie, davon auszugehen, dass
Fragesteller prinzipiell unfähig sind?

Ansonsten Danke für die hilfreichen Antworten.
Autor: obake (Gast)
Datum:

Das Problem scheint wohl eher mit den Ausbreitungsbedingungen als mit
der Hardware zusammenzuhängen: momentan ist das Signal wieder sauber
(laut Oszi und meiner Software).
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Störquelle in der Nachbarschaft oder in den eigenen 4 Wänden! Ermitteln
und abschalten.
Autor: Lupin (Gast)
Datum:

braucht das modul jetzt eigentlich eine HIGH-LOW Flanke an PON oder geht
es auch ohne?
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Meine brauchen diese. Ohne laufen sie auch nach ´ner halben Stunde nicht
an.
Autor: obake (Gast)
Datum:

Dito -- ohne H->L an PON (ich mach's ca. 1 s nach Anlegen von Vdd) kein
Ausgangssignal.
Autor: Herby (Gast)
Datum:

Ich habe 47µF von Vdd nach PON und 1k von PON nach Masse. Klappt prima!
Gruß
Herby
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Echt? Bei mir hat´s nicht funktioniert... hmmm.
Autor: Herby (Gast)
Datum:

Ja, funktioniert seit ca. 3 Wochen ohne jedes Problem. Nur die pos.
Flanke vom Ausgang nervt etwas.

Gruß
Herby
Autor: Marius S. (lupin) Benutzerseite
Datum:

man kann den widerstand ja noch erhöhen, irgendwann muss es ja
funktionieren :)
Autor: AVRFan (Gast)
Datum:

>Alle DCF77-Uhren im Haus funktionieren ohne Probleme.

Kein Wunder: Nachts um 2 oder 3 Uhr hat man auch die relativ besten
Empfangsbedingungen.  Wenn man das Empfangsmodul nur alle 24 h um diese
Zeit
einschaltet (falls kein Empfang, eine Stunde später nochmals versuchen
etc.), um die permanent laufende Software-RTC nachzustellen, spart das
auch noch schön Batteriestrom.

Ein Genauigkeitsproblem gibt es übrigens nicht, wenn man so verfährt:
Ein Standardquarz hat ca. 20 ppm Ganggenauigkeit (Richtwert), also kann
eine RTC damit nur höchstens 20 * 10^-6  60  60 * 24 = 1.7 s pro Tag
vor- oder nachgehen.  Das merkt (noch) niemand.

Also: Fauler Zauber sind sie, die allzeit perfekt funktionierenden
DCF-Uhren im Haus... ;-)
Autor: Pete K. (pete77)
Datum:

Hallo,

ich verwende die Sourcen V1.5 von Ulrich Radig und habe folgende
Änderungen am Code gemacht:

clock.h:
#if defined (__AVR_ATmega644__)
  //Interrupt an dem das DCF77 Modul hängt hier INT0
  #define DCF77_INT_ENABLE()  EIMSK |= (1<<INT0);
  #define DCF77_INT      SIG_INTERRUPT0
  #define INT0_CONTROL    MCUCR
  #define INT0_FALLING_EDGE  0x02
  #define INT0_RISING_EDGE  0x03
  //#define TIMSK1         TIMSK
#endif
und in clock.c:
//############################################################################
//Diese Routine startet und inizialisiert den Timer
void Start_Clock (void)
//############################################################################
{
  // Modul einschalten, PON auf VDD aund dann PON auf GND ziehen
  DDRD |= (1<PD3); // Ausgangsrichtung
  PORTD |= (1<<PD3);
  _delay_us(5);
  PORTD &= ~(1<<PD3);
  
  //Interrupt DCF77 einschalten auf ansteigende Flanke
  DCF77_INT_ENABLE();
  INT0_CONTROL = INT0_RISING_EDGE;
    
  //Interrupt Overfolw enable
  TIMSK1 |= (1 << TOIE1);
  //Setzen des Prescaler auf 1024 
  TCCR1B |= (1<<CS10 | 0<<CS11 | 1<<CS12); 
    //SYSCLK defined in USART.H
  TCNT1 = 65535 - (F_CPU / 1024);
  return;
};

Die Anzeige auf der seriellen zeigt (ich habe ein delay von 5ms im
Hauptprogramm):
0-0-0 Time: 0:0:0 Sync: 0  Rx: 0
0-0-0 Time: 0:0:5 Sync: 0  Rx: 0
0-0-0 Time: 0:0:10 Sync: 0  Rx: 0
etc.

Irgendwie ist das keine Uhrzeit bzw. Datumsangabe :-(
Autor: Thilo M. (power)
Datum:

Leute, tut euch den Pollin-Schrott (Reichelt hat die gleichen) nicht an!
Die 10€-Teile vom Blauen C haben mich noch nie enttäuscht , zu Dutzenden
verbaut und nie Probleme gehabt.
Autor: Pete K. (pete77)
Datum:

Mag sein, aber ich habe zwei Stück hier und da will man sie natürlich
auch zum Laufen bringen :-)
Autor: A. K. (prx)
Datum:

So schlimm sind die auch nicht.
Autor: Pete K. (pete77)
Datum:

Finde ich schon. Besonders, wenn man kein Oszi zur Verfügung hat.
Autor: Norgan (Gast)
Datum:

> Finde ich schon. Besonders, wenn man kein Oszi zur Verfügung hat.

Wieso? Die kann man doch mit einem hochohmigen Multimeter messen. Die
Ausgangsfrequenz von 1 Hz führt sogar auf trägen Multimeter zu
erkennbaren Zuckungen im 1 Sekunde Abstand. Zur Not sollte sogar ein
einfaches Monoflop mit hochohmigem Eingang das eine LED treibt
ausreichen. Dann geht es sogar ohne Multimeter.

Das die Teile von Pollin den Signalflanken noch einen langsamen Rechteck
überlagern kann man hier nachlesen und einfach glauben. Dafür braucht
man kein Oszilloskop.

Ansonsten ist auf den Dingern gar nichts, auf das man mit einem
Oszilloskop-Tastkopf pieken könnte. Wenn die kaputt sind hilft ein
Oszilloskop nicht weiter.

Eine erste Testsoftware ist primitiv einfach, wenn man mal den
überlagerten Rechteck ignoriert: In einer Schleife einen Eingangspin
auslesen, das Ergebnis in ein Zeichen ('0' oder '1') wandeln und über
die serielle Schnittstelle schicken. Im Sekundentakt sollte man Einsen
sehen (eventuell mit etwas Gezappel wegen dem Rechteck).
Autor: Pete K. (pete77)
Datum:

Ja, das Digi-Multimeter zeigt etwas im Abstand von 1 Sekunde an.

So 0,2 Volt, aber ich vermute mal, das das Multimeter zu träge ist, um
die 5V des Interrupts anzuzeigen.

D.h. ich kann wohl davon ausgehen, dass das Modul funktioniert (?).
Autor: A. K. (prx)
Datum:

Da hängt man eine LED dran und fertig. Da das vom Strom her direkt nicht
geht, kopiert der Controller eben im Interrupt den Pinzustand auf einen
Portpin mit LED.

Das ist auch später in Produktion nützlich, damit man sieht ob das auch
noch läuft.
Autor: Patrick (Gast)
Datum:

Achtung der Pollin kommt nicht wie angegeben mit bis zu 5,5V klar, bei
mehr als 4V hatte ich kein Empfang
Autor: A. K. (prx)
Datum:

Ich schon.
Autor: Florian F. (vollbio)
Datum:
Angehängte Dateien:

Hier kommen ein paar (hoffentlich) aufschlussreich Bilder der Signalform
für alle, die kein Oszi zur Hand haben.

MfG, Flo
Autor: Matthias (Gast)
Datum:

Ich hatte mit 5V noch nie Probleme. Allerdings setze ich generell eine
RC-Kombination vor den VCC-Anschluß (240R + 100uF//100nF).

Auch sehen bei mir die Ausgangsimpulse wesentlich sauberer aus, als auf
den Bildern. Vermutlich hast Du ein Problem mit Deiner VCC.
Autor: A. K. (prx)
Datum:

Die Impulse sehen bei mir ähnlich aus.
Autor: Sinusgeek (Gast)
Datum:

> Allerdings setze ich generell eine
> RC-Kombination vor den VCC-Anschluß (240R + 100uF//100nF).

Beim Radio nannte man das "Siebkette". Ist so ein DCF77-Modul nicht auch
(im weitesten Sinne) ein Radio?
Autor: Tom (Gast)
Datum:

Ich habe das Pollin DCF77 Modul ohne weiteren Schnickschnack an den Int0
eines ATMega644 gehängt. Durch Portspiegelung auf eine LED kann ich
erkennen, dass jede Sekunde ein Signal kommt.
PON-Flanke zum Starten scheint auch zu funktionieren.
Ich setze die Software von Ulrich Radig ein.

Allerdings bekomme ich keine Zeit in der Ausgabe zu sehen.

Das habe ich bisher probiert:
- Austausch Netzteil durch Batterie
- Absenken der Spannung von 5 auf 4,2V über Spannungsteiler
- 100nF und 47uF zwischen VDD und GDN

So langsam weiss ich nicht mehr weiter. Hat jemand noch eine Idee, was
der Fehler sein könnte?
Autor: Tom (Gast)
Datum:

Die internen Pullups sind deaktiviert.
Autor: Tom (Gast)
Datum:

hochschieb
Autor: Tom (Gast)
Datum:
Angehängte Dateien:

Auch mit einem zwischengeschalteten OpAmp TLC272 bekomme ich zwar ein
Blinken im Sekundenrhythmus, aber noch keine Uhrzeit ...

Ich habe das Modul über ein 1m geschirmtes Kabel ans Fenster gestellt.
Ein Funkwecker, welcher genau daneben steht, kann die Zeit
synchronisieren.

Anbei der Source-Code.
Autor: Gast (Gast)
Datum:

>...an den Int0 eines ATMega644 gehängt.

Toll. Dann hast Du auch bestimmt sichergestellt, dass Dein Signal
absolut frei von z. B. ultrakurzen Spikes (Mikrosekundenbereich) ist.
Weil der Int0 gnadenlos auf jeden einzelnen reagiert - das ist ja seine
besondere Eigenschaft.
Autor: A. K. (prx)
Datum:

Spikes braucht man dafür garnicht.

Die Pollin-Funkuhr darf man nicht über einen signalbezogenen Interrupt
auswerten, es sei denn man schaltet einen Schmitt-Trigger mit
erheblicher Hysterese davor, denn dem Signal ist im ansteigenden Teil
eine Schwingung aufmoduliert, wie man hier erkennt:
Beitrag "Re: DCF77-Modul von Pollin"

Besser: Timer auf beispielsweise 10ms Raster programmieren und in dessen
Interrupt den Eingang pollen.
Autor: Hannes Lux (hannes)
Datum:

> Besser: Timer auf beispielsweise 10ms Raster programmieren und in dessen
> Interrupt den Eingang pollen.

Dann kann man ihn ja gleich mit den Tastern zusammen per
PeDa-Entprellung behandeln... ;-)

...
Autor: Simon K. (simon) Benutzerseite
Datum:

Hannes Lux schrieb:
>> Besser: Timer auf beispielsweise 10ms Raster programmieren und in dessen
>> Interrupt den Eingang pollen.
>
> Dann kann man ihn ja gleich mit den Tastern zusammen per
> PeDa-Entprellung behandeln... ;-)
>
> ...

Wenn die schon vorhanden ist, joa. Man kann aber auch direkt Peters
bulletprof DCF Decoder benutzen ;) Der hatte doch da auch was im
Angebot.
Autor: Hannes Lux (hannes)
Datum:

Simon, damit habe ich mich noch nicht beschäftigt, denn ich brauchte
noch keine Eigenbau-DCF77-Uhr. Zum Anzeigen der Zeit reicht mir eine
gekaufte Funkuhr.

Falls ich aber mal eine (Eigenbau) brauche, dann braucht die auch ein
Benutzerinterface, denn dann muss die mehr können, als nur die Zeit
anzuzeigen. Und da die Tastenentprellung in ASM sehr leicht auf "Taste
loslassen" erweitert werden kann, würde ich die Bits mit durch die
Tastenentprellung jagen. Ist aber alles hypothetisch, ich brauche
vorläufig keine Eigenbau-Funkuhr.

...
Autor: A. K. (prx)
Datum:

Hannes Lux schrieb:

> Dann kann man ihn ja gleich mit den Tastern zusammen per
> PeDa-Entprellung behandeln... ;-)

Kann man, aber wenn man nicht zu schnell pollt löst sich das Problem in
Luft auf.
Autor: uwe.uwe (Gast)
Datum:

@Tom:

- wenn über Interrupt die Flanken des Moduls verarbeitet werden sollen,
dann einen Schmitt-Trigger dazwischenschalten. Ich habe einen 4093
verwendet.

- wie an anderen Stellen schon mehrfach geschrieben, KEIN Schaltnetzteil
verwenden, sondern ein "Standard"-NT mit Trafo.

Mit Schaltnetzteil bekomme ich gar nichts vernünftiges empfangen, nur
Gezappel am Interrupt-Eingang (mit LED via anderem Port-PIN direkt
sichtbar gemacht).
Mit Standard-Netzteil klappts sogar direkt neben dem Laptop mit daran
angeschlossenem Schaltnetzteil.
Autor: A. K. (prx)
Datum:

Was für eine Spule hatte das Schaltnetzteil und wie weit war die weg?
Mit einer offenen Spule oder gar einer Stabkerndrossel würde mich das
nicht wundern.
Autor: Simon K. (simon) Benutzerseite
Datum:

Und welche Schaltwandlerfrequenz. Ist unter Umständen auch interessant.
Autor: Hannes Lux (hannes)
Datum:

> Und welche Schaltwandlerfrequenz. Ist unter Umständen auch interessant.

Na 77,5 kHz...

Duck&weg...

...
Autor: Tom (Gast)
Datum:

Nun gut, dann muss ich wohl noch einmal von vorne anfangen und Polling
mit 10ms ausprobieren.

Einen 4093 habe ich gerade nicht zur Hand.
Autor: Mario Grafe (mario)
Datum:

Num macht mal nicht die Pferde verrückt wegen der Flanken. Ich habe ein
Pollin Funkuhrmodul am INT2 laufen (Mega2560) - ohne OPV und sonstigen
schnickschnack. Es funktioniert einwandfrei. Man muß nur eine kleine
Kapazität (100nF oder ähnlich) zwischen Data-Out und Masse des Moduls
schalten. Wenn du durch Portspiegelung schon ein Sekundensignal siehst,
dann ist ja schonmal soweit alles in Ordnung.

@A.K.: Die Oszillogramme haben meiner Meinung nach nicht so viel
Aussagekraft. Die Schwingungen können genausogut von deiner Versorgung
kommen. Außerdem reagiert der externe Inteingang nur wenn die Spannung
auch die Schaltschwelle überschreitet (lt. Datenblatt 0.7*VCC)...

@Tom: Sind die Timereinstellungen für die Zählschleife korrekt? Soweit
ich weiß ist der Code von Ulrich Radig für 8Mhz angepaßt.
Autor: Avr Nix (avrnix) Benutzerseite
Datum:

http://comwebnet.weimars.net/forum/forumdisplay.php?fid=84

In Bascom für den DCF-Modul von Pollin.
Autor: A. K. (prx)
Datum:

Mario Grafe schrieb:

> @A.K.: Die Oszillogramme haben meiner Meinung nach nicht so viel
> Aussagekraft. Die Schwingungen können genausogut von deiner Versorgung
> kommen.

Wie oben schon geschrieben habe ich sehr ähnliche Bilder bekommen. Das
ist eindeutig nicht Vcc.

> Außerdem reagiert der externe Inteingang nur wenn die Spannung
> auch die Schaltschwelle überschreitet (lt. Datenblatt 0.7*VCC)...

Nope. Diese 0,7*Vcc ist der Wert, den der Hersteller für jeden
Betriebsfall garantiert, die tatsächliche Schwelle liegt aber um ca.
0,5*Vcc.
Autor: Tom (Gast)
Datum:

@Mario:
In den Timereinstellungen habe ich SYSCLK (welches ja 8MHz war) auf
F_CPU umgestellt (ich benutze AVRStudio).

TCNT1 = 65535 - (F_CPU / 1024);

Ich hoffe doch, dass keine weiteren Änderungen notwendig sind. Prescaler
steht auf 1024.
Autor: Travel Rec. (travelrec) Benutzerseite
Datum:

Habe auch gerade mal gemessen. Es stimmt, daß die ansteigende Flanke
etwas verrauscht ist. Dies ist hauptsächlich im unteren Drittel des
Anstiegs so. Die abfallende Flanke ist sauber. Die Länge der High-Pulse
ist etwas unterschiedlich, so daß man bei zu grobem Polling größer als
10ms eventuell Überlappungen von 0 und 1 Bits erhält. Bei meinen
Versuchen hat sich ein Polling von 8ms als sinnvoll erwiesen, da alle
Zeiten dann innerhalb eines Timer-Zählbytes bleiben und die Auflösung
von 8...13 für "0" und 19...26 für "1" ausreichend hoch ist. Die
Austastlücke der 59 Sekunde bewegt sich um Werte von 180...220.
Autor: Tom (Gast)
Datum:

Also das mit 100nF hat noch nicht den gewünschten Erfolg gebracht.

Könnte wohl dann doch an der Software (s.o.) liegen.
Autor: Tom (Gast)
Datum:

Ich verstehe diese Zeile noch nicht so ganz:

TCNT1 = 65535 - (F_CPU / 1024);

Das Register beinhaltet doch den Counter1 und sollte bei jedem Interrupt
hochgezählt werden, oder ?
Warum wird das Register mit 57722 gefüllt (bei 8Mhz)?
Autor: Tom (Gast)
Datum:

Jetzt hängt das Modul an einer 3V Knopfzelle.

Kann vielleicht noch jemand etwas zu meinem vorherigen Posting mit dem
TCNT1 sagen? Merci.
Autor: spess53 (Gast)
Datum:

Hi

>Warum wird das Register mit 57722 gefüllt (bei 8Mhz)?

Da hat jemand die Funktion der Output Compare Register nicht verstanden.

>Kann vielleicht noch jemand etwas zu meinem vorherigen Posting mit dem
>TCNT1 sagen? Merci.

Damit wird der Zählbereich des Timer verkleinert. Der Timer Overflow
Interrupt würde sonst nur alle 65535 Takte ausgelöst.

MfG Spess
Autor: Simon K. (simon) Benutzerseite
Datum:

spess53 schrieb:
> Hi
>
>>Warum wird das Register mit 57722 gefüllt (bei 8Mhz)?
>
> Da hat jemand die Funktion der Output Compare Register nicht verstanden.

Ich glaub damals beim Classic AVR gabs welche ohne CTC Einheit, daher
rührt das.
Autor: Gast (Gast)
Datum:

>Das Register beinhaltet doch den Counter1 und sollte bei jedem Interrupt
>hochgezählt werden, oder ?

Wie kommst Du denn darauf? Das Register TCNT1 wird von der Hardware mit
der Frequenz F_OSC/1024 hochgezählt (falls der T/C1-Prescaler auf 1024
eingestellt ist) und wenn es von 65535 auf 65536 --> 0 umspringt, wird
ein Overflow-Interrupt ausgelöst.

Für ein präzises Timing empfiehlt es sich jedoch, wie schon erwähnt, den
CTC-Modus zu verwenden.
Autor: rolito (Gast)
Datum:

Die ansteigende Flanke ist wirklich etwas langsam und dauert mehrere ms.
ich schicke das Signal 2x durch 1/4 lm324 und das Reset-Problem habe ich
mit einer weiteren Stufe dieses Bausteins gelöst.
Autor: Joe_D (Gast)
Datum:

Ich habe das gleiche Problem wie Tom (kein Signal an INT0/PD2 bei
Atmega644), verwende den Sourcecode von U.Radig und habe folgende
Ergänzung in code.h hinzugefügt:
#if defined (__AVR_ATmega644__)
  //Interrupt an dem das DCF77 Modul hängt hier INT0
  #define DCF77_INT_ENABLE()  EIMSK |= (1<<INT0);
  #define DCF77_INT    SIG_INTERRUPT0
  #define INT0_CONTROL    EICRA
  #define INT0_FALLING_EDGE  0x02
  #define INT0_RISING_EDGE  0x03
#endif

Das interessante an der Sache ist, das der Empfang mit einem Atmega32
und der selben Software und Beschaltung (STK500 + Conrad DCF77-Empfänger
über 7m Leitung an INT0/PD2) funktioniert!

Beim Atmega644 kann ich "händisch" Impulse an INT0/PD2 generieren, aber
nicht durch das DCF77-Modul.

Irgendwelche Tipps?

Gruß

  Joe_D
Autor: Florian Schütte (der_picknicker)
Datum:

Hallo,
hab heut das Pollinmodul auch endlich zum Laufen bekommen. Dies hat
schon ewig gedauert, weil Pollin in den Datenblättern (sowohl Online,
als auch mitgeliefert) die falsche Pinbelegung angegeben hat. Nicht
VDD,GND,DATA,PON (von oben nach unten im Bild) sondern genau umgekehrt,
also PON,DATA,GND,VDD. Hab ich erst durch zufall in nem anderen Forum
gelesen
(http://www.jogis-roehrenbude.de/forum/forum/forum_...).

Jetzt hab ich die Probleme mit dem Sägezahn. Kann ich den INT0 (da
hängts dran) in BASCOM irgendwie entprellen? Habe da so meine Probleme,
da das über das DCF77 Modul mache. Würde ungern extra Hardware
einsetzen, zumal ich im Moment keinen Schmitt-Trigger zur Hand habe.

Gruß,
Florian

PS: Habe Pollin mal ne Mail geschickt, und auf die beiden Fehler
hingewiesen.
Autor: A. K. (prx)
Datum:

Das Signal sollte man deshalb nicht per Interrupt-Leitung auswerten,
sondern in einem Timer-Interrupt alle zig Millisekunden abfragen.
Autor: Holger H. (onifred)
Datum:
Angehängte Dateien:

Florian Schütte schrieb:
> Pollin in den Datenblättern (sowohl Online,
> als auch mitgeliefert) die falsche Pinbelegung angegeben hat. Nicht
> VDD,GND,DATA,PON (von oben nach unten im Bild) sondern genau umgekehrt,
> also PON,DATA,GND,VDD.

Bei meinem Modul hat die in den Datenblatt angegebene Pinbelegung
gestimmt.
Die Pinbelegung bezieht sich auf den Anschluss wenn der Quarz und die
Anschlussstifte nach oben zeigen.
Habe es in einem externen Gehäuse mit ca 1m Anschlusskabel und RN 3pol
Stecker eingebaut. Spannungsversorgung mit 10µF, 100nF, 480R und 3V3
Z-Diode geregelt. Signal mit Transistor verstärkt. Direkt auf Basis ohne
Widerstand. Verstärktes Signal auf Transistor und 3mm LED zur Signal
Anzeige.
Beim anschliessen leuchtet LED kurz auf, nach ca 70 sek ist das Signal
dann da. (Also nur geduldig warten.)
Man könnte noch Pon mit einer Resetschaltung aus C und R versehen, um
den ersten Empfang zu beschleunigen.
Anbei Fotos. Zum Schaltplanzeichnen bin ich noch nicht gekommen.
Hatte noch alle Teile, inkl. Gehäuse, in der Bastelkiste.

PS: Wenn genug MC Pins frei sind, können auch Pon und +5V/3V3 an den MC
angeschlossen werden. Zum Ein-Ausschalten und als Reset.
Autor: Florian Schütte (der_picknicker)
Datum:

Hallo,
heute nacht gegen 4Uhr hatte ich guten Empfang und alles hat
funktioniert. Wahrscheinlich weniger Störeinflüsse. Werde mal, wie du,
einen Transistor zwischenschalten. Das Datenblatt zeigt nun ein anderes
Bild (darauf ist nun der Chip eingezeichnet, siehe Online bei Pollin)
auf dem die Belegung gleich geblieben ist. Vielleicht daher der Fehler.
Aber auch nach deiner Belegung auf dem Datenblatt-Foto könnte das dann
niemals stimmen. Wahrscheinlich haben sie verschiedene Chargen des
Empfängers.
Autor: us73 (Gast)
Datum:

Zur Info siehe auch:

Beitrag "DCF1 von Pollin"

Uwe
Autor: Holger H. (onifred)
Datum:

Könnten wirklich verschiedene Modelle sein. Waren ja mal kurz Zeit nicht
online bestellbar gewesen.
Autor: Florian Schütte (der_picknicker)
Datum:

@Uwe: Na das mit der Belegung hatte ich ja schon herausgefunden, und
heut Nacht auch schon nen Sync bekommen. Trotzdem Danke für den Link.

Also wenn ich nen Transistor zwischenschlte (BC547B) passiert nix mehr.
Entweder ich bin grad zu verplant den richtig anzuschließen, oder die
5uA vom Ausgang reichen nich den zu schalten.
Autor: Holger H. (onifred)
Datum:
Angehängte Dateien:

Habe mal angefangen einen Schaltplan zu zeichnen.
Für Kritik und Verbesserungsvorschläge bin ich offen.
Mein erster mit Eagle. Spannungsversorgung fehlt noch.

Hoffe ich habe die Dateiformate bis jetzt richtig gewählt.
Autor: Draco (Gast)
Datum:

Meine zwei DCF77 Modelle, vor ca. 2 Wochen erhalten, passen überhaupt
nicht zum Datenblatt, mir ist es aber zum Glück direkt beim Verlöten
aufgefallen, da die Masse nicht an ihrem Platz lag - hab dann die Bahnen
zurückverfolgt und mir meine eigene Übersicht über die Pins verschafft.

Was soll man sagen... ist halt Pollin :/
Autor: Florian Schütte (der_picknicker)
Datum:

@Holger:
Genau wie du es beschriben hast hatte ich es auch aufgebaut. Der
Transistor war wohl defekt. Habe nen neuen genommen und siehe da, es
geht.

Ich habe das ganze mit einem BC548C und nem 547A probiert. Mit dem 548
scheint es besser zu klappen, da gibt der DCF das korrekte Signal nach
2-3 Minuten aus. Beim 547 dauerts 3-5 (mit beiden ca. 10 mal getestet).
Mit dem 547 gibts noch einige Störungen, daher dauerts wohl länger. Mit
dem 548 störts nurnoch, wenn draußen die Straßenbahn vorbeifährt. Den
Teil mit der LED hab ich weg gelassen. Also nur Transistor und 10k.

Jetzt bin ich glücklich, dass ich dieses Kapitel abschließen kann. Hat
mich viele Stunden wertvolle Freizeit gekostet ;)
Autor: Florian Schütte (der_picknicker)
Datum:

Und wie ich grade in einem weiteren Versuch feststellen musste, scheint
mein Modul ohne PON-Flanke auszukommen. Also direkt an GND. Ist ja wohl
nicht bei allen der Fall, soweit ich dass hier lesen konnte. Hatte
vorher über nen Portpin 1s High-Signal zur Verfügung gestellt. Wieder
ein Pin frei :happy:
Autor: Florian Schütte (der_picknicker)
Datum:

@Holger: Hab nochmal just for fun den 547 mit der LED aus deinem
Schaltplan drangehängt. Es entsteht ein leichtes Dauerleuchten an der
LED, welches bei den Impulsen heller wird. Eine simpele Diode 4148
zwischen Emitter des 547 und GND behebt dieses Problem.
Bin mir nur nicht sicher warum sie das tut. Schwellspannung?
Autor: Holger H. (onifred)
Datum:

Florian Schütte schrieb:
> Es entsteht ein leichtes Dauerleuchten an der
> LED, welches bei den Impulsen heller wird.

Tippe mal auf internen PullUp Widerstand. Deaktiviere Ihn mal, dann
müsste es funktionieren. Das gibt dann nähmlich mit R1 einen
Spannungsteiler, deswegen das glimmen.
Autor: Holger H. (onifred)
Datum:
Angehängte Dateien:

So, habe den Schaltplan jetzt fertig.
Autor: Mario F. (marfri)
Datum:
Angehängte Dateien:

Hallo,
ich häng mich mal rein hier.
Habe auch das DCF von Pollin, und ziemlich arg Probleme damit! Habe die
kleine Schaltung von Holger mal angeschlossen, und der Empfang ist mal
da, sonst würde die Led ja nicht blinken, oder!?
Dann habe ich das Teil mit mein AVR-Testboard von Pollin verbunden, das
DCF-Signal liegt bei meinem ATmega8 an Pind.2 an, da war dann die Led
immer an. Darauf hin habe ich mein Programm(.bas) so wie es jetzt als
zip dabei  ist abgeändert, und die Led blinkt wieder. Ich bekomme aber
KEINE Zeit oder Datum auf's Display! Das Display-Programm läuft! Was
mache ich falsch?

mfg mario
Autor: Florian Schütte (der_picknicker)
Datum:

Pollin hat nach meiner kleinen "Konstruktive Kritik"-Mail (siehe
Beitrag "Re: DCF77-Modul von Pollin" ) das Datenblatt
geändert. Belegung ist endlich korrekt und ein Hinweis auf die
Entstörung des Signal ist auch drin.
Wie ich grad feststellte (Dateieigenschaften) haben sie es schon einen
Tag nach der Mail geändet.
Autor: Ulrich Staake (reise)
Datum:

...gibts deine zeichnung auch als eaglefile?
Autor: Holger H. (onifred)
Datum:
Angehängte Dateien:

@Ulrich
Wenn du mich meinst, bitte...

Achtung! Schaltplan ist noch für die alte Pinbelegung.
Autor: Eike J. (Gast)
Datum:

Nabend,


ich hab ein kleines Problem mit dem Pollin Modul. Hatte es schon mal an
einer Schaltung aufem Steckbrett laufen und hatte auch ein ordentliches
Signal. Jetzt habe ich das Modul an einer anderen gedruckten Schaltung
und wenn ich es so laufen lasse, kommt nur Mist raus, aber sobald ich
die Platine des Moduls mit den Fingern seitlich anfasse, bekomme ich ein
perfektes Signal. Hat jemand dazu eine Idee??? Ich hab das Modul mit ca.
30cm Flachbandkabel angeschlossen...


Gruß Eike
Autor: FlipFlop (Gast)
Datum:

was berührst du denn genau?
Autor: magnetus (Gast)
Datum:

Handauflegen.... hab ich doch schon mal gehört...

duckundweg  ;o)
Autor: Eike J. (Gast)
Datum:

ich hab gerade noch mal genau gefummelt...^^ Also wenn ich den großen
Elko, der auf dem Modul ist, mit meinem Daumen "brücke", denn ist alles
super. Ohne meinen Daumen kommt nur Schrott raus...
Autor: FlipFlop (Gast)
Datum:

dann liegt die lösung ja auf der hand^^, elko auslöten und nur kleine
Keramikkondensatoren benutzen.
Autor: Eike J. (Gast)
Datum:

naja aber der hersteller wird sich doch was dabei gedacht haben oder???
Autor: Karl heinz Buchegger (kbuchegg) (Moderator)
Datum:

Oder Daumen dazulöten :-)

(Sorry, konnte nicht widerstehen)
Autor: Eike J. (Gast)
Datum:

ja ich weiß, klingt echt bescheuert. habs ja auch nur durch zufall
rausgefunden...
Autor: Eike J. (Gast)
Datum:

ich hab den kondensator jetzt auch mal ausgetauscht bzw ganz
weggelassen, es hilft aber alles nichts...
Autor: Eike J. (Gast)
Datum:

und wenn ich den finger nicht draufhalte, denn sind es grisselige 50Hz
mit einer Amplitude von ca 1V auf dem Ausgang... Hat keiner ne Idee was
dagegen hilft? Weil meinen Daumen wollte ich da nicht dranlöten...
Autor: Ingolf O. (headshotzombie)
Datum:

Speist Du die Schaltung aus einem NT, dann teste mal mit Batterie.
Ist das Problem damit weg, hast Du einem Lösungsansatz.
Autor: Eike J. (Gast)
Datum:

also mit batterie sind zumindest die 50Hz weg. das heißt der ausgang ist
die ganze zeit auf low. Wenn ich wieder in die nähe des Moduls komme
bzw. es berühre hab ich guten empfang.. check ich nicht.
Autor: Frank B. (frank501)
Datum:

Hallo,

ich hatte ein ähnliche gelagertes Problem.
Das Modul gab nur dann Sinnvolle Daten aus, wenn der ISP Anschluss an
der Schaltung steckte.
Mit Batterieen lief es auch erst, wenn ich mit dem Finger das Modul
berührt habe. Aber dann auch nach loslassen des selben.

Ich habe dann nach mehreren Versuchen und dank der Hilfe dieses Forums
herausgefunden, daß
1. die Versorgungsspannung nicht zu hoch sein darf
ich hatte die 3V für das modul über einen Spannungsteiler generiert und
mit 4 Batterien war diese zu hoch. Und da ich auch noch ein LCD
angeschlossen hatte, konnte ich nicht auf 2 Zellen herunter gehen.

2. das Netzteil eine sehr saubere Spannung abgeben muß.
Nachdem ich das Chinabillignetzteil (stand Intel drauf) durch ein noName
Netzteil (nicht mehr made in China sondern in England) erstetzt hatte,
lief es einwandfrei, ohne Hand auflegen und ohne ISP Kabel.

Frank
Autor: Zwie Blum (zwieblum)
Datum:

Lustig, ich hab' das Gegenteil: sobald der ISP steckt, kommt nur mehr
Rauschen aus dem Modul. Netzteil oder Batterie ist dabei egal.
Autor: Joachim A. (jojo84)
Datum:

Mahlzeit!

Auch ich hatte die letzten Tage mit dem "tollen" Redesign des
Pollin-DCF-Moduls zu kämpfen.
Das Problem war: die neue Pinbelegung hatte ich bemerkt, aber nicht, daß
das Modul nurnoch mit 3V versorgt werden möchte!
Die Folge: die Impulse kamen nicht sauber raus, sondern so zu sagen als
"Burst-"Pakete. Diese Burst-Pakete htten zwar die länge von dem
jeweiligen Impuls, aber das machte die Auswertung nicht einfacher ;) ...

Dann hab ich 100nF zwischen DATA und GND gepackt. Die Burst-Pakete
wurden hübscher, aber immernoch weitweitweit von sauber entfernt...

So, und DANN hab ich das mit den 3V "mitbekommen". Also quick & very
dirty einen Spannungsteiler aus 1k und 1k5 gebaut und drangehängt. Das
lief dann mit den 100nF an DATA... ähm... nicht. Nur ein leichtes Zucken
von ca. 0,2V auf der Leitung (mir wurde später auch klar warum... ;) ).
Also dann den Kondensator weggenommen, und daaaannnnn.... WIEDER
BURST-PAKETE (mit 2,9V)!!!
Ich also am fluchen und schimpfen...
Und auf einmal: wassn das? Urplötzlich wurden aus den Burst saubere
Impulse. Warum? Keine Ahnung, aber jetzt läufts!

Also: neues Pollin-Modul über Spannungsteiler versorgen, 100nF zwischen
VDD und GND und KEIN(!) Kondensator an DATA.

Gruß,
Joachim
Autor: Mario F. (marfri)
Datum:
Angehängte Dateien:

Hallo,

habe weiter oben schon mal gepostet,
egal das Pollin-Modul läuft mal jetzt, aber die Sekunden laufen ca.2sek
zu schnell bei Ausgabe von Time$!
Bzw. , wenn ich die  Time(dcf_sec)-Ausgabe wähle, dann springt die
Minute bei 28sek schon um 1min weiter.

Was kann ich da machen.
Benutze Bascom.

gruß
mario
Autor: Christopher (Gast)
Datum:

Hi @ all
habe mir auch das Modul von Pollin bestellt und habe es jetzt nach ca 6
Std. zum laufen gebracht.

Für alle die am verzweifenl sind, das waren meine Schritte:

1. Überprüfen ob man das neue oder alte modul hat! (hab das neue und hab
das nicht gewusst, dito falsch angeschlossen)
2. Versogungsspannung sicherstellen hatte auch erst 5V aber neues Modul
darf max 3,5V bekommen habe das ganze jetzt über einen Vorwiederstand,
Kondensatoren und einer Z-Diode gelöst
3. Überprüfen ob ein Signal vorhanden ist dazu habe ich einen
Schmitt-Trigger schaltung ähnlich der obigen gebaut, allerding greife
ich das signal am 2.Transistor am Collector ab. Wenn die Led dann bei
eingescalteter Versorgungsspannung Blinkt ist alles OK.
4. Signal einlesen da ich mit BASCOM programiere sieht die
inizialisierung für das Modul folgender maßen aus --->  Config Dcf77 =
Pind.0 , Inverted = 1 , Timer = 1 , Debug = 1 , Check = 1 , Gosub =
Sectic <------- Invertet = 1 weil ich das signal an der led abreife und
es somit inv ist, Debug = 1 da ich mir während der initialisierungsphase
die Debugdaten ausgeben lasse um zu sehen ob der zwerg was schafft.

Ich hoffe damit konnt ich helfen
Liebe Grüße Christopher
Autor: Daniel T. (dan1elt)
Datum:
Angehängte Dateien:

Hallo!

bin gerade auf der Suche nach Hinweisen zum DCF Modul von Pollin über
diesen Thread hier gestolpert.

Ich habe mir vor ca 2 Monaten auch dieses Modul bestellt. Heute abend
habe ich dann versucht es mit Arduino (ATmega8 mit Quarz auf Steckbrett)
ans laufen zu bekommen. Dazu habe ich den Sourcecode benutzt den ich
hier gefunden habe:

http://gonium.net/md/2007/01/06/arduino-dcf77-v02-released/

(Der ist eigentlich für das Conrad GPS-Modul)

Erstmal habe ich den DCF so angeschlossen wie es im Datenblatt stand. Da
nach ca 1h immer noch kein gültiges DCF Signal erkannt wurde, habe ich
nachgesucht und den Empfänger so angeschlossen wie ich meine es hier
verstanden zu haben. Dazu habe ich mal ein kleines Schaubild mit Foto
gemacht (Sorry, ist nur mit ner Webcam)

Anfangs habe ich den Empfänger mit 5V über eine 1n4001 Diode versorgt
(ca 4,5V).

Nachdem ich hier den Thread gelesen habe, erzeuge ich VCC mit nem
Spannungsteiler (1k + 510) aus 5V (ergibt dann ca 2,8V). Andere
Widerstände habe ich gerade leider nicht hier.

Was mich wundert, ist dass der Data Ausgang wenn ich mit dem Multimeter
nachmesse bei ca 200mV liegt, also quasi GND. Sollte der nicht High sein
und nur bei einem Impuls auf Low gehen???

Ach ja das PON mache ich momentan noch von Hand. Nach einschalten der
ganzen Schaltung Stöpsel ich den von VCC auf GND um.

Versorgt wird die ganze Schaltung über den USB-Port.

Folgende Fragen kann ich mir momentan nicht selber beantworten:

1. Ist das so richtig angeschlossen? Anhand der blanken Kontaktfläche
oben rechts meine ich zu erkennen, dass es ein DCF neuerer Bauart ist.

2. Kann ich mit dem Data-Ausgang direkt an den Eingang des AVR gehen?

3. Kann das Modul kaputt gegangen sein als ich es falsch herum
angeschlossen hatte?

Ich hoffe ihr könnt mir da weiterhelfen....

Gruß
Daniel
Autor: Skript Kiddy (skriptkiddy)
Datum:

Christopher schrieb:
> (Der ist eigentlich für das Conrad GPS-Modul)
Ehrlich?

> Sollte der nicht High sein
> und nur bei einem Impuls auf Low gehen???
Ich habe das selbe Modul und die Pulse haben Highpegel. Steht außerdem
im Datasheet von Pollin.

> 1. Ist das so richtig angeschlossen?
Ja

> 2. Kann ich mit dem Data-Ausgang direkt an den Eingang des AVR gehen?
0.6*VCC sollte der Pegel laut Atmega8-Datenblatt mindestens sein. Das
sind bei 5V Betriebsspannung 3V. Mit 2.8V liegst du knapp drunter.
Sollte aber trotzdem funktionieren.

> 3. Kann das Modul kaputt gegangen sein als ich es falsch herum
> angeschlossen hatte?
Kann durchaus sein.

Du könntest den Pin, an dem das Modul angeschlossen ist, pollen und je
nach Pegel eine LED leuchten lassen oder nicht. So kann man wunderbar
ein solches Modul testen.
Achja: Die Position der Antenne ist sehr wichtig.
Autor: Daniel T. (dan1elt)
Datum:

Danke für die Antworten.

Habe den Aufbau über Nacht laufen lassen, aber bis heute immer noch
keine Empfang. Danach habe ich die Antenne um 90° gedreht (liegend),
nach 30 min aber immer noch kein Empfang.

Ich werde dann heute mal folgendes probieren:

- 3,3V Regler (mit dem Oszi mal kucken wie sauber die Spannung ist)

- simples Programm in den ATmega das den Eingang pollt und den PON ca
2sek nach start von High auf Low zieht (habe ich pollen richtig
verstanden, dass ich einfach in ner Endlosschleife den Eingang abfrage
und dementsprechend den LED-Ausgang setze? brauche ich da eigentlich
einen internen oder externen Pullup?)

- wenn da nach 60 min auch nix ankommt werde ich mal ein zweites Modul
ausprobieren. Die Belegung sollte dann ja so wie ich es jetzt habe ok
sein.

Gruß
Daniel
Autor: Skript Kiddy (skriptkiddy)
Datum:

Daniel T. schrieb:
> habe ich pollen richtig
> verstanden, dass ich einfach in ner Endlosschleife den Eingang abfrage
> und dementsprechend den LED-Ausgang setze?
Genau so ist es.

> wenn da nach 60 min....
Das geht nach der fallenden Flanke an PON sofort los. Wenn du ein
suberes Signal reinbekommst, dann sollte deine LED dann ungefähr so
blinken wie die LED in diesem Projekt:
http://www.youtube.com/watch?v=W5649MnG_Ek
Wenn du ein solches blinken hast, dann ist hardwareseitig alles in
Ordnung und du musst dich blos noch um die Software kümmern.
Achja halte die Antenne von Störquellen fern. Diese "beschissenen"
Module von Pollin sind hyperempfindlich. Also am besten 5m vom Oszi weg.

> brauche ich da eigentlich
> einen internen oder externen Pullup?)
Sollte eigentlich auch ohne Pullup funktionieren. Ich hab bei mir keinen
aktiviert. Aber wenn du auf Nummer sicher gehen willst, dann schalte
doch einfach den internen hinzu.
Autor: Daniel T. (dan1elt)
Datum:

Hallo!

Es funktioniert. Das erste Modul scheint wirklich durch zu sein. Mit dem
Poll-Testprogramm und dem zweiten Modul fing nach wenigen sekunden die
LED an zu blinken.

Danach habe ich das o.g. Programm ausprobiert, nach ein wenig
Antennenausrichtung hatte ich da auch Zeit und Datum.

Ich habe noch eine Library gefunden, mit der das ganze im Arduino noch
einfacher geht:

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1267904090

Seltsamerweise wird hier ein Analogport (im Beispielprogramm Analog 1)
benutzt. Leider ist diese Library auch ca 1kB größer als das o.g.
Programm.

Danke für eure (insbesonder deine, Skript Kiddy) Hilfe!!!

Gruß
Daniel

P.S.: Bei mir muss der PON nicht von VDD auf GND geswitched werden.
Funktioniert auch wenn ich den von vornerein auf GND lege. Und ich
brauche keinen internen Pullup (bei keinem der Skripte).
Autor: Christian K. (Gast)
Datum:

Daniel T. schreibt:
> P.S.: Bei mir muss der PON nicht von VDD auf GND geswitched werden.
> Funktioniert auch wenn ich den von vornerein auf GND lege.

Ich habe letzte Woche auch ein DCF-Modul von Pollin bekommen, bei dem
ich PON fest mit GND verbunden habe. Das Modul läuft damit einwandfrei.
Eine High-Low-Flanke an PON zum Einschalten braucht man bei den
aktuellen Modulen offenbar nicht mehr, auch wenn das Datenblatt etwas
anderes behauptet.

> Und ich brauche keinen internen Pullup (bei keinem der Skripte).

Den Pullup sollte man sowieso nicht einschalten, denn das Modul kann am
Datenausgang sowohl nach VDD und nach GND aussteuern, allerdings nur mit
Iout > 5 µA. Im Datenblatt des ATmega8 werden 20 kOhm als Mindestwert
für den Pullup genannt. Im schlimmsten Falle hat man also nur 5 µA * 20
kOhm = 100 mV Spannungsabfall über dem Pullup, also nur VDD - 0,1 V am
ATmega-Eingang, wenn das Modul seinen Datenausgang nach Low zieht. Am
ATmega-Eingang ergäbe sich also fälschlicherweise High-Pegel, obwohl das
DCF-Modul Low ausgibt.

Christian.

Antwort schreiben

Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email ü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




Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder GIF-Format hochladen.
Siehe Bildformate

Mit dem Abschicken erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net