Hallo zusammen, kann mir jemand weiter helfen? Ich möchte eine externe Taktquelle (1 MHz) für den MSP430g2553 verwenden. Habe im Datenblatt (Anhang) nachgeschaut. -Auf Seite 1 steht das eine externe Taktquelle möglich ist "External Digital Clock Source". -Auf Seite 14 steht das nur der externe Quarz (32768-Hz) unterstützt wird. 1.Frage: kann ich eine externe Taktquelle von 1 Mhz verwenden? 2. Frage: falls eine externe Taktquelle von 1 Mhz nicht möglich ist, kann ich den 32768-Hz Quarz zur DCO-Stabilisierung nehmen? Vielen Dank im Voraus
hiii schrieb: > 1.Frage: kann ich eine externe Taktquelle von 1 Mhz verwenden? Ja. Ich hatte einen 16MHz Quarzoszillator so initialisiert:
1 | // externen Oszillator als Taktquelle konfigurieren
|
2 | BCSCTL3 = LFXT1S_3 + XCAP0; |
3 | BCSCTL1 = DIVA_1; |
4 | while(IFG1 & OFIFG) |
5 | {
|
6 | IFG1 &= ~OFIFG; |
7 | _delay_cycles(1000); |
8 | }
|
9 | BCSCTL2 |= SELM_2 + SELS; |
Die Ports müssen natürlich auch entsprechend initialisiert werden. Für die einzelnen Einstellungen solltest du den "MSP430x2xx Family User's Guide" konsultieren.
:
Bearbeitet durch User
Ich habe ursprünglich für einen MSP430g2553, später MSP430g2011, folgende Initialisierung für den externen Takteingang verwendet. Dabei wird bei fehlendem ext. Oszillator automatisch der int. Oszillator in Betrieb genommen. Das ganze folgt einem Vorschlag von TI. Weitere Register-oder I/O-Initialisierungen sind hier nicht nötig.
1 | Init: |
2 | ;CPU Clock |
3 | ExtOsc |
4 | ;Externer Oszillator vorhanden? |
5 | mov.b #LFXT1S_3,&BCSCTL3 ;Ext. Clock |
6 | mov.w #20,R14 ;20 Versuche (200 ms) |
7 | L1 bic.b #OFIFG,&IFG1 ;Clear OFIFG |
8 | mov.w #0FFh,R15 ; 2 Delay 256*4 us = 1 ms |
9 | L2 dec.w R15 ; 2 |
10 | jnz L2 ; |
11 | dec.w R14 ;Noch einen Versuch? |
12 | jz OscInt ;Wenn genug vergebliche Versuche |
13 | bit.b #OFIFG,&IFG1 ; Re-test OFIFG |
14 | jnz L1 ; Repeat test if needed |
15 | ExtOscOk |
16 | bis.b #SELM_3,&BCSCTL2 ; Select LFXT1CLK |
17 | jmp InitReg |
18 | OscInt |
19 | clr.b &DCOCTL ;Lowest DCO & MOD setting |
20 | mov.b #0x8f,&BCSCTL1 ;RSEL auf 16 MHz experimentell |
21 | mov.b #0x72,&DCOCTL ;DCO Feinabgleich ohne MOD experimentell |
22 | ; mov.b &CALBC1_16MHZ,&BCSCTL1 ;RSEL auf 16 MHz |
23 | ; mov.b &CALDCO_16MHZ,&DCOCTL ;DCO und MOD Feinabgleich lt. TI |
hallo Vielen Dank für die Antworten. Christian L. schrieb: > Ja. Ich hatte einen 16MHz Quarzoszillator so initialisiert: kann ich auch einen Quarz nehmen oder muss ich einen Quarzoszillator nehmen? ich benutze das TI MSP430 LaunchPad (MSP-EXP430G2).
Die Nutzung eines Quarzes ist nur bis 50kHz spezifiziert. Du musst also einen Quarzoszillator nehmen. Edit: Ich habe auch gerade gesehen, dass die Pins bereits standardmäßig als Takteingang konfiguriert sind. Wie Uwe schon schrieb, müssen die Pins also nicht nochmal konfiguriert werden.
:
Bearbeitet durch User
Auf dem LaunchPad ist auch nur ein Quarz, es muss also gehen. Nebenbei: Vielleicht hast du übersehen, dass es in den meisten MSPs zwei (in vielen sogar 3) Oszillatoren bzw. Takteingänge gibt. Einer davon (XIN/XOUT, glaube ich) ist ein spezieller Low-Power Oszillator, der ist speziell für die interne Uhr bzw. das Aufwachen aus dem Tiefschlaf. Der kann nur wenige -zig kHz. Der andere (XT2IN/OUT, glaube ich) ist der "Hauptoszillator" und ein ganz normaler Oszillator bzw. Takteingang.
Uwe Beis schrieb: > Auf dem LaunchPad ist auch nur ein Quarz, es muss also gehen. Nein. Der Unterschied ist die Frequenz, so wie es aussieht, enthält der 'G2553 nur den LF-Quarzoszillator, nicht aber den HF-Oszillator, der für einen 16-MHz-Quarz erforderlich ist. Der Quarz auf dem Launchpad ist ein 32kHz-Quarz. Uwe Beis schrieb: > Der andere (XT2IN/OUT, glaube ich) Den gibt es beim 'G2553 nicht. Bei anderen MSP430-Varianten sieht die Situation anders aus.
Hallo auch, was möchtest Du machen? Mit einer externen Taktquelle meint man meist einen schon vorhandenen Systemtakt als Taktquelle. Wenn Du aber eine 1MHz-Taktfrequenz benötigst, nimm den DCO. Für 1MHz sind die Kalibrierdaten im Flash(Info-Mem0)und weitere -> Handbuch! Das reicht in den meisten Fällen. Der G2553 hat übrigens nur einen Xin/Xout. Gruss Dietmar
Rufus Τ. Firefly schrieb: > Nein. Der Unterschied ist die Frequenz, so wie es aussieht, enthält der > 'G2553 nur den LF-Quarzoszillator, nicht aber den HF-Oszillator, der für > einen 16-MHz-Quarz erforderlich ist. Stimmt, ich bin selber etwas überrascht: "MSP430F20xx, MSP430G2xx1, MSP430G2xx2, MSP430G2xx3: LFXT1 does not support HF mode." > Der Quarz auf dem Launchpad ist ein 32kHz-Quarz. Bei mir ist der 32er (Q2) nicht bestückt, aber ein 12 MHz (Q1) ist vorhanden. XT2: > Den gibt es beim 'G2553 nicht. Bei anderen MSP430-Varianten sieht die > Situation anders aus. Auch richtig. Was ich auf die Schnelle nicht erkennen kann: Kann man denn an XIN einen ext. Oszillator anschließen (und sein Signal auch als Takt verwenden ;-) ? Kommando zurück: Der 12 MHz-Quarz ist nur für das Programmier-Interface. Ich bin wohl nicht mehr wach genug.
:
Bearbeitet durch User
Uwe Beis schrieb: > Was ich auf die Schnelle nicht erkennen kann: Kann man denn an XIN einen > ext. Oszillator anschließen Ja, natürlich.
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.