MSP zur Frequenzmessung

Gast #783111
Lesenswert?

Hallo,

ich habe leider keinerlei Erfahrung, muss aber eine Möglichkeit finden, 
meinen MSP430F2303 dazu zu bringen, folgendes zu tun:

- Ich habe eine Frequenz von 133kHz, die als Systemtakt dienen soll.
- Es soll in der Anwendung dann ein Signal bei ca. 20kHz gemessen 
werden. (Das ist die Ausgabegröße einer Messschaltung.)

Ich finde zur Zeit keinen Weg, die gegebenen Anschlüsse des MSP so zu 
nutzen, dass ich den internen Takt des µControllers nicht nutzen muss. 
Es soll möglichst wenig Stromverbrauch bei rum kommen.


Ich wollte das externe 133kHz Signal zuerst an den XIN port legen, aber 
dieser ist wohl auf max.50kHz ausgelegt.
Wie bekomme ich den Takt als Systemtakt in den MSP???

Ich danke euch für jede mögliche Hilfe!
#783128
Lesenswert?

Also den F2303 gibts nicht. Ich nehme mal an, du hast den 2003. Und ja, 
da geht tatsächlich nicht mehr als 50kHz am Quarzanschluss, steht so im 
User Guide:

"MSP430x20xx: LFXT1 does not supportHFmode, XT2 is not present,ROSC
is not supported."

Mit 133kHz Systemtakt wirds eh schwierig die 20kHz genau zu messen.
Gast #783522
Lesenswert?

Kannst auch anders rangehen. Ich weiss ja nicht, was Dein Controller 
sonst noch für Aufgaben hat. Aber wenn er nur zählen muss, kannst Du 
über TACLK die zu messende Frequenz einspeisen und damit den Timer 
takten. Die Zeitbasis erhälst Du über den Watchdog-Timer, den Du über 
über den Systemtakt oder eine andere Quelle an ACLK taktest.
Bei dieser Lösung kannst Du mit einem geringen CPU-Clock arbeiten, da 
Dir die HW die ganze Zählerei abnimmt.
Falls Du noch einen Uhrenquarz übrig hast, kannst Du z.B. mit den 
Watchdogtimer eine Messzeit von 1 Sekunde realisieren, so dass Du dann 1 
Hz Auflösung hast (abgesehen von der Genauigkeit des Quarzes).
Einfach bei jedem Watchdog-Interrupt den TAR-Wert auslesen und davon den 
vorherigen TAR-Wert abziehen. Ergibt die Frequenz in Hz. Da Du maximal 
20kHz voliegen hast, brauchst Du keine Überläufe zu beachten, da der TAR 
maximal um 20000 inkrementiert wird.
Einfach, billig, geschmacklos. Sollte funktionieren.
Gast #783539
Lesenswert?

Hmmm, wer lesen kann ist klar im Vorteil.
Das hilft Dir natürlich nicht bei Deinem Problem, die 133kHz in den 
Controller zu bringen. Besteht die Möglichkeit, den ausserhalb des MSP 
z.B. durch 4 zu teilen?
#785164
Lesenswert?

@ Christian R.
Ich verstehe die Capture-Compare-Einheit nicht so recht. Ich kann nur 
mit der Zählfunktion des Timers etwas anfangen. Wie kann ich "Capture" 
für meine Messung nutzen?

@ szimmi
Danke, vielleicht hilft mir das ja weiter, wenn ich vorerst den internen 
Takt nehme. Ich wollte den DCO nicht nutzen, sondern die in meiner 
Schaltung vorhandene Frequenz 133kHz, um Strom zu sparen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren