Forum: Mikrocontroller und Digitale Elektronik Ct Hacks Worldclock mit DCF


von Martin (Gast)


Lesenswert?

Ich hab den Worldclock aus der Ct Hacks nachgebaut. Lauft soweit so gut, 
nur bleibt es immer zwölf uhr, also lauft sie eigentlich nicht.
Das Problem ist das ich kein RTC-modul habe, dafür ist aber ein 
Dcf-modul angeschlossen, alles nach Plan.
Das Dcf- Modul funktioniert und das signal kommt auch problemlos an Pin 
PB2 an, alles kontroliert, aber irgendwie wird es einfach nicht 
verarbeitet.
Kann ich das uberhaupt so betreiben? Also ohne Signal am sda und scl? 
Oder muss ich etwas im Schaltplan oder gegebenfalls im Software ändern?
Ich habe das Gefuhl das das Programm einfach nicht weiter lauft weil das 
Signal vom RTC fehlt. Ich brauche aber nicht beides. Wenn DCF 
funktioniert, brauche ich kein RTC.
Schaltplan und Software sind hier zu finden:
https://github.com/heise/WORDCLOCK

von Sebastian (Gast)


Lesenswert?

Ich kenne die Wordclock als Projekt jetzt nicht, vielleicht kommen da 
noch bessere Antworten, aber ich kann mir gut vorstellen, daß es ohne 
RTC nicht geht - heute decodieren die wenigsten Uhren DCF fortlaufend 
(weil Empfangsbedingungen stark schwanken und Störungen erkennbar 
wären), so daß die einzige Alternative zum RTC ein Software-Timer sein 
könnte.
Ist erkennbar, ob die Firmware im Interrupt Sekunden zählt? Vielleicht 
wird aber bein Start auch eine RTC-Abfrage durchgeführt und das Programm 
bleibt dort hängen, wenn nichts passiert.

von Amateur (Gast)


Lesenswert?

Hast Du auch lange genug gewartet?

Manche Leseroutinen brauchen etwa 3 Minuten, wenn es ein sehr 
ängstlicher Programmierer war, auch länger, bis das erste Ergebnis 
akzeptiert wird.

Auf Verdacht, ohne das Projekt zu kennen: Schalte das Teil mal so 10 
Minuten vor Mitternacht an und warte 'ne halbe Stunde.

Um Strom zu sparen wird in vielen Fällen die Uhr nur einmal am Tag 
eingeschaltet (der Empfänger). Mitternacht wäre eine Möglichkeit oder 
halt alle 24 Stunden, ab Einschaltung.

von Wolfgang (Gast)


Lesenswert?

Martin schrieb:
> Wenn DCF funktioniert, brauche ich kein RTC.
Da täuscht du dich. Du brauchst mindestens eine Software RTC, damit bei 
schlechtem Empfang eine Uhrzeit zur Verfügung steht. Wenn du etwas 
weiter von Mainflingen entfernt wohnst, ist das empfangene Signal oft 
nur in den Nachtstunden sauber und stark genug für einfache Empfänger.

von Hagger (Gast)


Lesenswert?

Hallo,

du mußt das HEX-File selber compilieren und dafür im PAS-File die 
Kommentare vor den DCF-Zeilen entfernen. Das HEX-File auf GitHub enthält 
keinen DCF-Support.

Hagger

von Martin (Gast)


Lesenswert?

Genau das hab ich mir gedacht. Allerdings geht das für mich ein bischen 
zu weit. Weiss nicht so genau was ich mit den Pas-file anfangen soll.
Bin halt Bastler, kein Programierer.
Wäre für jede weitere Hilfe dankbar.

Grusse aus der Schweiz.

von Peter D. (peda)


Lesenswert?

Martin schrieb:
> Weiss nicht so genau was ich mit den Pas-file anfangen soll.

Sei doch nicht so lesefaul:

"Sie benötigen zum Kompilieren bei eigenen Änderungen den kostenlosen 
Compiler AVRCo Pascal Mega8"

Und da steht bestimmt auch drin, wie man das Legosteinchen für die 
Soft-RTC hinzufügt.

von Martin (Gast)


Lesenswert?

Ja, das habe ich gelesen. Und jetzt?
Ich hab doch keine Ahnung was ich mit dem Programm anfangen soll.

von Martin (Gast)


Lesenswert?

Also, Die Avrco Compiler habe ich hier. Projectfiles vom Uhr, sowie .pas 
und .hex dateien sind auch vorhanden.
Nur kann mann das alles nicht einfach so öffnen und bearbeiten. Kann mir 
vielleicht jemand sagen wie ich damit anfange? Ich weiss es gibt 
Handbucher beim Compiler, jede Menge sogar. Aber wie gesagt, ich bin in 
diese Programmierwelt ziemlich Noob und dann wird mann vom Handbuch auch 
nicht wirklich schlau.

von Martin (Gast)


Lesenswert?

Also, hab jetzt alles probiert. auch mit dem Projectfiles aus der 
Github-directory. Ich kriegs einfach nicht hin. Einfach die Kommentaren 
vor den DCF-Zeilen wegnemen und neu kompileren funktioniert nicht. 
Warscheinlich muss mann mit den Avrco noch irgendwie der Treiber für DCF 
reinbauen, aber da verstehe ich nur noch Bahnhof.
Hab mir jetzt auf jeden Fall mal ein RTC besorgt, damit die Uhr lauft. 
Wenigstens das lauft perfekt.
Und ja, ich habe die Handbucher vom Avrco gelesen, aber mit meine 
Grundkenntnisse kommt mann da nicht weiter.

von Hagger (Gast)


Lesenswert?

Hallo Martin,

der hier (Carsten Meyer) http://www.heise.de/ct/Redaktion/cm/ hat den 
Artikel verzapft. Unten auf der Seite ist seine Mailadresse. Warum 
fragst du den nicht?

Hagger

von Martin (Gast)


Lesenswert?

Also, ich hab jetzt mal das pas-file mit avrco bearbeiten können, damit 
er jetzt wenigstens anzeigt das es "viertel vor sechs" ist und nicht 
"dreiviertel sechs". Soweit klappt also das neu kompilieren mit avrco. 
Mit dem Dcf ist aber immer noch nichts. Ich glaube da fehlt noch etwas 
mehr.

von Manfred53 (Gast)


Lesenswert?

Martin schrieb:
> Ich glaube da fehlt noch etwas
> mehr.

Ja Martin,

der Quellcode ist bezüglich des DCF Codes falsch, wenn man z.B. den 
DCF77 Decoder von ELV verwendet. das Port muss negative Polarity 
aufweisen.

Weiterhin habe ich das DCF Modul noch mit einer extra 100µF Elko + 100nF 
Ceramik SMD auf der Versorgungsleitung abgeblockt, wegen der 25 cm 
langen Leitung und mit 10nF zwischen Data und Gnd. Letzteres wurde auch 
von ELV in der KL 2001 Uhr genannt.

Hier die richtigen Defines:

Import SysTick, TWImaster, RTClock, TickTimer;
Import DCFclock;

From System Import LongWord, Random;

Define
  ProcClock      = 8000000;       {Hertz}
  SysTick        = 10;            {msec}
  StackSize      = $0032, iData;
  FrameSize      = $0032, iData;
  DCFclock       = iData;
  DCFport        = PinB, 2, negative; {Port, Pin#, Polarity}
  TWIpresc       = TWI_BR100;     {100kBits/sec}
  TickTimer      = Timer1;
  RTClock        = iData, DateTime;
  RTCsource      = SysTick;

Damit syncht meine Wordclock binnen einer Minute.

Gruss

Manfred

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.