DRAFT
DRAFT DRAFT DR
DRAFT DRAFT DRAFT
D
RAF
DRAFT DRAFT DRA
FT D
RAFT DR
AFT D
DRA
FT DRAFT DRAFT
D
RAFT
DRAFT
D
RAFT
DRA
UM10601
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2012. All rights reserved.
Preliminary user manual
Rev. 1.0 — 7 November 2012
267 of 313
NXP Semiconductors
UM10601
Chapter 22: LPC800 Power profile API ROM driver
22.5.1.6 System clock approximately equal to the expected value
command[0] = 12000;
command[1] = 16500;
command[2] = CPU_FREQ_APPROX;
command[3] = 0;
(*rom)->pWRD->set_pll(command, result);
The above code specifies a 12 MHz PLL input clock, a system clock of approximately
16.5 MHz and no locking time-out.
set_pll
returns PLL_CMD_SUCCESS in
result[0]
and
16000 in
result[1]
. The new system clock is 16 MHz.
22.5.2 Power control
See
for examples of the power control API.
22.5.2.1 Invalid frequency (device maximum clock rate exceeded)
command[0] = 30;
command[1] = PWR_CPU_PERFORMANCE;
command[2] = 40;
(*rom)->pWRD->set_power(command, result);
The above setup would be used in a system running at the main and system clock of
30 MHz, with a need for maximum CPU processing power. Since the specified 40 MHz
clock is above the 30 MHz maximum,
set_power
returns PWR_INVALID_FREQ in
result[0]
without changing anything in the existing power setup.
22.5.2.2 An applicable power setup
command[0] = 24;
command[1] = PWR_CPU_EFFICIENCY;
command[2] = 24;
(*rom)->pWRD->set_power(command, result);
The above code specifies that an application is running at the main and system clock of
24 MHz with emphasis on efficiency.
set_power
returns PWR_CMD_SUCCESS in
result[0]
after configuring the microcontroller’s internal power control features.