mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MSP430F149 Taktfrequence


Autor: Andrej Treskov (plumbum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo an alle!

Ich habe vor kurzem mit der Programmierung von MSP430F149 angefangen.
Kann mir jemand sagen mit welcher Taktfrequence dieser Controller läuft
(by default)? Und wie kann man den auf die gewünschte Taktfrequence
einstellen? Zum Beispiel 3 oder 5 MHz. Kann das jemand auf einfache
Weise erklären? Am besten mit einem Beispiel.
Aus UsersManual bin ich nicht wirklich schlauer geworden. Und die Suche
hat auch nicht viel geholfen.

Zu meinem Controller: ist ein MSP430F149 auf dem HeaderBoard von
Olimex. Soweit ich weiss der hat einen externen 32.768-er Quarz. Als
Software benutze ich "MSP430 IAR C/C++"

Danke schon mal.

Autor: marc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
HI,

nun dein Quarz läuft mit 32kHz. Wenns schneller gehen soll kannst du
als Takt den DCO benutzen. S.119 im User-Guide. Besser du kaufst dir
nen Quarz und hängst in an XT2. Kostet nen Euro.

Gruß Marc

Autor: Andrej Treskov (plumbum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Antwort.

Soweit ich verstanden habe, ist das nur der Referenzquarz. Der
Processor tickt dank Multiplikator(en) aber schneller. ACLOCK tickt
tatsächlich mit 32kHz.
Im "MSP430 Praxisbuch" auf der Seite 143 habe ich folgendes
gefunden:
"Falls fSystem = 1.048 MHz die gewünschte Arbeitsfrequenz ist, braucht
nichts weiteres getan zu werden". Allerdigns bezieht sich das Buch auf
MSP430F449 mit FLL+. Ob das auch für MSP430F149 gilt?

Für meine Anwendung reichen die 1.048 MHz vollkommen. Allerdings muss
ich die tatsächliche Arbeitsfrequenz wissen.
Angenommen ich brauche ein Delay für 400µs. Wie macht man das ohne zu
wissen wie lange ein Takt dauert?

Die S.119 im UserQuide schlage ich gleich auf.

Autor: marc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also wenn du nicht herraus bekommst mit welchem Takt dein uC läuft
kannst du z.B ne schleife schreiben. Bei beginn eine LED einschalten.
Am ende wieder ausschalten und die Zeit stoppen. Dann brauchst du noch
die Anzahl duchgelaufener Taktschritte für deine Schleife.
Stell dir lieber den DCO richtig ein oder Kauf dir besser einen 4Mhz
Quarz und teile ihn runter. Ich weiß nämlich nicht wie schnell der DCO
laufen kann ohne einen externen Widerstand an Rsoc zu klemmen.
Bei Default läuft er mit DCO.
"After a PUC, MCLK and SMCLK are sourced from DCOCLK at ~800 kHz (see
device-specific datasheet for parameters) and ACLK is sourced from
LFXT1 in LF mode." im UserGuide
gruß marc

Autor: Dieter (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

soweit ich weiß, läuft der MSP430f149 mit der MCLK also mit ca. 800kHz
sofern du nichts anderes ausgewählt hast.

Auf der Seite von TI gibt es ausführliche C und ASM Codebeispiele.

Weiß nicht, ob die von mir angehängten der aktuellste Stand sind.
Jedoch findest du darin Beispiele, wie du den MSP430 mittels DCO auf
deine gewünschte Taktfrequenz bringst.

Gruß

Autor: Andrej Treskov (plumbum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank. Ich fange langsam an das zu verstehen :)

Grüß Andrej

Autor: B.T. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst ein externer Quarz (theoritisch  bis 8MHz)als Taktfrequenz
fuer den MSP einsetzen und dieser als Systemtakt auswaehlen.In der
Praxis habe ich den MSP bis 17 MHz ohne Probleme uebertakt .Ich musste
aber 4,5V als Betriebsspannung verwenden.

Autor: Andrej Treskov (plumbum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Moment brauche ich keine höhere Taktfrequenz für meine Anwendung. Ich
wollte in erster Linie wissen wie schnell er by Default läuft. Sollte
ich höhere Frequenz brauchen, werde ich wahrscheinlich wirklich einen
externen Quarz dazuschalten. Habe irgendwo gelesen/gehört dass wenn man
es per DCO schneller taktet, ist die Taktfrequenz nicht kostant weil
temperaturabhängig. Stimmt das? Wenn ja, kann man es wohl für z.B
UART-Kommunikation mit höheren Baudraten als 9600 nicht benutzen.

Autor: Zimmi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hiho,
Du solltest den DCO in den MSP430Fx1xx generell nicht fuer UART
nehmen,da er wirklich sehr stark ueber die Temperatur schwankt und auch
stark exemplarabhängig ist.
In den neuen MSP430Fx2xx werden im Werk Kalibrierwerte im Info-Flash
abgelegt. Diese muss man dann bei der Initialisierung in die
DCO-Register schreiben. Der DCO schwingt dann ziemlich genau mit der
eingestellten Frequenz (ich glaube 1,8,12 oder 16 MHz,3% Toleranz über
den gesamten Temperaturbereich) Dies sollte fuer eine saubere
UART-Kommunikation reichen.
Waeren die neuen Derivate eine Option fuer Dich?

Autor: Andrej Treskov (plumbum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Waeren die neuen Derivate eine Option fuer Dich?

Sorry, was meinst du damit?

Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

also ich spare mir den externen Quarz > 32.768 Hz und verwende den  DCO
auch für UART.
Der DCO ist wie aus dem Datenblatt hervorgeht sehr stark
Temperaturabhängig. Dieses Schwanken über der Temperatur kann durch
einen externen Widerstand am rosc Portpin minimiert werden.

Im slac069.zip File gibt es Beispiele wie der DCO auf eine bestimmte
Frequenz eingestellt werden kann. B.z.w. die eingestellte Frequenz
überprüft und gegebenenfalls nachgeregelt wird. Kleinste Schrittweite
ist da meineswissens 32768Hz/8 = 4096Hz. Bei 5MHz ist dieser Fehler
somit < 0,1%. UART Anwendungen weit über 9600 baud sind damit nach
meiner Erfahrung gut machbar.

Weiß vielleicht jemand wieso TI der 2XX Serie die bis 16MHz taktbar
ist, keinen Hardware Multiplyer spendiert hat?

Gruß

Autor: Zimmi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hiho,
meines Wissens sind bisher nur die kleinen Derivate der 2xx verfügbar.
Die haben keinen HW-Multiplizierer, wie Du richtig erwähnst. Ich denke
mal rein aus Kostengruenden. Sollten demnaechst auch die groesseren
folgen, wird er wieder mit an Bord sein, denke ich. Ich habe seit zwei
Wochen den F2013 in der Mache, der geht gut ab und der neue DCO haelt
bisher, was er verspricht.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.