Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > > > > > Hallo, > > > > > > > > > > obwohl zu diesem Thema schon viel geschrieben wurde und ich alles gelesen habe komme ich mit meinem > > > > > Problem nicht weiter: > > > > > > > > > > Beim Bau eines Datenloggers (Aufzeichnen von Zählerständen auf SD-Karte) möchte ich die genaue Zeit > > > > > der DCF77 Uhr mit abspeichern. Als Empfänger dient das bekannte Conrad Modul 641138. Mit verschiedener > > > > > Beispiel-Software konnte die Uhr keine Zeit empfangen. Die Fehlersuche konzentrierte sich zunächst > > > > > auf die Conrad Module, hier war von 3 verfügbaren Modulen eines definitiv defekt. Bei den anderen > > > > > beiden ist kein sauberes Signal beim Anschluss an Port F.0 der C-Control messbar. Betreibt man das > > > > > Modul getrennt von der C-Control so kann man wunderbar die Signale des Senders mittels LED und > > > > > natürlich mit dem Oszilloskop an beiden Ausgängen nachweisen! Offenbar liegt die Störquelle ja dann > > > > > in der C-Control? Hierzu nun folgende Fragen: > > > > > > > > > > Welcher Ausgang (invertiert oder nichtinvertiert) muss mit der C-Control Pro verbunden werden? Hierzu > > > > > findet man alle 3 möglichen Antworten von invertiert, nicht invertiert oder egal! > > > > > > > > > > Pull-Up Widerstand ja oder nein? Auch hier werden beide Meinungen vertreten! > > > > > > > > > > Da ich alle Varianten ausprobiert habe sind diese Fragen nur von akademischer Bedeutung. > > > > > > > > > > Was bringt also das Signal des Senders beim Anschluss an die C-Contro Pro zum Zusammenbruch? Es > > > > > sind keine logischen Abläufe mit dem Oszilloskop mehr messbar. Ich habe übrigens auch zwei > > > > > verschiedene Application Boards getestet, bei beiden das gleiche negative Resultat! > > > > > > > > > > Für jede Antwort wäre ich dankbar > > > > > > > > > > > > > Hallo, > > > > > > > > wenn Du bereits alles über DCF gelesen hast, dann auch sicherlich das die DCF_LIB.cc einen Fehler hat: > > > > > > > > > > > > > > suche mal in der DCF Lib nach der Zeile > > > > > > > > > > > > if (BIT_CNT>=22) // Start der Datenaufnahme ab Minuten > > > > > > > > > > > > und ändere sie auf > > > > > > > > > > > > if (BIT_CNT>=21) // Start der Datenaufnahme ab Minuten > > > > > > > > > > > > Grüße Jörg > > > > > > > > > > > > > > Ich hatte das mal an Conrad geschrieben aber keine Antwort erhalten. > > > > > > > > Der Pull-Up muß gesetzt werden. Das geschieht aber in der Lib. > > > > > > > > Beim Ausgang bin ich mir nicht mehr sicher aber es müßte der nichtinvertiert sein. > > > > > > > > Hier noch einige Tips: > > > > > > > > In der Interruptroutine eine LED schaltet. Dann müßte man die Pulse an der LED sehen. > > > > > > > > Den Maximalen irqcnt=Irq_GetCount(INT_TIM2COMP); abspeichern und im Hauptprogramm > > > > ausgeben. Der darf außer beim ersten mal nicht über 1 kommen.! > > > > > > > > Nie Textausgaben in der Interruptroutine machen!!!! > > > > > > > > byte DCF_MODE; > > > > byte SEC_CNT; > > > > byte DATA_CNT; > > > > byte DCF_PARITY; > > > > byte DCF_ARRAY[7]; > > > > Im Hauptprogramm cyclisch Ausgeben und sehen was passiert: > > > > > > > > > > > > Benutzt Du das SD schreiben schon? > > > > Ich bin mir nicht sicher ob man beim Schreiben auf SD nicht IRQ's verliert. > > > > Du müßtes dann währen der Syncronisation auf das Schreiben verzichten. > > > > > > > > Ich habe auch einen Datenlogger mit 4 Temperatursensoren und DCF. SD fehlt allerdings noch. > > > > Ich zeichne die Seriellen Daten mit einem Terminalprogramm auf. > > > > > > > > > > > > Grüße Jörg > > > > > > > Hallo Jörg, > > > > > > zunächst danke für Deine ausführliche Antwort. > > > > > > Den Fehler in der LIB habe ich natürlich korrigiert, ebenfalls habe ich es mit und ohne zusätzlichen > > > externen Pull-Up Widerständen versucht, beides hat leider nichts gebracht. > > > > > > Deine Tips zum Programm muß ich noch ausprobieren, dazu werde ich mich wieder melden. > > > > > > Der Datenlogger läuft z.Z. bei mir im Probebetrieb, d.h. er ist noch nicht an die Schnittstellen > > > zu den Zählern angeschlossen. Diese wurden einzeln erfolgreich getestet, von der IR-Schnittstelle > > > des Zweirichtungszählers habe ich die SML-Protokolle über RS232 eingelesen und vom Solarzähler die > > > Impulse von der Ferrarisscheibe des Zählers optisch erfasst. Im Probebetrieb werden die Zählerdaten > > > per Zufallszahl erzeugt und zusammen mit der Uhrzeit im 1-Minutentakt auf die SD-Karte geschrieben. > > > Das läuft soweit prima, nur benutze ich bisher die interne Uhr da DCF77 noch nicht funktioniert. > > > SD-Karte ist kein Problem, man kann sie nur nicht zusammen mit der USB-Schnittstelle benutzen. Wenn > > > man die SD-Karte nach Conrad-Anleitung verdrahtet, muß man USB deaktivieren und die Kommunikation > > > mit dem PC muss über RS232 erfolgen. Falls Du an Einzelheiten zu meinem Projekt interessiert bist > > > bitte melden. > > > > > > Grüße Karl-Josef > > > > > Hallo Jörg > > > > habe inzwischen auch Deine Tips ausprobiert und mir die Variablen anzeigen lassen: > > > > irqcnt startet mit 11, ist dann immer 1, nimmt aber 1 x pro Sekunde den Wert 2 an > > DCF_MODE startet mit 2 und fällt nach 3 min auf 0 ab > > SEC_CNT hat wechselnde Werte > > DATA_CNT ist immer 0 > > DCF_PARITY ist immer 0 > > DCF_ARRAY[7] wird in meiner DCF77.cbas nicht angenommem!? > > > > Wie ich die LED schalten soll ist mir nicht ganz klar. > > > > Grüße Karl-Josef > > Hallo Karl-Josef, > > > DCF_MODE startet mit 2 und fällt nach 3 min auf 0 ab > > das bedeutet, das die Synchronisation auf den Frameanfang (Pulslücke) > nichteinmal funktioniert hat. > > Das mit dem Wert 3 bei maxirq kommt vermutlich durch das Schreiben auf SD. > Ich würde das Schreiben erstmal abschalten. > > Mit der LED: > > In der Lib wied in der Interruptroutine das PortBit abgefragt. > Schalte ein LED ein wenn das Bit 1 ist und aus wenn es 0 ist. > Dann müßtes du die Pulse sehen. > > Grüße Joerg