Hallo Leute, ich versuche gerade eine Clock-Frequenz von 32.768Hz x5 einzustellen. Also das Fünfache der 32768 Hz. Ich verwende den Msp430F5418, aber das dürfte eine allgemeine Frage sein. Mit dem DCO klappt beim besten Willen nicht. Ich habe den vorhandene FLL benutzt mit den folgende Einstellungen: UCSCTL1 = DCORSEL0; UCSCTL2 = FLLN2; // (4 + 1) * 32768 = 163840Hz Was an dem MCLK (default für DCO) raus kommt ist alles aber nur nicht 163840 Hz. Habt Ihr irgendwelche Ideen wie man so was generell macht? Eventuell was ich falsch mache? Dankeschön im Voraus
Hast du denn einen 32,768 kHz Quarz an XIN und XOUT angeschlossen? Hast du die Bits für SREF_x im Register UCSCTL3 entsprechend gesetzt? Und hast du anschließen die Takte auch auf den DCO-Takt geschaltet? Schau mal in msp430x54x_UCS_2.c in den Code-Examples, da steht drin, welche Register du alles umstellen musst.
Ja ich habe einen einen 32768Hz Quarz angeschlossen, SREF auch eingestellt. Ich messe mit dem Oszi an dem MCLK Ausgang aber 278 Hz. Keine Ahnung wie sowas zu stande kommt!
Poste mal den gesamten Quelltext, die beiden Zeilen sagen gar nix aus...wo hängt der Quarz? An XT1 oder an XT2?
P7SEL |= 0x03; // Select XT1 UCSCTL6 &= ~(XT1OFF); // XT1 On UCSCTL6 |= XCAP_3; // Internal load cap UCSCTL4 |= SELA_0 + SELS_4 + SELM_4; UCSCTL1 = DCORSEL0; //fdco wird durch den FLL stabilisiert UCSCTL2 = FLLN2; UCSCTL3 = SELREF0; Hoffe das hilft. Danke
1. Uhrenquarze benötigen keine extra Last-Kapazität, die Pin-Kapazität reicht aus. 2. Wieso verdrehst du die Reihenfolge der Inizialisierung? 3. Du schaltest auf den geteilten DCO-Takt anstatt auf den ungeteilten. 4. Sicher dass das Makro FLLN2 auch eine 4 ist?
Hi Christian, Erst mal Danke für deine Vorschläge! Ich habe die Lastkapazität weg, die Reihenfolge der Initialisierung geändert hat sich nichts getan. Ich habe die FLNN bits auch wild geändert, einfach nur um zu sehen was passiert. Es tut sich nichts bei FLLN0 FLLN1 FLLN2 (zusammen oder getrennt), erst bei FLLN3 bekomme ich ungefähr 540khz. (?????)
Ich probiere das immer zuerst mit den Beispielcodes von TI. Wenn das läuft, kann man immer noch die Parameter ändern. Probier doch mal das Beispiel aus dem Zip-File, und schau, ob das klappt.
Danke. Ich werde alles noch mal überprüfen. Es muss doch klappen! ;-)
Es hat geklappt, aber die Frequenz schwankt sehr. Ich habe die frequenz Verzehnfacht und ich messe am MCLK zwischen 326 kHz und 341kHz. Ich würde sie instabil nennen. Grüsse, Vicki
Das ist seltsam, die FLL+ sollte das wesentlich stabiler halten, denn die hat ja eine echte Rückkopplung zum Quarz und regelt das selbst nach. Hab aber damit auch noch keine Erfahrungen, hab bisher nur mit dem DCO gearbeitet.
Hallo, mal was allgemeines. Bevor du die Taktquelle/FLL Referenz umschalten kannst solltest du sicherstellen, dass das OFIFG (Oscillator Fault Interrupt Flag) gelöscht ist. Falls nein, musst du alle Fault Flags in UCSCTL7 löschen und das OFIFG löschen. Erst nachdem das UCS Fehlerfrei ist kann man Änderungen im UCS machen. Das ganze ist im Kapitel 3.2.12 Unified Clock System Module Fail-Safe Operation beschrieben. mfg Alex
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.