UM10503
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2012. All rights reserved.
User manual
Rev. 1.3 — 6 July 2012
134 of 1269
NXP Semiconductors
UM10503
Chapter 11: LPC43xx Clock Generation Unit (CGU)
11.8 Example CGU configurations
11.8.1 Programming the CGU for Deep-sleep and Power-down modes
Before the LPC43xx enters Deep-sleep or Power-down mode, the IRC must be
programmed as the clock source in the control registers for all output stages (OUTCLK_0
to OUTCLK_27). In addition, the PLLs must be in Power-down mode.
When the LPC43xx wakes up from Deep-sleep or Power-down mode, the IRC is used as
the clock sources for all output stages. Also see
11.8.2 Programming the CGU for using I2S at peripheral clock rate of
30 MHz
In this example the peripheral clock of the I2S interface is set to 30 MHz. The peripheral
I2S clock is a branch of the BASE_APB1_CLK. Using a crystal of 12 MHz as clock source,
a PLL1 multiplier of 10, and an integer divider of 4 provide the desired clock rate.
For this example, program the CGU as follows:
1. Enable the crystal oscillator in the XTAL_OSC_CTRL register (
2. Wait for the crystal to stabilize.
3. Select the crystal oscillator as input to the PLL1 and set up the divider in the
PLL1_CTRL register (see
–
Set bits CLK_SEL in the PLL1_CTRL register to 0x6.
–
Set MSEL = 9.
–
Set NSEL = 0.
–
Set PSEL = 1.
–
Set FBSEL = 1.
–
Set BYPASS = 0, DIRECT = 0.
4. Wait for the PLL1 to lock.
5. Select the PLL1 as clock source of the integer divider A (IDIVA) in the IDIVA register
and set AUTOBLOCK = 1 (see
6. Select IDIVA as clock source of the base clock BASE_APB1_CLK and set
AUTOBLOCK = 1 (see
7. Ensure that the I2S branch clock CLK_APB1_I2S is enabled in the CCU (see
11.8.3 PLL0USB settings for USB applications
shows examples of the M-divider and NP-divider register settings that produce a
480 MHz output clock for the USB0.
30MHz
120MHz
12MHz
XTAL_OSC
PLL1
x
10
DIVA
/
4
BASE_APB1_CLK