Forum: Mikrocontroller und Digitale Elektronik Problem mit DCF 77,5 Modul


von Tom Z. (tom_z)


Lesenswert?

Hallo,

ich habe ein Problem mit dem Conrad DCF Modul.
Hatte bis jetzt 2x Pollin Module und 1 aus einer Funkuhr probiert.

Ich versuchs jetzt mit dem Conrad Modul, weil man es direkt an 5 Volt 
anschliessen darf und die Ausgangstreiber schon drin sind.
Ich habe zusätzlich noch vom normalen Datenausgang einen 10k Pullup 
Widerstand (Open Collector Ausgang).

Im Programm hab ich ne LED mit eingebunden und die soll mit blinken mit 
dem DCF Signal (Die LED hängt an einem anderen Pin als das DCF Modul).
Das tut sie aber nur selten.

Bin schön langsam genervt, weils einfach nicht funktionieren möchte.
Kennt jemand eine Schaltung fürs Conrad Modul die sicher funktioniert?

DCF Empfang sollte Ok sein. (Wohne ca. 245km Luftlinie von Mainflingen 
weit weg)

An PinB.1 ist der DCF Empfänger angeschlossen.

Hier noch mein Programm:
1
$regfile = "m8def.dat"                                      ' specify the used micro
2
$crystal = 1000000                                          ' used crystal frequency
3
4
$hwstack = 32                                               ' default use 32 for the hardware stack
5
$swstack = 10                                               ' default use 10 for the SW stack
6
$framesize = 40                                             ' default use 40 for the frame space
7
'Config Portb.0 = Output
8
Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0
9
Config Lcd = 16 * 4                                         'configure lcd screen
10
Cursor Off Noblink
11
Config Portd.5 = Output
12
Config Pinb.1 = Input
13
Config Dcf77 = Pinb.1 , Timer = 1                           ', Timer1sec = 1 , Debug = 1
14
15
16
17
Enable Interrupts
18
19
Config Date = Dmy , Separator = .
20
21
22
23
24
25
Dim I As Integer
26
27
Dim Sec_old As Byte , Dcfsec_old As Byte
28
29
30
31
Sec_old = 99 : Dcfsec_old = 99                              ': DCF_Debug_Timer = 0
32
33
34
35
36
Cls
37
38
Do
39
If Pinb.1 = 1 Then
40
  Portd.5 = 1
41
Else
42
  Portd.5 = 0
43
End If
44
45
  For I = 1 To 78
46
47
    Waitms 10
48
49
    If Sec_old <> _sec Then
50
51
        Exit For
52
53
    End If
54
55
    If Dcfsec_old <> Dcf_sec Then
56
57
        Exit For
58
59
    End If
60
61
  Next
62
63
  Waitms 220
64
65
  Sec_old = _sec
66
  Dcfsec_old = Dcf_sec
67
68
   Locate 1 , 1
69
   Lcd Time$
70
   Locate 2 , 1
71
   Lcd Date$
72
73
74
Loop
75
76
End




PS: Hab grad noch was probiert. Bei dem Aldi Funkwecker habe ich das 
orginale DCF Modul abgeklemmt und das Conrad Modul mit nem 10k Pullup 
angeschlossen. Die Aldi Uhr hat nach ca. 10 Minuten Empfang gehabt.

Ich vermute, dass es bei mir ein Hardwareproblem ist und mein AVR keinen 
Sauberen High Pegel erkennt.

Der AVR arbeitet bei 5V und die Aldi Uhr bei 3V.
Beides am Labornetzteil getestet.

MfG Tom

von Artjomka (Gast)


Lesenswert?

Config Portd.5 = Output
Config Pinb.1 = Input

Kenne kein Basic, aber macht es einen Unterschied ob man "Port" oder 
"Pin" schreibt?

Ansonsten kannst du auch mal versuchen das DCF-Modul über RC-Tiefpass zu 
versorgen.

Du könntest auch mal versuchen über das Modul direkt eine LED an zu 
steuern (evtl. über nen Transistor).

Hast du den internen Pull-Up vom AVR aktiv?

von Tom Z. (tom_z)


Lesenswert?

Danke für deine Antwort.

Denke mit Port und Pin sollte alles in Ordnung sein.
Das mit der LED werd ich testen.

Den internen Pullup hab ich nicht aktiv. Ich benutze einen extern 10k 
Widerstand.

von oszi40 (Gast)


Lesenswert?

1.Allgemein würde ich das DCF-Modul erst mal weiter entfernt testen um 
Störstahlungen aus der restlichen uC Schaltung auszuschließen.
2.Der Jubel über die Pollin-Module war hier weniger groß.
3.Zu DCF77 gibt es hier noch weitere nützliche Beiträge zum nachlesen.

von Tom Z. (tom_z)


Lesenswert?

oszi40 schrieb:
> 1.Allgemein würde ich das DCF-Modul erst mal weiter entfernt testen um
> Störstahlungen aus der restlichen uC Schaltung auszuschließen.

Werd ich versuchen, glaub aber nicht dass es daran liegt, weil die Aldi 
Uhr mit dem Conrad Modul am gleichen Standort und mit dem gleichem 
Labornetzteil empfang hat.

von Jürgen S. (jurs)


Lesenswert?

Tom Z. schrieb:
> Ich versuchs jetzt mit dem Conrad Modul, weil man es direkt an 5 Volt
> anschliessen darf und die Ausgangstreiber schon drin sind.
> Ich habe zusätzlich noch vom normalen Datenausgang einen 10k Pullup
> Widerstand (Open Collector Ausgang).

Das Pollin-Modul hat einen Push-Pull Ausgang, ist nur für 3.3 Volt 
Betriebsspannung und kann direkt an einen Digital I/O angeschlossen 
werden.

Das Conrad-Modul hat einen Open-Collector Ausgang und benötigt einen 
PullUp-Widerstand als zusätzliche Beschaltung.


> Bin schön langsam genervt, weils einfach nicht funktionieren möchte.
> Kennt jemand eine Schaltung fürs Conrad Modul die sicher funktioniert?
>
> DCF Empfang sollte Ok sein. (Wohne ca. 245km Luftlinie von Mainflingen
> weit weg)

Der DCF-Empfang ist abhängig von den elektrischen Gerätschaften in der 
Umgebung: Monitor, PC, jedes Schaltnetzteil und jede Energiesparlampe 
senden Störfunk, der den DCF-Empfang oft sehr wirksam verhindert.

Das Pollin-Modul macht bei Störungen komplett dicht und legt seinen 
Ausgangspegel auf Ground, da ist dann gar nichts mehr feststellbar, dass 
es überhaupt arbeitet.

Das Conrad-Modul liefert bei Störungen ein wildes Gezappel am Ausgang, 
im Abstand von wenigen Millisekunden, das mit dem DCF-Signal nichts mehr 
zu tun hat.

Im Endeffekt müssen die Module weit genug weg sein vom Computer. Ich 
programmiere mit Arduino und habe hier schon Pollin- und 
Conrad-DCF-Module auf dem Tisch gehabt. Das funktioniert hier bei mir 
(ca. 650 km von Frankfurt) mit störungsfreiem Empfang nur, wenn ich eine 
3-Meter USB-Verlängerung verwende und mein Arduino-Board mit dem 
DCF-Modul mindestens zwei Meter von Monitor und PC entfernt auf den 
Tisch lege.

von Tom Z. (tom_z)


Lesenswert?

Ich werds morgen mal mit Batterie draussen probieren.

Das komische ist ja, wenn ich das Conrad Modul an meinem Tisch an die 
Aldi Funkuhr anklemme, hat die Uhr so nach ca. 10 Minuten empfang. Die 
Uhr und das Modul wird dabei von meinem Labornetzteil gespeist.

Schliesse ich am gleichen Tisch und an das gleiche Labornetzteil das 
Modul an meine Schaltung an, dann habe ich keinen Empfang und auch die 
LED die das Blinken signalisieren soll blinkt auch nicht (nur selten).

Bei beiden Schaltungen 10k Pull up

von Karl H. (kbuchegg)


Lesenswert?

Wenn du dir nicht sicher bist, ob du ein Hardware-Problem hast, warum 
probierst du dann nicht einfach mal das allereinfachst mögliche 
Programm, welches einfach nur dein Eingang auf die LED rausklopft ohne 
sonstigen Schnickschnack
1
...
2
Do
3
  If Pinb.1 = 1 Then
4
    Portd.5 = 1
5
  Else
6
    Portd.5 = 0
7
  End If
8
Loop

Keine Interrupts, kein LCD, kein sonstiges was auch immer, welches dir 
einen Programmfehler einbringen könnte.

Wenn da die LED im korrekten Takt blinkt, dann weißt du zumindest mal, 
dass der Empfänger KEIN grundsätzliches Problem hat.

von Tom Z. (tom_z)


Lesenswert?

Hab jetzt nur die If Abfrage ausprobiert und sie funktioniert mit einem 
Taster mit Pullup, aber nicht mit dem DCF Modul. Da rührt sich gar nix.

Aber wieso ist der Ausgang des DCF Moduls immer low?

Beim gleichem Standort geht das Modul ja mit dem Aldi Wecker.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Abgesehen davon laufen auch die Pollinmodule an 5V. Man sollte die 
Betriebsspannung für die Teile gut absieben, zum Beispiel mit einem 
doppelten L/C-Filter 10µH/100nF. Damit laufen die Teile schön ruhig. 
Habe gestern gerade wieder eins aufgebaut. Das einzige was an den 
Dingern etwas stört ist, dass sie nur mit einem H->L Flankenwechsel an 
PON sofort anlaufen. Bei Controllern mit wenigen Pins muss man sich 
deshalb eine kleine Verzögerungsschaltung für den Einschaltvorgang mit 
Transistor und R/C-Glied dranstricken.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Tom Z. schrieb:
> Hab jetzt nur die If Abfrage ausprobiert und sie funktioniert mit einem
> Taster mit Pullup, aber nicht mit dem DCF Modul. Da rührt sich gar nix.
>
> Aber wieso ist der Ausgang des DCF Moduls immer low?

Das Modul muss mit seiner Ferritantenne auch ausgerichtet sein. In einem 
Plattenbau muss das Modul in der Nähe eines Fensters platziert sein.

Da das Conradmodul einen Treibertransistor hat, kannst Du eine LED auch 
mit Vorwiderstand direk an das Modul vom Ausgang nach 5V anschließen und 
dann rennst Du mit ´ner Batterie und dem Modul mal durch die Wohnung und 
guckst, wo die LED sauber blinkt.

von Falk B. (falk)


Lesenswert?


Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.