
UM10800
All information provided in this document is subject to legal disclaimers.
© NXP Semiconductors N.V. 2016. All rights reserved.
User manual
Rev. 1.2 — 5 October 2016
397 of 487
NXP Semiconductors
UM10800
Chapter 26: LPC82x ROM API Power profiles
26.6.1.6 System clock approximately equal to the expected value
command[0] = 12000;
command[1] = 16500;
command[2] = CPU_FREQ_APPROX;
command[3] = 0;
LPC_PWRD_API->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.
26.6.2 Power control
See
for examples of the power control API.
26.6.2.1 Invalid frequency (device maximum clock rate exceeded)
command[0] = 30;
command[1] = PWR_CPU_PERFORMANCE;
command[2] = 40;
LPC_PWRD_API->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.
26.6.2.2 An applicable power setup
command[0] = 24;
command[1] = PWR_CPU_EFFICIENCY;
command[2] = 24;
LPC_PWRD_API->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.