Die üblichen RTC,s sind ja allgemein ganz ok aber auf lange Zeit eben nicht gut genug. Von automatischer Sommer/Winterzeitumstellung mal abgesehen. Also DCF. Leider ist die Auswertung "nebenbei" etwas altbacken für meinen Geschmack da ich die verfügbaren Resourcen anderweitig benötige. Ich suche schon seit geraumer Zeit nen Komplettchip also ne DCF-RTC an die ich nur noch meinen Empfänger (Orgendein Modul.Entweder Selbsbau oder meinentwegen das 10Eur-Modul von Conrad)dranhänge. Bis jetzt hab ich gesucht aber nix gefunden. Meine Alternative ist nen Extracontroller (zb. Atiny12 oder nen kleinen Pic) der sich nur um diese Geschichte kümmert. Irgendwie schein die Chipindustrie da nix zu machen. Weiß einer ne Lösung ? I2C,1W oder Seriell ist egal,hauptsache Simpel.
:
Gesperrt durch User
Theoretisch kannst Du das mit einem extra Chip machen, z.B.: http://www.mikrocontroller.net/forum/read-4-23408.html Praktisch macht das aber wenig Sinn. Der Rechenzeitaufwand ist mit der Erkennung eines Pulses je Sekunde (= 1Baud) so lächerlich gering, daß das wirklich jeder MC nebenbei machen kann. Deshalb gibt es eben nur diese Chips mit dem 1Baud-Ausgang. Die Sommerzeit kann man aber auch ohne DCF77 machen, z.B.: http://www.mikrocontroller.net/forum/read-4-32158.html Peter
@ThomasB Da hab ich schon längst nachgesehen. Ich schrieb doch das ich nen Chip brauche. In Worten : ne "Einchip" lösung. Ganze Module (wie bei hkw)kann ich mir selber basteln aber die sind etwas Sperrig wenn die eigentliche Schaltung nur halb so groß ist. Preislich kommt es leider auch nicht hin. @Peter Yo,ich kenne diese Artikel aber mir geht es darum sozusagen einen DCF-RTC zu bekommen (Am liebsten I2C) den ich einfach nur in betrieb nehme und simpelst abrufen kann ohne mich ´weiter um den Empfang zu kümmern. Wic ich schon sagte suche ich seit geraumer Zeit danach aber offfensichtlich gibt es da nix. Tonnen von RTC's in allen Formen und Farben aber eben kein DCF-Modell. Naja,fom Platzbedarf her ist es egal ob ich nen Fertigen 8 Beiner bekomme oder ob ich nen Kleincontroller nutze. Ich will mir nur die Arbeit ersparen.(Bin auch nur Faul gg) Wenn nicht doch noch einer was weiß dann besorge ich mir eben nen Atiny12 (Kostet ja nur einige Cent) und Funktioniere ihn eben zur DCF-RTC um.Als I2C Slave kann er dann Transparent betrieben werden. Ich muß mir nurnoch das Datenblatt besorgen weil da noch Fragen offen sind.(Läuft der auch ohne Quarz,Wenn ja wie genau,etc.) Wie gesagt,ich suche erstmal bevor ich mich aussem Sessel losreiße ;-)
Hallo Ratber, Wie wäre es mit einem PIC 12F629, die schön klein, kosten nur knapp zwei Euro 1024 Worte Programm und 64 Byte Ram. Sollten ausreichen um DCF und I2C zu implementieren. GRUSS INGO
Yep,hatte ich auch in der Engeren Wahl aber da ich mit PIC's noch nicht gearbeitet habe mache ich mir das recht einfach und nehme einfach erstmal einen Atmel den ich auch per Bascom bearbeiten kann (Geschwindigkeit spielt hier ja keine Rolle.Dafür ist der Code allemale ausreichend. Da es vermutlich eh keine fertige Lösung gibt studiere ich gerade die Datenblätter und irgendwo zwischen Atiny11/12/15 bzw. 90S2323/43 werde ich dann zuschlagen. Der Atiny13 liegt mir da am besten denn mit 1.8-5.5V Versorgungsspannung und nur 290 uA Stromaufnahme kann ich den gut über nen kleinen Akku laufen lassen. Benotigen Tu ich ja eh nur 3 Ports 1x Empfang von Antenne 2 für die I2C Schnitstelle (Läuft dann als normaler Slave)
OH OH den Atiny13 ja, aber was ist mit dem DCF-Empfänger!?!?! Das sind teilweise richtige Stromfresser dabei, ich würde vorschlagen erst das Datenblatt lesen!!!! GRUSS INGO
"Bin auch nur Faul *gg*" So wies aussieht, wirst Du aber viel mehr Arbeit in Deinen extra Chip reinstecken müssen, als wenn Du die Auswerteroutine direkt einbindest. Also extra noch umständlich über ein I2C-Protokoll hin und zurückwandeln. Kostet Dich nicht nur mehr Programmieraufwand sondern auch mehr Rechenzeit. Du müstest dann noch dem I2C-Slave einen Interrupt spendieren, oder ständig pollen, was dann noch mehr Rechenzeit benötigt. Die direkte Auswertung kannst Du dagegen bequem in Deinen Hauttimerinterrupt mit einfügen. Der sollte bloß nicht langsamer als 60ms sein, um die 100ms noch sicher von den 200ms unterscheiden zu können. Den DCF77 mit Batterie zu puffern, habe ich noch nirgends gesehen, der empfängt doch die Zeit immer wieder neu. Bringt also nur was, wenn das komplette Gerät mit der Batterie läuft. Vielleicht solltest Du das nochmal richtig durchdenken, ehe Du den Aufwand unnötig in die Höhe treibst. Peter
@Ingo Das ist einfach gelöst. Die 3mA für den Empfänger sind im Betrieb nicht erheblich. Ist die Schaltung aus dann läuft der Controller nur als gewöhnliche RTC langsam vor sich hin und konsumiert auch nur wenig. Es geht nur darum das die Zeit beim einschalten da ist und das se nach der üblichen kurzen Synchronisation (Max 3 Minuten) auch gegebenenfalls nachgestellt wird. @Peter Da ich ja mit Bascom Arbeite beschränkt sich die Abfrage auf nur wenige I2C Befehle bzw. eigentlich nur einen Befehl per Kette. zb.: Ich Ordne Sekunde,Minute,Tag,Monat und Jahr zu das sind schonmal 4 . Plus Adresse dann 5 Werte. Das ganze sieht dann so aus. Definition. Dim Ax(4) As Byte Im Programm dann I2cSend &Hxx , 'Lesebefehl' I2cRecieve &Hxx , Ax(1) , 4 Das wars dann auch schon in etwa. Das ganze ist ne sache von Milisekunden. Die Uhrzeit im Controller soll nur einmal beim Start bzw. nur selten auf den neuesten Stand gebracht werden damit se mit der Zeit nicht komplett aussem Ruder läuft. Das Gerät läuft später auf netzteil aber ist regelmäßig nur zu bestimmten Tageszzeiten in Betrieb also hab ich mit der Akkupufferung keine Probleme. Um das ganze mal genauer zu beschreiben: Die Schaltung soll beim Start "kurz" das Datum aus der RTC holen und dann sofort anfangen zu arbeiten. Ich brauche möglichst viel Rechenzeit aber auch das Korrekte Datum Sammt Uhrzeit. Dabei kommt es nicht darauf an das die Uhr am Tag meinentwegen einige Sekunden daneben liegt. Hauptsache se ist im Mittel korrekt (Dafür is DCF ja optimal geeignet.) Die DCF-Synchronisation wird dann für den "Uhrenchip" wärend des Betriebes vorgenommen so das der eigentliche Controller damit nicht belastet wird. Ich habe mir das schon ganz genau überlegt bevor ich den Entschluß gefasst habe. ------------------- Ich bin nur auf der Suche nach nem fertigen Chip gewesen da ich das Rad ja nicht nochmal erfinden will. Allerdings werde ich das jetzt müssen aber das ist auch nicht so wild. Einmal fertig kann ich das Design ja immer wieder nutzen da sich der kleincontroller nach außen wie ein gewöhnlicher I2C-Uhrenchip verhält also isser auch Transparent einsetzbar. ----------------- Der Kostenaufwand ist da eher uninteressant da nen "ordinärer" Uhrenchip so ziemlich das gleiche kostet (Antenne natürlich nicht eingerechnet)
Hallo Ratber, schau dir doch mal das an: http://www.imsdd.fraunhofer.de/datenblaetter/intellectual_properties/dcf/dcf-d.pdf Ciao Dieter
"Ich brauche möglichst viel Rechenzeit" Wo ist das Problem ? Nebenbei ein einziges lahmes Baud (Bit/s) zu dekodieren kostet Dich: alle 10ms etwa 20 Takte alle 1s etwa 50 Takte Das macht bei 4MHz: (100 * 20 + 50) / 4e6 = 0,05% Rechenzeitverbrauch. Du siehst, das ist fast nichts, d.h. mit einem externen Chip bist Du um keinen Deut schneller. Wenn Du also Geschwindigkeitsprobleme hast, hilft nur ein schnellerer Quarz oder eine schnellere Programmiersprache als Bascom (z.B. Assembler oder C) oder vielleicht nur eine bessere Programmstrukturierung. Peter
@Dieter Danke für den Link Das entspricht einer Seriellen Variante dessen was ich machen will. @Peter Is Prinzipiell richtig was du sagst aber du hast nicht verstanden. Ich will die aktuelle Uhrzeit beim Start haben und nicht ne "Warmlaufphase" von 1-3 Minuten weil der Controller erstmal das Zeittelegram empfangen muß. Die Lösung ist also ne Akkugepufferte RTC die ich beim Start direkt mal eben abfragen und damit die Systemzeit setzen kann. Damit die Uhrzeit auf Dauer relativ genau bleibt wird in der Folgezeit des Betriebes die RTC per DCF dann Synchronisiert. Sicher könnte man jetzt fragen warum ich den Controller selber nicht einfach dauernd laufen lasse aber das geht aus Sicherheitsgründen nicht. Die Bedingungen sind recht einfach. -Der Controller läuft ca. 16 Stunden am Tag,die Restzeit ist er aus und kann so auch keine Verbraucher schalten (Sicherheit). (8 Stunden Pufferung des "RTC's" über Akku ist da also absolut kein Problem.Die Antenne bleibt dabei aus) -Beim Systemstart soll die abarbeitung des Programmes sofort erfolgen,also muß "sofort" eine gültige Zeit da sein. (Deswegen kommt da nur ne RTC in frage) -Die Zeit sollte ohne manuellen eingriff im Mittel korrekt sein. (Deswegen DCF.Da die RTC nur selten abgefragt wird hats se reichlich Zeit einmal am Tag oder alle 4-5 Stunden sich auf den neuesten Stand zu bringen) Nen Kleincontroller mit entprechender Programierung ist da also allemale günsiger als jedes Modul und ich kann "die" Schnittstelle implementieren die ich am liebsten haben will (in diesem Falle I2C.Natürlich sind auch andere möglich,Läst sich ja leicht anpassen) Zuguterletzt weiß ich natürlich das ne RTC recht lange einigermaßen genau läuft aber auch die beste läuft nach einigen Wochen aussem Ruder. In der Praxis soll dem Anwender der manuelle Eingriff einer Korrektur erspart bleiben. Sicher bleibt jetzt die Frage warum ich nicht ne einfache RTC (DS-1xxx) nehme und die vom Controller aus nach einiger Zeit aktualisiere. Könnte ich auch machen aber wenn dann komplett am Stück. Wie gesagt kann ich mir dann die DCF-Routine komplett schenken. Zu Bascom: Ich bin ja erst letztens umgestiegen aber gegenüber der letzten krücke ist nen AVR mit Bascom glatt nen Renner. Geschwindigkeitsprobleme hab ich also derzeit absolut nicht. Was natürlich besonders daran reizt ist das ich ne Idee recht flott mit einigen Befehlen umsetzen kann da die gängigste Hardware (LCD,I2C,1W usw.) schon komplett implementiert ist. Derzeit bin ich zufrieden.
Von Akkus würde ich dringend abraten, erst recht wenn Du ihm wirklich tägliche Lade-/Entladezyklen zumuten willst. Ich denke, jeder von uns ist schon Akkugeschädigt und kann das nachvollziehen. Egal, ob Handy oder Notebook, Akkus gehen quasi im Handumdrehen kaputt. Stehen zwar immer 1000 Ladezyklen drauf, aber in der Praxis ist man schon froh, wenn auch nur 200 erreicht werden. Wenn Dein Gerät auch ne Weile halten soll, hilft nur ein RTC-Chip mit Lithium-Batterie, z.B. der DS1994 soll ja 10 Jahre ohne Strom überbrücken können, also in Deinem Anwendungsfall dann 30 Jahre. Peter
Hallo, bei der Anwendung würde auch ein PCF8583 mit Goldcap reichen, dann braucht man sich nicht um Ladung Haltbarkeit u.a. zu kümmern.... Es reicht ja wenn man die Schlatung einschaltet und diese holt dann einmal die Zeit vom der RTC für den Arbeitsbeginn. Das DCF Signal wird dann einmal ausgewertet (im Hintergrund) und die RTC und mit der RTC syncronisiert. Na ja was Rechenzeit angeht nicht unbegingt nen Uhrenquarz als Hauptquarz verwenden :) und nicht Sekundenwarteschleifen ins Programm schreiben..... MfG Rainer
@Peter Also das mit den Akkus kann ich nicht nachvolziehen. Für Digicam,Telefone (Schnurlos),Taschenlampen und sonstigen Kleingeräten nutze ich Akkus seit etlichen Jahren und die letzten die sich verabschiedet haben waren noch Nicd. Die Nimh hatten bis jetzt noch keine ausfälle. Den größten Streß dürfte wohl der Satz im Telefon haben denn die werden nach jedem Gespräch wieder Teilgeladen. Dabei schleppe ich die alten 1500er GP schon über die Dritte Schnurlosgeneration (Siemens Gigaset 2/3/4000) mit und habe immernoch genug kapazität um auch mal 5 Stunden zu Telefonieren (Kommt auch mal vor). Auch die beiden Micros (400er von GP) im PDA (Altes Palm IIIx mit umgebautem Cradle) zeigen nach jahren immernoch keine Ermüdungserscheinungen. Ebenso bei der Digicam. Dort macht sich nen Kapazitätsverlust am stärksten bemerkbar wenn man mal das Display lange an läßt. Derzeit habe ich noch 2 Sätze (Jeweils 4x 1700 und 1800mAH) im Einsatz und bei der Regelmäßigen Ladung (Ich knipse ungehemt.Sortiert wird später) bekomme ich ja die Kapazitäten angezeigt so das es ja schnell auffallen müßte. Der 1700er Satz ist jetzt 4 Jahre alt ,der 1800er ca 3.5 Jahre und alle erfreuhen sich bester Gesundheit. Meinem Schwesterchen hab ich vor einigen Wochen nen Satz 2000er besorgt und da war auch einer der mit 1650 mAh schon recht arg aus der Reihe Tanzte so das er getauscht werden mußte. Vieleicht liegt es aber auch daran das ich 1. Keine Nonameakkus nehme (Die stammen nicht selten aus Ausschußserien) und 2. auch beim Laden drauf achte das wenigstens die Ladeschlußspannung eingehalten wird. Gerade das Ladegerät ist maßgeblich für die Lebensdauer. Wenn das nicht richtig funktioniert dann helfen auch die besten Akkus nichts. Beim RTC-Akku sehe ich da absolut kein Problem. Anmerkung zu Handys uind Notebooks: Viele haben dort Lithiumakkus und die halten max 3 Jahre ob se genutzt werden oder nicht weil se einfach vom Tage der Produktion an gleich anfangen zu verfallen dh. Schleichender Kapazitätsverlust von der ersten Stunde an. Dazu kommt das man beim Kauf eines Ersatzakkus nie sichergehen kann wie alt der Vogel schon ist (Gemeint sind die Verbauten Zellen und nicht das Modul) so das man pech haben kann das der Teure Energieträger schon nach weinigen Monaten die Flügel streckt. Sicher wird es in der Vergangenheit schon öfters Geschäfte mit überlagerten Akkus gegeben haben da die Garantie ja nur bei 6 Monaten lag. Heute ist das mit 2 Jahren etwas anders aber auch hier gibt es Einschränkungen weil es sich Faktisch um ein Verschleisteil handelt und der Kunde die Sachgemäße nutzung nachweisen muß. Bei Autoadaptern ist da meist schon ende weil die meisten Geräte dieser Kathegorie einfach nur (Teurer) Schrott sind.(Gilt nur für Handys/Akkus die keinen eigenen Ladecontroller besitzen) Keleine Anekdote: Ich hab noch nen altes Schiffsmodell (Von Carrera,Fix und Fertige Yacht.Hab ich zum 10.Geburtstag bekommen) Das ich irgendwann umgebaut haben weil die Originalaustattung nen Witz war (Winziger 200er Mabuchi auf Getriebe) und später zum "Rettungsboot" (Is mit nem bewegolichen Ausleger für Haken,Greifer,Magnet etc. ausgestattet) umfunktioniert um liegengebliebene Modelle einfach zu bergen und ans Ufer zu bringen. Die Umrüstung ist jetzt 15 Jahre her und seitdem sind auch nur die alten 4000mAh Nicd Monozellen drinn. Dank vernünftigem Ladegerät (Werden immer im Modell als Pack geladen) sind die heute noch voll in Ordnung obwohl ich den Abschleppkahn jedesmal mitnehme und auch fahren lasse (bzw. Die Kids damit ruh is)und damit die Ladezyklenzahl schon recht hoch is. @Rainer >Es reicht ja wenn man die Schlatung einschaltet und diese holt dann >einmal die Zeit vom der RTC für den Arbeitsbeginn. Das DCF Signal >wird >dann einmal ausgewertet (im Hintergrund) und die RTC und mit der RTC >syncronisiert. Die Alternative hatte ich ja schon angesprochen aber wenn ich eh nen RTC nutzen muß dann kann der ganze DCF-Vorgang auch gleich dahin entschwinden. Ich Denke auch an zukünftige Projekte und da ist es Simpler wenn ich den RTC Sammt DCF gleich Autark habe. >Na ja was Rechenzeit angeht nicht unbegingt nen Uhrenquarz als >Hauptquarz verwenden :) und nicht Sekundenwarteschleifen ins Programm >schreiben..... Wieso ? Mache ich doch immer so ;)
Wer noch immer DCF-Decoder sucht: Datenblatt: http://www.robotikhardware.de/download/DCF_RS1.pdf Ich weiss, der Beitrag ist älter, ich wollte es vollständigkeitshalber nur nachtragen.
Ratber schrieb: > Leider ist die Auswertung "nebenbei" etwas altbacken für meinen > Geschmack da ich die verfügbaren Resourcen anderweitig benötige. Sprich: Du kriegst es nicht gebacken, bist aber zu feige, das zuzugeben. > Ich suche schon seit geraumer Zeit nen Komplettchip also ne DCF-RTC an > die ich nur noch meinen Empfänger (Orgendein Modul.Entweder Selbsbau > oder meinentwegen das 10Eur-Modul von Conrad)dranhänge. Also de facto einen µC mit wenig Pins, gerade genug um auf einer Seite das DCF-Modul anzuflanschen und auf der anderen Seite irgendeine Schnittstelle bereitzustellen, die du mittels Copy&Paste-Code "beherrschst". > Meine Alternative ist nen Extracontroller (zb. Atiny12 oder nen kleinen > Pic) der sich nur um diese Geschichte kümmert. Ah ja. Es geht doch. Ich persönlich würde allerdings einen Tiny13A oder Tiny25 benutzen. > Weiß einer ne Lösung ? > I2C,1W oder Seriell ist egal,hauptsache Simpel. Sag ich doch: Das, was du mittels Copy&Paste-Code "beherrschst". Denn: Jedes der genannten Protokolle/Schnittstellen fordert mindestens soviele, teils sogar deutlich mehr Resourcen als eine händische DCF77-Auswertung, sowohl was den Rechenzeitbedarf, den RAM als auch die nötige Pinzahl betrifft. Damit ist dein eingangs dargelegtes Argument als Lüge enttarnt, in Neusprech auch: "Schutzbehauptung". Falls das deiner zarten Seele weniger Schaden zufügt, darfst du auch gern nur diesen Terminus wahrnehmen und die böse ungeschminkte Wahrheit weiter ignorieren.
c-hater schrieb:
[...]
Scheiße, schon wieder auf so einen Troll reingefallen, der irgendeinen
uralten Thread aus der Versenkung holt.
An die Moderatoren:
Wenn auch eure schweren Pflichten mal nicht so stark belasten, könntet
ihr vielleicht eure Zeit nutzen, um in die Boardsoftware mal einen
Warnmechanismus einzubauen, der einen drauf hinweist, daß man auf ein
Posting antwortet, in dessen Folgethread sich seit Jahren nix getan hat.
Danke.
Warum sollte irgendjemand Zeit investieren, nur weil Du zu blöd bist um ein Datum zu lesen und lieber gleich den Bsißreflex losläßt, wenn Du was siehst, was nicht in dein jämmerliches Weltbild passt?
@ c-hater: Dir ist schon bewußt, daß dieser Thread von ratber über 10 Jahre auf'm Buckel hat... ? Ich mein' ja bloß...
Davis schrieb: > Erstklassig c-hater, wie du dich immer wieder selbst demontierst. Inwiefern "demontiere" ich mich hier?
c-hater schrieb: > An die Moderatoren: > > Wenn auch eure schweren Pflichten mal nicht so stark belasten, könntet > ihr vielleicht eure Zeit nutzen, um in die Boardsoftware mal einen > Warnmechanismus einzubauen, Die Forensoftware wird von Andreas entwickelt, wir Moderatoren machen das nicht. Der Vorschlag, etwas an der Threadleichenwarnung zu ändern, wird derzeit von uns diskutiert. Ja: Threadleiche. Und deswegen mach ich hier zu,