PLL0 config script
    
        
            Page last updated  01 Dec 2010, by   .
        
    
    
        
            
                
                    
                        2
                        replies
                    
                
            
        
    
Here's how to make the LPC1768 board run on 96Mhz:
#include "LPC17xx.h"
#include "core_cm3.h"
#include "cmsis_nvic.h"
  // Define the register names that haven't been defined
#define CLKSRCSEL LPC_SC->CLKSRCSEL
#define PLL0CFG LPC_SC->PLL0CFG
#define PLL0CON LPC_SC->PLL0CON
#define CCLKCFG LPC_SC->CCLKCFG
#define PLL0FEED LPC_SC->PLL0FEED
#define PLL0STAT LPC_SC->PLL0STAT
  // Other defines
#define SYSCLK 96000000
#define EXTCLK 12000000
#define PLLCLK 288000000
#define PLLMULT (PLLCLK/2/EXTCLK)-1
void Sys_init(void) {
    // Set main clk as main oscillator
    CLKSRCSEL = 1;
    // Disconnect the PLL0
    PLL0CON &= ~(1<<1); /* Disconnect the main PLL (PLL0) */
    // Feed the PLL
    PLL0FEED = 0xAA;
    PLL0FEED = 0x55;
    // Wait for main PLL (PLL0) to disconnect
    while ((PLL0STAT & (1<<25)) != 0x00);
    // Turn off the main PLL (PLL0)
    PLL0CON &= ~(1<<0);
    // Feed the PLL
    PLL0FEED = 0xAA;
    PLL0FEED = 0x55;
    // Wait for main PLL (PLL0) to shut down
    while ((PLL0STAT & (1<<24)) != 0x00);
    // Set PLL0 multiplier
    PLL0CFG = PLLMULT;
    // Feed the PLL
    PLL0FEED = 0xAA;
    PLL0FEED = 0x55;
    // Turn on the main PLL (PLL0)
    PLL0CON |= 1<<0;
    // Feed the PLL
    PLL0FEED = 0xAA;
    PLL0FEED = 0x55;
    // Wait for main PLL (PLL0) to come up
    while ((PLL0STAT & (1<<24)) == 0x00);
    // Set CPU clock divider
    CCLKCFG = 2;
    // Wait for PLOCK0 to become 1
    while ((PLL0STAT & (1<<26)) == 0x00);
    // Connect to the main PLL (PLL0)
    PLL0CON |= 1<<1;
    // Feed the PLL
    PLL0FEED = 0xAA;
    PLL0FEED = 0x55;
    // Wait for main PLL (PLL0) to connect
    while ((PLL0STAT & (1<<25)) == 0x00);
}
2 comments
                    
                    #
                    29 May 2011
                    
                
                
            
                    
                    #
                    21 Nov 2013
                    
                
                
            You need to log in to post a comment

Works for me. Thanks!