Hallo, für ein Funkuhrprojekt benötige ich Schaltvorgänge sekundengenau, jedoch nur etwa 4-10 Mal pro 24 Stunden. Ich habe also ~ 4 Zeiten, zu denen sekundengenau eine kurze Funktion abgearbeitet werden soll. DCF77-Abgleich 1x pro Tag. Meine Testfunkuhr ist mit einem 32,768 kHz Uhrenquarz aufgebaut und die ISR wird einige Male pro Sekunde aufgerufen, damit ich nach x Ticks den ermittelten Quarzfehler kompensieren kann (ich kompensiere so, dass sich kein merkbarer Fehler anhäuft, bis ich einen Korrekturtick ausführe). Jetzt soll das Ganze im Akkubetrieb laufen, und der sleep-Modus benutzt werden. Mit meinem bisherigen Konzept müsste ich den AVR etwa bis zu 10 Mal pro Sekunde schlafen legen und wieder aufwecken. Wären da irgendwelche Hardwareschäden zu erwarten, oder kann man das so machen? Sorry für die vielleicht doofe Frage, aber bisher habe ich den sleep-Modus nicht ernsthaft angewendet, und vergleiche es vermutlich fälschlicherweise mit elektrischen Ein- und Ausschaltvorgängen oder dem Standby beim PC...... Ich habe auch schon viel von externen RTCs gelesen. Ist es möglich, darin den bekannten Quarzfehler zu hinterlegen, oder muss dann auch in meinem AVR kompensiert werden?
Egon Lange schrieb: > Wären da irgendwelche Hardwareschäden zu erwarten, oder kann man das > so machen? Kann man. Hardwareschäden gibt es, wenn du über längere Zeit 10-mal pro Sekunde den Korrekturwert in die selbe EEPROM-Zelle schreibst.
Natürlich kannst du den Sleep-Modus so aufrufen wie du willst. Normalerweise setzt man ein Sleep ans Ende der Hauptschleife, macht den nächsten Schleifendurchlauf erst nach einem Interrupt.
Den Sleep-Mode (wenn du dabei nicht jedesmal was ins EEPROM schreibst) kannst du so oft aufrufen, wie du willst, damit kriegst du keinen AVR kaputt! Wie willst du 4...10 mal pro Sekunde einen Quarz auf DCF abgleichen? Der übliche DCF-Empfang ist bei der Polling-Methode auf 100 ms genau. Das ergibt über eine Stunde 0,1 s / 3600 s = 28 ppm, also die Genauigkeit eines nicht (!) abgeglichenen Quarzes. Ein Vergleich in kürzeren Abständen bring schon mal garnix! Damit hat man pro Tag 2,4 s Unsicherheit. Vergleicht man DCF und Quarz jeweils nach der täglichen DCF-Synchronisierung, hat man schon eine 1,15 ppm genaue Fehlerbestimmung und kann den Quarz viel exakter abgleichen. Erst damit bekommt man die RTC auf 0,1 s Fehler pro Tag.
Jakob schrieb: > Wie willst du 4...10 mal pro Sekunde einen Quarz auf DCF > abgleichen? gar nicht. Ich meinte, dass ich den bekannten (!) Quarzfehler berücksichtigen möchte. Ich könnte x sekunden abwarten und dann +/- 1 Sekunde kompensieren. Dann hätte ich aber den Fehler immer bis zu 1 Sekunde aufsummiert, bevor er wieder auf 0 geht. Ich will also häufiger kompensieren. Deshalb will ich bspw. 4 Ticks pro Sekunde und nach x Ticks dann +/- 1 Tick addieren. Hätte dann also nur 0,25 Sekunden maximale Abweichung.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.