UU bei i2c auslesen von RTC DS1307

L I V E Stammtisch ab 20:30 Uhr im Chat
  • hallo, folgendes ich habe an meinem pi die RTC DS1307 dran , wenn ich i2cdetect -y 1 eingeb dann kommt under adresse 50 die 50 und unter adresse 30 b ein UU und unter adresse 68 auch ein UU, kann mir jemand sagen was das bedeutet ??

  • Hi,
    UU bedeutet, dass die betreffende Adresse vom Kernel benutzt wird. Bei allen meinen RPi ist durchweg die Adresse 3B mit UU belegt.
    50 ist schon mal gut ... das ist der NVRAM resp. das EEPROM auf dem Uhrenmodul.
    Dass bei Dir bei 68 auch UU steht, liegt evtl. daran, dass Du das Kernelmodul für den DS1307 noch nicht geladen hast.

    Hast Du eigentlich die Pullups vom Uhrenmodul entfernt?
    Das könnte sonst ins Auge gehen ... :angel:

    ps915 hatte -> hier <- mal eine Anleitung verfasst.

    cu,
    -ds-

  • Hi,
    es gibt bei der Realtime-Clock ein echtes Problem. Linux-Source enthält eine gute erklärung der RTC, die auch ein Testprogramm beinhaltet. Dies bezieht sich auf die normale PC-Realtime Clock. Ich habe die Ds1307 an den PI angeschlossen, Hwclock antwortet correct. Nutr dies Testprogramm benutz die standard Ioctl's für die Realtime-Clock. Der default Treiber für DS1307 (und auch für weitere Chips) benötigt mindestens einen weiteren Quellcode-File rtc-dev.
    Der Treiber des Debian Linux scheint dies aber nicht zu beinhalten.
    Da ich die Clock für Echtzeitzwecke benötige ist die Frage: kann mir jemand einen Tipp geben?
    oder kann mir jemand sagen, wie ich und Debian für Raspi die Kernel Entwicklungsumbebung installieren kann?

  • Beschreibe mal Dein Problem. Ich habe gefühlte 100mal die RTC DS1307 an den RasPi gebaut und alle funktionieren. Das A und O ist, wie man welche Kernelmodule lädt. Zusätzlich muss man beim I²C wissen, dass DT nur "halb" funktioniert, i2c-dev muss herkömmlich geladen werden. Zudem muss der benutzer pi noch der Gruppe i2c zugeordnet werden.

  • Hallo,
    was ich brauche sind die ioctl Möglichkeiten wie PIE_ON usw.
    Das Zeug wird auf PC (SuSe Linux) per rtc-dev angenommen und zum Treiber weiter gegeben.
    Die rtc mit hwclock auslesen ist kein Problem, aber alle 8 microseKunden einen Interrupt zu bekommen ist so nicht möglich.

  • Tja, Datum und Zeit auf Sekunden genau verstehe ich, aber ich benötige Microsekunden, möglichst mit Interrupt z.B. alle 8 Microsekunden.

    Das scheint nur möglich zu sein mit dem Teil rtc-dev.c (bei SuSe Linux im Kernel-Source Paket, inklusive den Build Tools für Modules)
    Gibt der Registersatz der RTC auch die Mikrosekunden her?

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!