PLL-Berechnung Cortex M0

Gast #3448104
Lesenswert?

Hallo,
irgendwie steh' ich gerade auf dem Schlauch. Ich versuche die 
PLL-Berechnung an Hand eines LPC11C24 nachzuvollziehen 
(Blinky-Beispiel).
Dort steht im Register SYSPLLCTRL der Wert 0x23, was bei einem 12 
MHz-Quarz 48 MHz entsprechen soll.
Im UM steht nun:
This register connects and enables the system PLL and configures the PLL 
multiplier and divider values. The PLL accepts an input frequency from 
10 MHz to 25 MHz from various clock sources. The input frequency is 
multiplied up to a high frequency, then divided down to provide the 
actual clock used by the CPU, peripherals, and memories. The PLL can 
produce a clock up to the maximum allowed for the CPU.

In der Tabelle steht dann folgendes (siehe Anhang):

Wie kommt man da auf 48 MHz???
Angehängte Dateien:
#3448439
Lesenswert?

Die untersten 4 bit im Register + 1 sind der M-Wert. Bei 0x23 ist das 
3+1=4.
Die Ausgangsfrequenz bei 12MHz Eingangsfrequenz beträgt 
M*FCIN=12MHz*4=48MHz. Der PSEL Wert in den Bits 4 und 5 muss nun so 
gewählt werden, dass bei der Formel  2 x P x FCLKOUT ein Wert zwischen 
156 und 320MHz rauskommt. Mit der 2 in dem Wert haben wir 48MHz  2 2= 
192 Mhz. Damit sind alle Anforderungen erfüllt. Mit dem P-Wert 3 (0x33 
im Register) müsste das auch noch gehen. Damit beträgt FCCO 
48Mhz*2*3=288MHz. Der P-Wert 1 würde 48MHz*1*2=96MHz ergeben, was zu 
wenig wäre. Es bleiben also nur die Werte 2 und 3 für P übrig. Im 
Zweifelsfall nimmt man den kleineren Wert in Hinsicht auf Strom und ESD.

Für das Verhältnis Eingangsfrequenz zu Ausgangsfrequenz der PLL ist nur 
der M-Wert relevant. Den PSEL  Wert muss man nur so einstellen, dass die 
Anforderungen aus dem Datenblatt erfüllt sind.

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