Forum: Offtopic Berechnung Fractal Divider


von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Hallo,

Ich bräuchte eine Formel für die Berechnung eines Fractal Dividers.

Im Datenblatt steht diese Formal:

I2S_TX_MCLK = PCLK * (X / Y) / 2

Meine Werte:
PCLK = 12 MHz (12000000)
I2S_TX_MCLK = 8KHz (8000)

Der X und Y Wert ist jeweils ein 8 Bit Wert.

(für den LPC43xx)

Weiß jemand wie ich am einfachsten auf die X/Y Zahlen komme?

Vielen Dank schonmal, grüße Markus.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Markus M. schrieb:
> Weiß jemand wie ich am einfachsten auf die X/Y Zahlen komme?
Einfach mal diesen Faktor ausrechnen:

2* I2S_TX_MCLK/PCLK = (X / Y) = 16000/12000000
Un dnach ein wenig Kürzen hast du X/Y = 1/750

Und somit hast du die Werte für X=1 und Y=750

BTW: ist dein I2S Takt tatsächlich so niedrig?

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Ist zum ersten mal dass ich mit I2S was mache ...

Stimmt, es soll die SampleRate von 8KHz sein.

vermutlich dann 12MHz / (8KHz x 16 Bit x 2) = 46,875 (statt 750)

von Joe F. (easylife)


Lesenswert?

Lothar M. schrieb:
> Und somit hast du die Werte für X=1 und Y=750

750 ist allerdings kein 8-bit Wert mehr...

Markus M. schrieb:
> vermutlich dann 12MHz / (8KHz x 16 Bit x 2)

Das solltest du aus dem Datenblatt mal genau herausfinden.
MCLK wäre in diesem Fall also 256 KHz

6 MHz / 0.256 MHz = Y / X
= 23.4375
= 375 / 16 (passt nicht, wegen 375 > 255)

Näherung wäre Y=188, X=8

Ergibt MCLK = 255.3 KHz, Samplerate = 7979 Hz

Oder Y=234, X=10
Ergibt MCLK = 256.4 KHz, Samplerate = 8013 Hz

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Die Clock's von der NXP Doku sind etwas dürftig. Ich versuche mal die 
PLL0AUDIO zu aktivieren und das als Base Clock zu verwenden.
Wenn ich da 12,288MHz erzeugen könnte wäre das ein exakter Teiler.

NXP hat das ganze so kompliziert gemacht, da hätten die ruhig einige 
Seiten mit Rechenbeispielen spendieren können :-/

Beim STM32 ist das ganze viel leichter, leider war ich nicht der 
Entscheider für das Projekt.

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.