Forum: Mikrocontroller und Digitale Elektronik MSP430g2553 externe Taktquelle


von hiii (Gast)


Angehängte Dateien:

Lesenswert?

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

von Christian L. (cyan)


Lesenswert?

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
von Uwe B. (uwe_beis)


Lesenswert?

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

von hiii (Gast)


Lesenswert?

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).

von Christian L. (cyan)


Lesenswert?

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
von Uwe B. (uwe_beis)


Lesenswert?

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.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

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.

von Dietmar S. (dsausw)


Lesenswert?

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

von Uwe B. (uwe_beis)


Lesenswert?

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
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

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