PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : DCF77 Modul an RN-Control



meddie
21.08.2009, 07:57
Hallo Leute,

ich habe wiedermal eine Frage - ich habe das RN-Control Board 1.4 und ein DCF77 Modul vom großen C. Kann ich das Modul einfach an +5 V GND und an ein Pin am Controller anschließen oder brauche ich bei dem DCF Signal einen Pullup Widerstand?

Danke

Magic_X
21.08.2009, 09:03
Hallo,
da das DCF Modul einen offenen Ausgang hat, musst du per pull-up Widerstand (oder der entsprechenden Programmierung des Eingangs) für einen passenden Pegel sorgen. Widerstand sollte 4k7 bis 10 k haben.
Gruß
m

meddie
21.08.2009, 13:51
Jetzt habe ich die Antenne an 5 V angeschlossen und an Masse und den DCF Ausgang habe ich mit einem 5k6 an den PortB.4 angeschlossen. Aber nach 30 Minuten geht immer noch ncihts.

Ich habe zum Probieren aus den Samples/DateTime von Bascom den DCF77 Beispiel.

'---------------------------------------------------------
' (c) 1995-2007 MCS Electronics
' DCF 77 demo to demonstrate the DCF77 library from Josef Vögel
'---------------------------------------------------------
$regfile = "M32def.dat"
$crystal = 16000000
$baud = 9600

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


Config Dcf77 = Pinb.4 , Timer = 1 , Debug = 1 , Check = 1 , Gosub = Sectic
'Config Dcf77 = Pind.7 , 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

' Testroutine für die DCF77 Clock
Print "Test DCF77 Version 1.02"

Print "Configuration"



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

Kann man die Antenne mit einem Multimeter testen ob die was ausgibt?

meddie
21.08.2009, 15:01
Sind die Dinger emfindlich, ich glaube ich habe vorhin 3 Volt auf den DCF Ausgang gelgt. Ist die nun hin?

Magic_X
21.08.2009, 16:29
Hallo,

zuerst einmal: ich hab´ noch keines der Module klein gekriegt, da schaffst du das auch nicht. Die Biester sind robust O:)

Du kannst ganz leicht messen, ob das Modul etwas macht.
5V und GND anschließen, sowie deinen 5k6 Widerstand an 5V. Jetzt kannst du, wenn Empfang möglich ist, im Sekundentakt (außer 59. Sekunde) messen, wie das Signal kommt (je nach Ausgang des Moduls high-activ oder low activ).
Richtig gut prüfen kannst du das Modul natürlich mit einem Oszi, obgleich die Darstellung natürlich bei einem Tick/Sek gewöhnungsbdürftig ist. Du siehst aber relativ gut, ob alle Ticks kommen, oder ob Aussetzer drin sind.

Viel Erfolg.
Gruß
m

meddie
21.08.2009, 19:04
Ist das so richtig?

http://www.fam-markus.de/fotoforum/avr/dcf.jpg

meddie
21.08.2009, 21:43
wie muss ich den port deinieren, damit ich kein puu-up widerstand brauche?

rideyourstyle
21.08.2009, 22:25
Ich kenn mich mit dem Modul zwar nicht aus, aber so wie du das gezeichnet hast ist es falsch. Auf dem Pin PB4 hast du jetzt dauernd die fünf Volt der Spannungsquelle.
Wenn Pin 2 des Moduls der Datenausgang ist, dann hast du den PullUp Widerstand richtig angeschlossen. Nun must du aber die Weiterführung der Daten direkt am Modulausgang Pin 2 anschliessen oder einfach auf der anderen Seite des Widerstandes. Dann könnte es funktionieren!!!

Gruss Peter

meddie
21.08.2009, 22:36
Ich komme jetzt nicht ganz mit sorry ich fange erst an mit dem Controller. Kannst du evtl eine kleine Skizze machen. Danke

rideyourstyle
21.08.2009, 23:04
Die Datenleitung muss direkt zum Prozessor weitergeleitet werden. Der PullUp soll nur die Datenleitung auf HighLevel (5V) halten. Sobald das Modul Daten senden will, dann "zieht" es die Datenleitung auf LowLevel (0V). Aus diesem Unterscheid des Pegels erkennt dann der Kontroller was das Modul senden wollte....

Weitere Infos: http://de.wikipedia.org/wiki/Open_circuit


http://www.rideyourstyle.ch/other/ForenFotos/PullUp.GIF^


Schnell^2 MS-Paintzeichnung mit Schreibfehler! ;-)

meddie
22.08.2009, 21:33
Hallo Leute, danke sehr jetzt geht es, ich habe heute das erste mal ein DCF Signal empfangen. Ist zwar noch nicht stabil denn manchmal verrechnet er sich und dann stimmen Minuten nicht, aber das korrigiert er dann ja.

Aber ein Phänomen habe ich trotzdem das funktioniert nur solange wie ich die Masse vom Taskkopf vom Oszi an der Masse von der Boardspannung dran habe. Sobald ich diese wegtue ist der Port dauernd auf High. Was kann das sein?

meddie
24.08.2009, 08:22
Kann das evtl. ein Netzteilproblem sein, dass das Controllerboard sich dann Masse vom Oszi holt?