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???
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.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.