Forum: Mikrocontroller und Digitale Elektronik MSP430 mit 20Mhz betreiben


von Stefan S. (sim)


Lesenswert?

Hallo, ich habe da ein kleines Problem:

Ich habe ein Board aufgebaut, mit einem MSP und dieversen anderen 
Bausteinen, der MSP ist ein 430F5419 /38
Laut datenblatt locker mit 20Mhz und mehr zu betreiben,
ich habe nun an XT1 einen 20Mhz Quarz nebst passenden Kapazitäten 
angeschlossen, bekomme das teil aber nicht zum schwingen.

Ich brauche den Externen hohen Takt noch für andere Bausteine,
daher habe ich keinen Uhrenquarz nehmen können...

Was muss ich nun tun, damit das doofe Teil anschwingt?

Ich würde gerne ein wenig code Zeigen, habe aber nix was man verstehen 
würde,
denke es geht um grundsätzliche Probleme...
Was muss man tun, um den MSP mit einem XT1 im HF Modus zu nutzen?

Ich habe die Codebeispiele durchsucht und die TI website, aber natürlich 
nix passendes gefunden.
Für Hilfe wäre ich echt dankbar!

von Stefan H. (Firma: dm2sh) (stefan_helmert)


Lesenswert?

>Ich brauche den Externen hohen Takt noch für andere Bausteine
Ich bin mir zwar nicht ganz sicher, doch ich dachte, das darf man nicht, 
das dämpft zu sehr. Man darf das Taktsignal nicht wo anders hin 
wegführen.

von Stefan S. (sim)


Lesenswert?

Das wäre natürlich fatal -
wenn das Stimmt, müsste ich einen externen Oszillator vorsehen,
wäre etwas doof, da das Teil langsam fertig werden sollte.

von MichiB (Gast)


Lesenswert?

Hi,

XT2 aktiviert?

  /*** Crystal Configuration ***/
  BCSCTL1 &= ~XT2OFF;                               // Turn on XT2 
(8MHz)
  // wait until crystal sattled
  do
  {
    IFG1 &= ~OFIFG;
    for (i = 0; i < 1000; i++);
  } while(IFG1 & OFIFG);
  IFG1 &= ~OFIFG;                                   // reset fault flag
  BCSCTL2 |= SELM_2 + SELS;                         // XT2 is used for 
MCLK and SMCLK

von Benjamin S. (recycler)


Lesenswert?

Du hast die verschiendenen Takte rausgeführt an SMCLK, MCLK und ACLK an 
den Pins 11.0 bis 11.2. Dort kannst du deine Peripherie anschließen. 
Aktiviere über die entsprechenden Register die Spezialfunktionen und du 
hast den Takt stabil an den Ausgangspins. Vlt kannst du sie intern noch 
runterteilen, da musst du selber nach den Einstellungen schauen.
Ich denke das ist die einfachste Möglichkeit, den Takt abzugleichen.

von Benjamin S. (recycler)


Lesenswert?

Beispiele für die Quarze gibts unter
http://www.mikrocontroller.net/articles/MSP430_Codebeispiele

von Stefan S. (sim)


Lesenswert?

Wie stabil ist denn der Takt der an den anderen Ausgängen wieder 
ausgegeben wird?

Mein HF-Quarz (und auch das einzige) sitzt an XT1,
das habe ich nun so initialisiert:

UCSCTL6_L = 0xE2;

Laut Datenblatt steht das für:

24 bis 32 Mhz - bringt mir ein besseres Signal als 16 bis 24Mhz
X1_HF - Mode
SMCKL Enabled

Ich habe nun sin Signal am Quarz - 20Mhz wie es sein soll,
aber das schaut nicht so dolle aus:

ca. 500mV Peak-Peak mit ca. 400mV Offset.

Wie schaut denn ein normales Taktsignal vom MSP aus?
Habe ich evtl falsche Kapazitäten?

Laut datenblatt sollten es 20pF sein, ich habe an jedem Pin 2x10 
Parallel.

Die Leiterbahn zur weiteren Peripherie ist sicher durchtrennt,
daran liegt es also wohl nicht.


Was meint ihr?

von Benjamin S. (recycler)


Lesenswert?

Ich glaub sowas hatte ich auch. Das wird intern noch verstärkt.
Den Pin kannst du extern verwenden. Wenn du zuviel ranhängst, dann nimm 
zusätzlich einen Spannungsfolger.
Schreib dir ein Programm das nur einen PIN toggelt.
1
void main()
2
{
3
 init();
4
5
 while(1)
6
 {
7
  P1OUT = !P1OUT;
8
 }
9
10
}

Mess dann den Pin mit dem Oszi und wenns stabil ist, dann funktioniert 
alles. Hatte damals auch ein paar Probleme mit der 4er Reihe. Der Code 
aus dem Beispiel mit 8 MHz funktioniert.
Probiere es mal damit und dann nimm den 20MHz Quarz.

von Stefan S. (sim)


Lesenswert?

Bald steige ich nimmer durch,
wenn ich nichts initialisiere,
dann habe ich beim Toggeln eine Periodendauer von ca. 13us
wenn ich den XT1 initialisiere, dann sind es knapp 50us

Das wäre irgendwo ein vorteiler von drei - fällt mir schwer das zu 
glauben.

von Stefan S. (sim)


Lesenswert?

So, es schien doch irgendwie richtig gewesen zu sein,
ich habe mal ein 149 Developement Board angeschlossen und am Uhrenquarz 
gemessen - 32,768Khz
Aber ein Pin hat 2.5V Offset und Modulation sind ca. 600mv pp
Der andere Pin hat ca. 1.7V

Ich habe meine Platine heute auf den Uhrenquarz umgebaut und die Cs 
ausgelötet - nun habe ich ca 250mV Modulation an jedem Pin,
einer um GND, der andere um 2.5V

Scheint also doch plausibel zu sein.

Es gibt ein schönes Testbeispiel in den Code Examples,
hiermit kann gestestet werden ob XT1 ordentlich funktioniert.
Das schein nun soweit alles ok zu sein...

von peter-neu-ulm (Gast)


Lesenswert?

>Vorteiler von 3
Daran ist schon zu glauben:

Wenn die C-Werte des Oszillators gerade den richtigen (oder  falschen) 
Wert haben, kann es schon mal passieren, dass der Quarz auch in einer 
L-freien Schaltung auf der dritten Vielfachen schwingt.

Oder es verhält sich so, das als Nennfrequenz des Quarzes die dritte 
Vielfache (20 MHz) angegeben ist und er auf der Grundwelle (ca. 
13,3..MHz) schwingt

von peter-neu-ulm (Gast)


Lesenswert?

>....ca 13,3 MHz schwingt
natürlich 1/3 von 20 !! (ich glaub: doch 6,666... MHz)

von Tony S. (Gast)


Lesenswert?

Auszug aus dem TI Datenblatt:
- Up to 18-MHz System Clock -> MSP430F543x, MSP430F541x
– Up to 25-MHz System Clock -> MSP430F543xA, MSP430F541xA

http://focus.ti.com/lit/ds/symlink/msp430f5419.pdf

Keine Ahnung was das hier "430F5419 /38" für ein Chip ist, aber wenn er 
nicht ein A am Ende der Bezeichnung hat, dann wird er wohl kaum 
zuverlässig mit 20MHz laufen.

Gruss
Tony

von _ebtschi_ (Gast)


Lesenswert?

Und, wie hat das Overclocken funktioniert? Laufen die Teile stabil?

Ich habe hier einen MSP430F2274, der mit 16 MHz (max. laut Datenblatt) 
läuft, und wo mir etwas extra Performance echt weiterhelfen würde. Wenn 
das mit 20 MHz stabil läuft, wäre das echt ein Hit!

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.