RTC-4553

Gast #309040
Lesenswert?
• ▲
▼
Hi Leuts,

ich bin schon den ganzen Tag am Tüfteln um n
RTC-4553 am SPI vom Mega 16 zum Laufen zu bekommen,
aber nicht zuletzt wegen dem Datenblatt
(was fürn Agent schreibt die Dinger eigentlich?)
welches mit seinen überüppigen 2 Seiten
und kryptischen Angaben waren meine
Bemühungen fruchtlos.

Also wenn ichs richtig rausgelesen habe:
für Operartionen auf dem Chip
CS1 = 1
CS2 = 0
WR ist wohl Schreib- / Lesezugriff

ich hab nun RW=1 RW=0 probiert,
Hab Megabyteweise Daten an das Ding gesendet
aber immer 0 zurück bekommen

Hat evtl. jemand ne Ahnung wie das Protokoll
für den Mistkäfer aussehen soll?
Angehängte Dateien:
Gast #309041
Lesenswert?
• ▲
▼
so, ok, habs nochmal geprüft,

also die 1KHz am Ausgang laufen, das Ding hat Saft.
Ich hab nun sogar n paar Daten zurückgeliefert
bekommen und mitgelogt, aber alle Rückgaben
scheinen ohne System immer anders zu sein und
sind nicht reproduzierbar.
Gast #309043
Lesenswert?
• ▲
▼
Jau, es hat sogar sehr weiter geholfen ... super!!
da sucht man 3 Stunden aber das Ding ist mir durchs Raster geflutscht.

Also hier ein Zwischenstand.

Ich kann mit dem Ding kommunizieren.
Die Registertabelle die da im Datenblatt ist ist aber etwas
verwirrend, weil ich die nibbles jeweils drehen
muß.

angegeben ist beispielsweise
a3 a2 a1 a0

senden muß ich sie aber

a0 a1 a2 a3

ich hab mal ne tabelle gemacht wie ich die daten schicken muß,
hier im Anhang.

die SPI ist folgendermaßen konfiguriert:
Master
Data Order = msb
polarity= low
phase=0
clockrate=4
interrupt=off
Angehängte Dateien:
Gast #309044
Lesenswert?
• ▲
▼
Hallo
Wenn du die Data Order auf LSB setzt sollte sich das Problem mit den
verdrehten Bits auch erledigt haben.
Ausserdem vermute ich, dass Polarity=1 sein sollte, so dass die
fallende Flanke einen Taktzyklus startet.

Tom
Gast #309045
Lesenswert?
• ▲
▼
also mit palarity=1 kommt bei mir nix raus.
auf 0 funktionierts.
LSB geht auch, nur mußt Du dann
Die Nibbles für Daten und Adresse tauschen.

Ein Begehl sieht dann z.B. so aus

&B1001-1101

hier wird Controllregister 1 (1101)
mit dem Wert 1001 beschrieben (TPout ist dann 1/10Hz, 24h-Modus)

allso irgendwie ist das auch etwas beknackt
Gast #309047
Lesenswert?
• ▲
▼
Ok, es läuft.

Das umdrehen der Nibbles ist für die Datum-Uhrzeit-Operationen
nicht besonders tragisch, das Datum und die Uhrzeit können
eh nicht direkt geschrieben werden. Die Controlregeister schon
und ebenso auch der RAM.
Datum und Uhrzeiteinstellungen können nur incrementiert werden
durch einen Schreibzugriff auf das Register.
Lesen und schreiben wird durch den RW-Pin gesteuert.
RW=0 schreiben, RW=1 lesen
CS1=1
CS0=0

Bei SPI:
Interrupt off
Data order LSB
Master Yes
Polarity =low
Phase=0
Clockrate=4
Noss=0

läufts bei mir mit folgenden Einstellungen:
&B00001111 'C3
&B00011101 'C1 (24 Stunden Anzeige)

Uhr wird gestellt:
&B00001011 ' Jahresregister +1
&B00001001 ' Monatsregister +1
&B00000111 ' Tagesregister + 1
&B00000100 ' Stundenzeiger +1
&B00000010 ' Minutenzeiger +1

Beim Auslesen dann WR=1
Beispielsweise Stunde:
Senden: &B00000100 ' für Register H1
Der Rückgabewert ist beispielsweise:
&B01100100
Die ersten 4 Bit sind die Daten, die zweiten 4 Bit sind nochmals das
Register. Ich hab dann die Register ausgeblendet per Und-Verknüpfung
Uhrzeit = Rückgabewert AND &B11110000 =&B01100000
Und dann 4 Schritte nach rechts geschoben
&B00000110 = 6 Uhr

Bei den anderen Datums und Uhrzeitinfos läufts ebenso.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren