| /********************************************************************** | |
| * $Id$ lpc18xx_pwr.c 2011-06-02 | |
| *//** | |
| * @file lpc18xx_pwr.c | |
| * @brief Contains all functions support for Power Control | |
| * firmware library on LPC18xx | |
| * @version 1.0 | |
| * @date 02. June. 2011 | |
| * @author NXP MCU SW Application Team | |
| * | |
| * Copyright(C) 2011, NXP Semiconductor | |
| * All rights reserved. | |
| * | |
| *********************************************************************** | |
| * Software that is described herein is for illustrative purposes only | |
| * which provides customers with programming information regarding the | |
| * products. This software is supplied "AS IS" without any warranties. | |
| * NXP Semiconductors assumes no responsibility or liability for the | |
| * use of the software, conveys no license or title under any patent, | |
| * copyright, or mask work right to the product. NXP Semiconductors | |
| * reserves the right to make changes in the software without | |
| * notification. NXP Semiconductors also make no representation or | |
| * warranty that such application will be suitable for the specified | |
| * use without further testing or modification. | |
| **********************************************************************/ | |
| /* Peripheral group ----------------------------------------------------------- */ | |
| /** @addtogroup PWR | |
| * @{ | |
| */ | |
| /* Includes ------------------------------------------------------------------- */ | |
| #include "lpc_types.h" | |
| #include "lpc18xx_scu.h" | |
| #include "lpc18xx_pwr.h" | |
| /*********************************************************************//** | |
| * @brief Enter Sleep mode with co-operated instruction by the Cortex-M3. | |
| * @param[in] None | |
| * @return None | |
| **********************************************************************/ | |
| void PWR_Sleep(void) | |
| { | |
| //LPC_PMC->SLEEP0_MODE = 0x00; | |
| /* Sleep Mode*/ | |
| __WFI(); | |
| } | |
| /*********************************************************************//** | |
| * @brief Enter Deep Sleep mode with co-operated instruction by the Cortex-M3. | |
| * @param[in] None | |
| * @return None | |
| **********************************************************************/ | |
| void PWR_DeepSleep(void) | |
| { | |
| /* Deep-Sleep Mode, set SLEEPDEEP bit */ | |
| SCB->SCR = 0x4; | |
| LPC_PMC->PD0_SLEEP0_MODE = PWR_SLEEP_MODE_DEEP_SLEEP; | |
| /* Deep Sleep Mode*/ | |
| __WFI(); | |
| } | |
| /*********************************************************************//** | |
| * @brief Enter Power Down mode with co-operated instruction by the Cortex-M3. | |
| * @param[in] None | |
| * @return None | |
| **********************************************************************/ | |
| void PWR_PowerDown(void) | |
| { | |
| /* Deep-Sleep Mode, set SLEEPDEEP bit */ | |
| SCB->SCR = 0x4; | |
| LPC_PMC->PD0_SLEEP0_MODE = PWR_SLEEP_MODE_POWER_DOWN; | |
| /* Power Down Mode*/ | |
| __WFI(); | |
| } | |
| /*********************************************************************//** | |
| * @brief Enter Deep Power Down mode with co-operated instruction by the Cortex-M3. | |
| * @param[in] None | |
| * @return None | |
| **********************************************************************/ | |
| void PWR_DeepPowerDown(void) | |
| { | |
| /* Deep-Sleep Mode, set SLEEPDEEP bit */ | |
| SCB->SCR = 0x4; | |
| LPC_PMC->PD0_SLEEP0_MODE = PWR_SLEEP_MODE_DEEP_POWER_DOWN; | |
| /* Deep Power Down Mode*/ | |
| __WFI(); | |
| } | |
| /** | |
| * @} | |
| */ | |
| /** | |
| * @} | |
| */ | |
| /* --------------------------------- End Of File ------------------------------ */ |