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...
Datum:
Das ist aber im moment wohl nicht lieferbar, ich hab ein paar bestellt und die waren nicht dabei und werden irgendwann nachgeliefert.
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.
Datum:
Such mal in der Codesammlung nach "DCF77" und "DCF 77", da gibt es einige Treffer.
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.
Datum:
uii das ist ja sehr günstig. Pollin ist echt super :) Billiger geht's wohl nur direkt aus china.
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
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.
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ß
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.
Datum:
wie sieht die Schaltung denn dann aus? Brauch man dann nicht auch ein Verzögerungsglied (C?)?
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
Datum:
Ja, ein R, ein C und ein Schmitt-Trigger oder zwei Rs und ein C und ein Transistor. Letzteres habe ich nicht getestet.
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.
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.
Datum:
Hallo, was meinst Du mit Richtung? Horizontal/vertikal? Oder muss man damit tatsächlich "zielen"? Schöne Grüße, Oliver
Datum:
Wenn der Stab in Richtung Mainflingen zeigt kann der Empfang etwas schwierig werden. Horizontal quer dazu ist besser.
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.
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). ;-) ...
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.
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
Datum:
Die Stromaufnahme des Moduls kann "0,nix" sein, wenn man es über einen Portpin versorgt und halt abschaltet, wenn man es nicht braucht ;-).
Datum:
Stimmt ! Auf die Idee bin ich noch gar nicht gekommen. Danke dann bestell ich das Teil mal.
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.
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
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.
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
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?
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.
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.
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.
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.
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 ;-)
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.
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.
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".
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
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.
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.
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.
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
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?
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.
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).
Datum:
Störquelle in der Nachbarschaft oder in den eigenen 4 Wänden! Ermitteln und abschalten.
Datum:
braucht das modul jetzt eigentlich eine HIGH-LOW Flanke an PON oder geht es auch ohne?
Datum:
Meine brauchen diese. Ohne laufen sie auch nach ´ner halben Stunde nicht an.
Datum:
Dito -- ohne H->L an PON (ich mach's ca. 1 s nach Anlegen von Vdd) kein Ausgangssignal.
Datum:
Ich habe 47µF von Vdd nach PON und 1k von PON nach Masse. Klappt prima! Gruß Herby
Datum:
Ja, funktioniert seit ca. 3 Wochen ohne jedes Problem. Nur die pos. Flanke vom Ausgang nervt etwas. Gruß Herby
Datum:
man kann den widerstand ja noch erhöhen, irgendwann muss es ja funktionieren :)
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... ;-)
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 :-(
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.
Datum:
Mag sein, aber ich habe zwei Stück hier und da will man sie natürlich auch zum Laufen bringen :-)
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).
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 (?).
Datum:
Achtung der Pollin kommt nicht wie angegeben mit bis zu 5,5V klar, bei mehr als 4V hatte ich kein Empfang
Datum:
Angehängte Dateien:Hier kommen ein paar (hoffentlich) aufschlussreich Bilder der Signalform für alle, die kein Oszi zur Hand haben. MfG, Flo
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.
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?
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?
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.
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.
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.
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... ;-) ...
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.
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. ...
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.
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.
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.
Datum:
Und welche Schaltwandlerfrequenz. Ist unter Umständen auch interessant.
Datum:
> Und welche Schaltwandlerfrequenz. Ist unter Umständen auch interessant.
Na 77,5 kHz...
Duck&weg...
...
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.
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.
Datum:
http://comwebnet.weimars.net/forum/forumdisplay.php?fid=84 In Bascom für den DCF-Modul von Pollin.
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.
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.
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.
Datum:
Also das mit 100nF hat noch nicht den gewünschten Erfolg gebracht. Könnte wohl dann doch an der Software (s.o.) liegen.
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)?
Datum:
Jetzt hängt das Modul an einer 3V Knopfzelle. Kann vielleicht noch jemand etwas zu meinem vorherigen Posting mit dem TCNT1 sagen? Merci.
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
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.
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.
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.
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
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.
Datum:
Das Signal sollte man deshalb nicht per Interrupt-Leitung auswerten, sondern in einem Timer-Interrupt alle zig Millisekunden abfragen.
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.
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.
Datum:
Könnten wirklich verschiedene Modelle sein. Waren ja mal kurz Zeit nicht online bestellbar gewesen.
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.
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.
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 :/
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 ;)
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:
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?
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.
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
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.
Datum:
Angehängte Dateien:@Ulrich Wenn du mich meinst, bitte... Achtung! Schaltplan ist noch für die alte Pinbelegung.
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
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...
Datum:
dann liegt die lösung ja auf der hand^^, elko auslöten und nur kleine Keramikkondensatoren benutzen.
Datum:
naja aber der hersteller wird sich doch was dabei gedacht haben oder???
Datum:
ja ich weiß, klingt echt bescheuert. habs ja auch nur durch zufall rausgefunden...
Datum:
ich hab den kondensator jetzt auch mal ausgetauscht bzw ganz weggelassen, es hilft aber alles nichts...
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...
Datum:
Speist Du die Schaltung aus einem NT, dann teste mal mit Batterie. Ist das Problem damit weg, hast Du einem Lösungsansatz.
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.
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
Datum:
Lustig, ich hab' das Gegenteil: sobald der ISP steckt, kommt nur mehr Rauschen aus dem Modul. Netzteil oder Batterie ist dabei egal.
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
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
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
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
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.
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
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.
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).
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.




