Forum: Mikrocontroller und Digitale Elektronik MSP430F5438 & Real Time Clock (RTC)


von Kim (Gast)


Lesenswert?

Hallo,

Ich benutze das integrierte RTC_A Modul MSP430F5438. Es wird jede Minute 
in regelmäßigen Abständen ein Interrupt ausgelöst, der eine LED toggelt. 
Funktioniert soweit.

Problem: Die Uhr verliert aber 15 Sekunden pro halbe Stunde, d.h sie ist 
zu langsam

Im Datenblatt sagt, dass ACLK = 32768 Hz zu setzen sein muss, im RTC 
Modus werden die Teiler automatisch so gesetzt, dass ein 1 Hz Takt 
zustande kommt, aber ACLK muss 32768 Hz sein.

Als Source für ACLK nutze ich REFOCLK (an einigen Stellen im Datenblatt 
steht das REFOCLK 32.768 kHz ist, woanders 32768 Hz...????). Ich kann 
jetzt auch nichts nachmessen. Der Quellcode für den Takt sieht bei mir 
sieht so aus.

UCSCTL4 |= SELA_2 + SELS_3 + SELM_3;

Zur Erinngerung ACLK muss 32768 Hz sein. Geht das so????
Oder liegt das Problem woanders.

MFG

von Kim (Gast)


Lesenswert?

Sorry 32768 Hz sind ja 32.768 kHz.
Wenn ich die Source richtig hab...sind die Abweichungen von 12 sec auf 
eine halbe Stunde gesehen normal ??

von Christian R. (supachris)


Lesenswert?

Seite 50 im Datenblatt: Die Toleranz des REFO Oszillators beträgt bei 
25°C udn 3V Versorgungsspannung schon bis zu 1,5%. Deine Uhr dürfte also 
sogar 27 s pro halbe Stunde falsch gehen. Von Temperatur-Schwankungen 
ganz zu schweigen. Benutze lieber einen externen 32,768kHz Quarz.

von Kim (Gast)


Lesenswert?

Dann ist REFO für die RTC als Clock ja völlig ungeeignet.

Im Kit liegt ein Quarz bei (MS1V-T1K, 32.768 kHz, C_L = 7 pF, Tol:+/- 
20ppm). Ich möchte gerne die internen XCAP benutzen. Im Datenblatt Seite 
47 stehen 2 pF, 5.5 pF, 8.5 pF, 12 pF (so wie ich es verstanden 2 pF 
parasitäre per Pin schon mit eingerechnet) zur Verfügung.

Fällt deutlich erkennbar ins Gewicht wenn ich statt den C_L = 7 pF den 
internen 8.5 pF nehme ?? Oder lohnt es sich schon einen Quarz mit z.B 
genau 12 pF  anzuschaffen ???

von T. H. (pumpkin) Benutzerseite


Lesenswert?

Wenn du da 5.5pF einstellst dann sollte das passen.* Wenn der Quarz dann 
nicht genau genug schwingt dann kannst du an jeden Pin einen ~1...2pF 
Kermamik (C0G) dranpappen. Den 12pF-Typ von MCS gibts übrigens bei 
Farnell.


*) Bin mir jetzt nicht 100% sicher ob man im MSP wirklich die effektive 
Kapazität einstellt oder ob sich dieser Wert nochmal halbiert

von T. H. (pumpkin) Benutzerseite


Lesenswert?

Guck mal hier:

  http://www.microcrystal.com/getdoc/5f745f62-94e4-4711-a95b-3ebb5f465c62/TI_MSP430x5xx_12-5pF.aspx

Wobei XTS imho durch XT1DRIVE zu ersetzen ist. XTS muss hier immer 0 
sein.

von Kim (Gast)


Lesenswert?

Danke für den Link !!!

Also versteh ich das richtig:

Für meinen 7 pF Quarz, stelle ich XTS=0, XCAP_1 ein.
Mit XCAP_1 lade ich den 5.5 pF im MSP.

Effektiv habe ich aber dann 7,5 pF raus für meinen 7 pF Quarz ????

von T. H. (pumpkin) Benutzerseite


Lesenswert?

Das ist etwas inkonsistent, da hast du recht. Es scheint als haben die 
die parasitäre Kapazität von Fall zu Fall noch extra draufgeschlagen 
oder halt nicht. Vllt übersehe ich auch etwas? Was ich damit sagen 
wollte: Die im Datenblatt angegebenen Werte sind wohl schon die 
Effektiven, will heißen, dass bei Ceff = 5.5pF jeweils 11pF an XIN und 
XOUT hängen. So interpretier ich die Datenblätter und die MCS-App Note. 
Wie gesagt, stell 5.5pF ein und trimme evtl mit externen C's nach wenns 
dir nicht genau genug ist.

von Kim (Gast)


Lesenswert?

Okay...danke erstmal

Dann werde ich mal versuchen den Quarz anzuschließen

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
Noch kein Account? Hier anmelden.