Hallo zusammen,
ich Arbeite gerade an einem LPC1766-STK Board und habe eine Frage zur
eingestellten Frequenz.
1 | void InitClock(void)
|
2 | {
|
3 | // 1. Init OSC
|
4 | SCS_bit.OSCRANGE = 0;
|
5 | SCS_bit.OSCEN = 1;
|
6 | // 2. Wait for OSC ready
|
7 | while(!SCS_bit.OSCSTAT);
|
8 | // 3. Disconnect PLL
|
9 | PLL0CON_bit.PLLC = 0;
|
10 | PLL0FEED = 0xAA;
|
11 | PLL0FEED = 0x55;
|
12 | // 4. Disable PLL
|
13 | PLL0CON_bit.PLLE = 0;
|
14 | PLL0FEED = 0xAA;
|
15 | PLL0FEED = 0x55;
|
16 | // 5. Select source clock for PLL
|
17 | CLKSRCSEL_bit.CLKSRC = 1; // Selects the main oscillator as a PLL clock source.
|
18 | PCLKSEL0 = PCLKSEL1 = 0x55555555; // other peripherals kein Teiler = 50MHz
|
19 | // 6. Set PLL settings 300 MHz
|
20 | PLL0CFG_bit.MSEL = 25-1;
|
21 | PLL0CFG_bit.NSEL = 2-1;
|
22 | PLL0FEED = 0xAA;
|
23 | PLL0FEED = 0x55;
|
24 | // 7. Enable PLL
|
25 | PLL0CON_bit.PLLE = 1;
|
26 | PLL0FEED = 0xAA;
|
27 | PLL0FEED = 0x55;
|
28 | // 8. Wait for the PLL to achieve lock
|
29 | while(!PLL0STAT_bit.PLOCK);
|
30 | // 9. Set clk divider settings
|
31 | CCLKCFG = 3-1; // 1/3 Fpll
|
32 | // 10. Connect the PLL
|
33 | PLL0CON_bit.PLLC = 1;
|
34 | PLL0FEED = 0xAA;
|
35 | PLL0FEED = 0x55;
|
36 | }
|
Die Frequenz der Peripherie habe ich ohne Teiler auf 50Mhz gestellt.
Aber auf welcher Herzzahl steht die normale Frequenz?
Ich verstehe zwar das ich die Frequenz mit MSEL und NSEL einstellen
kann, aber ich verstehe bei besten Willen nicht wie...
Auf was ist sie denn im Moment eingestellt?
Ich hoffe Ihr könnt mir helfen.
Gruß
Christian