- LiFePO4 Speicher Test         
Ergebnis 1 bis 9 von 9

Thema: DS1307 Auslesen. Pause nötig?

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.03.2006
    Beiträge
    361

    DS1307 Auslesen. Pause nötig?

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Ich rufe in meinem Programm in der Hauptschleife die aktuelle Uhrzeit und das Datum dauernd ab und bringe sie mittels LCD "Uhrzeit" auf die erste Zeile.

    Abundzu passiert es, dass ich die Uhrzeit dann irgendwo anders auf meinem Display zu sehen bekomme und die dort auch bleibt.

    Woran kann das liegen? Darf ich den DS1307 permanent auslesen oder braucht der einige ms Pause? Taktfrequenz ist bei mir 16MhZ (Mega12.

  2. #2
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Wenn die Uhrzeit irgendwo anders auf deinem Display steht ist es kein Fehler der RTC. Weil die macht nichts anderes als die Impulse von dem Quarz zu zählen.
    Ob du zwischen jedem Lesen eine Pause brauchst, weiß ich nicht aber sowas steht im Datenblatt. Einfach mal da reinschauen.
    Aber du machst doch sicher eh immer eine Pause zwischen jedem Lesezugriff oder? Ich nehme nicht an das du im 1ms Takt die Uhrzeit aus der RTC holst

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.03.2006
    Beiträge
    361
    Die Touchdisplayauswertung verbratet mir auch noch etwas Zeit Sonst gibt es aber keine Pause zwischen dem Lesezugriff in meinem Programm.

  4. #4
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Das dürfte normalerweise reichen
    Aber wie gesagt....ich bezweifel das das an der RTC liegt. Das liegt vielmehr am Display, weil so wie sich das anhört klingt das nach einem Positionierungsfehler auf dem Display.

  5. #5
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.03.2006
    Beiträge
    361
    Ich glaube das ist nur eine Timingsache in der Programmstruktur. Es passiert nämlich nur bei der Uhrzeit. Alles andere hab ich immer ganz genau dort wo ich es mit "Locate" hin haben möchte.

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    25.03.2006
    Ort
    Hinsdorf
    Alter
    49
    Beiträge
    381
    Hi Accenter,

    könnte es sein, dass das Zeitformat also die Länge der anzuzeigenden Zeichen sich verändert? Wenn es so ist, könnte es sein das die zeichen einfach dadurch in eine weitere Zeile verschoben werden. Setze sie einfach mal in die Mitte vom Display und schau was dann passiert...???
    MAT

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    23.04.2010
    Beiträge
    34
    hallo accenter
    sie könnten ja auch nur alle minute die urzeit abfragen
    daten abfragen
    print 1 pause 100
    print 2 pause 100
    .
    .
    .

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    52
    Beiträge
    765
    Programm? Welche Art von LCD? Ich habe gute Erfahrungen erzielt, indem ich den DS1307 4x/Sec abfrage. Diese Abfrage und die Displayansteuerung gehören nicht in eine Interrupt Routine. Bei 16 MHZ musste ich manuell die GLCD Lib anpassen, da die Timings nicht optimal waren. Auf das Display schreibe ich nur, wenn sich tatsächlich ein Wert geändert hat.
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

  9. #9
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.03.2006
    Beiträge
    361
    Die Länge ändert sich nicht. Da ich die Uhrzeitt auch zufällig immer woanders am Display habe kann es daran nicht liegen.

    Ich habe dieses Display von LEDSEE:

    http://ledsee.com/index.php?page=sho...mart&Itemid=27


    Ich werde mal versuchen alles so zu optimieren, dass ich auch immer nur bei Veränderung auf das Display schreibe. Ich habe auch mal begonnen tesweise einige us zu warten bevor ich die Uhrzeit erneut lese. Mal sehen ob es hilft. Das Problem tritt nur abundzu auf. Oft tagelang garnicht.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests