mbed library sources

Dependents:   frdm_kl05z_gpio_test

Fork of mbed-src by mbed official

Committer:
mbed_official
Date:
Thu Jan 30 12:15:05 2014 +0000
Revision:
80:66393a7b209d
Parent:
76:aeb1df146756
Child:
106:ced8cbb51063
Synchronized with git revision dba523f83fe09b7fce11fc1299dd1216e9776359

Full URL: https://github.com/mbedmicro/mbed/commit/dba523f83fe09b7fce11fc1299dd1216e9776359/

Update of I2C, SPI, SLEEP for NUCLEO_F103RB and L152RE

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 76:aeb1df146756 1 /**
mbed_official 76:aeb1df146756 2 ******************************************************************************
mbed_official 76:aeb1df146756 3 * @file stm32l1xx_pwr.h
mbed_official 76:aeb1df146756 4 * @author MCD Application Team
mbed_official 80:66393a7b209d 5 * @version V1.3.0
mbed_official 80:66393a7b209d 6 * @date 31-January-2014
mbed_official 76:aeb1df146756 7 * @brief This file contains all the functions prototypes for the PWR firmware
mbed_official 76:aeb1df146756 8 * library.
mbed_official 76:aeb1df146756 9 ******************************************************************************
mbed_official 76:aeb1df146756 10 * @attention
mbed_official 76:aeb1df146756 11 *
mbed_official 80:66393a7b209d 12 * <h2><center>&copy; COPYRIGHT 2014 STMicroelectronics</center></h2>
mbed_official 76:aeb1df146756 13 *
mbed_official 76:aeb1df146756 14 * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
mbed_official 76:aeb1df146756 15 * You may not use this file except in compliance with the License.
mbed_official 76:aeb1df146756 16 * You may obtain a copy of the License at:
mbed_official 76:aeb1df146756 17 *
mbed_official 76:aeb1df146756 18 * http://www.st.com/software_license_agreement_liberty_v2
mbed_official 76:aeb1df146756 19 *
mbed_official 76:aeb1df146756 20 * Unless required by applicable law or agreed to in writing, software
mbed_official 76:aeb1df146756 21 * distributed under the License is distributed on an "AS IS" BASIS,
mbed_official 76:aeb1df146756 22 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
mbed_official 76:aeb1df146756 23 * See the License for the specific language governing permissions and
mbed_official 76:aeb1df146756 24 * limitations under the License.
mbed_official 76:aeb1df146756 25 *
mbed_official 76:aeb1df146756 26 ******************************************************************************
mbed_official 76:aeb1df146756 27 */
mbed_official 76:aeb1df146756 28
mbed_official 76:aeb1df146756 29 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 76:aeb1df146756 30 #ifndef __STM32L1xx_PWR_H
mbed_official 76:aeb1df146756 31 #define __STM32L1xx_PWR_H
mbed_official 76:aeb1df146756 32
mbed_official 76:aeb1df146756 33 #ifdef __cplusplus
mbed_official 76:aeb1df146756 34 extern "C" {
mbed_official 76:aeb1df146756 35 #endif
mbed_official 76:aeb1df146756 36
mbed_official 76:aeb1df146756 37 /* Includes ------------------------------------------------------------------*/
mbed_official 76:aeb1df146756 38 #include "stm32l1xx.h"
mbed_official 76:aeb1df146756 39
mbed_official 76:aeb1df146756 40 /** @addtogroup STM32L1xx_StdPeriph_Driver
mbed_official 76:aeb1df146756 41 * @{
mbed_official 76:aeb1df146756 42 */
mbed_official 76:aeb1df146756 43
mbed_official 76:aeb1df146756 44 /** @addtogroup PWR
mbed_official 76:aeb1df146756 45 * @{
mbed_official 76:aeb1df146756 46 */
mbed_official 76:aeb1df146756 47
mbed_official 76:aeb1df146756 48 /* Exported types ------------------------------------------------------------*/
mbed_official 76:aeb1df146756 49 /* Exported constants --------------------------------------------------------*/
mbed_official 76:aeb1df146756 50
mbed_official 76:aeb1df146756 51 /** @defgroup PWR_Exported_Constants
mbed_official 76:aeb1df146756 52 * @{
mbed_official 76:aeb1df146756 53 */
mbed_official 76:aeb1df146756 54
mbed_official 76:aeb1df146756 55 /** @defgroup PWR_PVD_detection_level
mbed_official 76:aeb1df146756 56 * @{
mbed_official 76:aeb1df146756 57 */
mbed_official 76:aeb1df146756 58
mbed_official 76:aeb1df146756 59 #define PWR_PVDLevel_0 PWR_CR_PLS_LEV0
mbed_official 76:aeb1df146756 60 #define PWR_PVDLevel_1 PWR_CR_PLS_LEV1
mbed_official 76:aeb1df146756 61 #define PWR_PVDLevel_2 PWR_CR_PLS_LEV2
mbed_official 76:aeb1df146756 62 #define PWR_PVDLevel_3 PWR_CR_PLS_LEV3
mbed_official 76:aeb1df146756 63 #define PWR_PVDLevel_4 PWR_CR_PLS_LEV4
mbed_official 76:aeb1df146756 64 #define PWR_PVDLevel_5 PWR_CR_PLS_LEV5
mbed_official 76:aeb1df146756 65 #define PWR_PVDLevel_6 PWR_CR_PLS_LEV6
mbed_official 76:aeb1df146756 66 #define PWR_PVDLevel_7 PWR_CR_PLS_LEV7 /* External input analog voltage
mbed_official 76:aeb1df146756 67 (Compare internally to VREFINT) */
mbed_official 76:aeb1df146756 68 #define IS_PWR_PVD_LEVEL(LEVEL) (((LEVEL) == PWR_PVDLevel_0) || ((LEVEL) == PWR_PVDLevel_1)|| \
mbed_official 76:aeb1df146756 69 ((LEVEL) == PWR_PVDLevel_2) || ((LEVEL) == PWR_PVDLevel_3)|| \
mbed_official 76:aeb1df146756 70 ((LEVEL) == PWR_PVDLevel_4) || ((LEVEL) == PWR_PVDLevel_5)|| \
mbed_official 76:aeb1df146756 71 ((LEVEL) == PWR_PVDLevel_6) || ((LEVEL) == PWR_PVDLevel_7))
mbed_official 76:aeb1df146756 72 /**
mbed_official 76:aeb1df146756 73 * @}
mbed_official 76:aeb1df146756 74 */
mbed_official 76:aeb1df146756 75
mbed_official 76:aeb1df146756 76 /** @defgroup PWR_WakeUp_Pins
mbed_official 76:aeb1df146756 77 * @{
mbed_official 76:aeb1df146756 78 */
mbed_official 76:aeb1df146756 79
mbed_official 76:aeb1df146756 80 #define PWR_WakeUpPin_1 ((uint32_t)0x00000000)
mbed_official 76:aeb1df146756 81 #define PWR_WakeUpPin_2 ((uint32_t)0x00000004)
mbed_official 76:aeb1df146756 82 #define PWR_WakeUpPin_3 ((uint32_t)0x00000008)
mbed_official 76:aeb1df146756 83 #define IS_PWR_WAKEUP_PIN(PIN) (((PIN) == PWR_WakeUpPin_1) || \
mbed_official 76:aeb1df146756 84 ((PIN) == PWR_WakeUpPin_2) || \
mbed_official 76:aeb1df146756 85 ((PIN) == PWR_WakeUpPin_3))
mbed_official 76:aeb1df146756 86 /**
mbed_official 76:aeb1df146756 87 * @}
mbed_official 76:aeb1df146756 88 */
mbed_official 76:aeb1df146756 89
mbed_official 76:aeb1df146756 90
mbed_official 76:aeb1df146756 91 /** @defgroup PWR_Voltage_Scaling_Ranges
mbed_official 76:aeb1df146756 92 * @{
mbed_official 76:aeb1df146756 93 */
mbed_official 76:aeb1df146756 94
mbed_official 76:aeb1df146756 95 #define PWR_VoltageScaling_Range1 PWR_CR_VOS_0
mbed_official 76:aeb1df146756 96 #define PWR_VoltageScaling_Range2 PWR_CR_VOS_1
mbed_official 76:aeb1df146756 97 #define PWR_VoltageScaling_Range3 PWR_CR_VOS
mbed_official 76:aeb1df146756 98
mbed_official 76:aeb1df146756 99 #define IS_PWR_VOLTAGE_SCALING_RANGE(RANGE) (((RANGE) == PWR_VoltageScaling_Range1) || \
mbed_official 76:aeb1df146756 100 ((RANGE) == PWR_VoltageScaling_Range2) || \
mbed_official 76:aeb1df146756 101 ((RANGE) == PWR_VoltageScaling_Range3))
mbed_official 76:aeb1df146756 102 /**
mbed_official 76:aeb1df146756 103 * @}
mbed_official 76:aeb1df146756 104 */
mbed_official 76:aeb1df146756 105
mbed_official 76:aeb1df146756 106 /** @defgroup PWR_Regulator_state_is_Sleep_STOP_mode
mbed_official 76:aeb1df146756 107 * @{
mbed_official 76:aeb1df146756 108 */
mbed_official 76:aeb1df146756 109
mbed_official 76:aeb1df146756 110 #define PWR_Regulator_ON ((uint32_t)0x00000000)
mbed_official 76:aeb1df146756 111 #define PWR_Regulator_LowPower PWR_CR_LPSDSR
mbed_official 76:aeb1df146756 112 #define IS_PWR_REGULATOR(REGULATOR) (((REGULATOR) == PWR_Regulator_ON) || \
mbed_official 76:aeb1df146756 113 ((REGULATOR) == PWR_Regulator_LowPower))
mbed_official 76:aeb1df146756 114 /**
mbed_official 76:aeb1df146756 115 * @}
mbed_official 76:aeb1df146756 116 */
mbed_official 76:aeb1df146756 117
mbed_official 76:aeb1df146756 118 /** @defgroup PWR_SLEEP_mode_entry
mbed_official 76:aeb1df146756 119 * @{
mbed_official 76:aeb1df146756 120 */
mbed_official 76:aeb1df146756 121
mbed_official 76:aeb1df146756 122 #define PWR_SLEEPEntry_WFI ((uint8_t)0x01)
mbed_official 76:aeb1df146756 123 #define PWR_SLEEPEntry_WFE ((uint8_t)0x02)
mbed_official 76:aeb1df146756 124 #define IS_PWR_SLEEP_ENTRY(ENTRY) (((ENTRY) == PWR_SLEEPEntry_WFI) || ((ENTRY) == PWR_SLEEPEntry_WFE))
mbed_official 76:aeb1df146756 125
mbed_official 76:aeb1df146756 126 /**
mbed_official 76:aeb1df146756 127 * @}
mbed_official 76:aeb1df146756 128 */
mbed_official 76:aeb1df146756 129
mbed_official 76:aeb1df146756 130 /** @defgroup PWR_STOP_mode_entry
mbed_official 76:aeb1df146756 131 * @{
mbed_official 76:aeb1df146756 132 */
mbed_official 76:aeb1df146756 133
mbed_official 76:aeb1df146756 134 #define PWR_STOPEntry_WFI ((uint8_t)0x01)
mbed_official 76:aeb1df146756 135 #define PWR_STOPEntry_WFE ((uint8_t)0x02)
mbed_official 76:aeb1df146756 136 #define IS_PWR_STOP_ENTRY(ENTRY) (((ENTRY) == PWR_STOPEntry_WFI) || ((ENTRY) == PWR_STOPEntry_WFE))
mbed_official 76:aeb1df146756 137
mbed_official 76:aeb1df146756 138 /**
mbed_official 76:aeb1df146756 139 * @}
mbed_official 76:aeb1df146756 140 */
mbed_official 76:aeb1df146756 141
mbed_official 76:aeb1df146756 142 /** @defgroup PWR_Flag
mbed_official 76:aeb1df146756 143 * @{
mbed_official 76:aeb1df146756 144 */
mbed_official 76:aeb1df146756 145
mbed_official 76:aeb1df146756 146 #define PWR_FLAG_WU PWR_CSR_WUF
mbed_official 76:aeb1df146756 147 #define PWR_FLAG_SB PWR_CSR_SBF
mbed_official 76:aeb1df146756 148 #define PWR_FLAG_PVDO PWR_CSR_PVDO
mbed_official 76:aeb1df146756 149 #define PWR_FLAG_VREFINTRDY PWR_CSR_VREFINTRDYF
mbed_official 76:aeb1df146756 150 #define PWR_FLAG_VOS PWR_CSR_VOSF
mbed_official 76:aeb1df146756 151 #define PWR_FLAG_REGLP PWR_CSR_REGLPF
mbed_official 76:aeb1df146756 152
mbed_official 76:aeb1df146756 153 #define IS_PWR_GET_FLAG(FLAG) (((FLAG) == PWR_FLAG_WU) || ((FLAG) == PWR_FLAG_SB) || \
mbed_official 76:aeb1df146756 154 ((FLAG) == PWR_FLAG_PVDO) || ((FLAG) == PWR_FLAG_VREFINTRDY) || \
mbed_official 76:aeb1df146756 155 ((FLAG) == PWR_FLAG_VOS) || ((FLAG) == PWR_FLAG_REGLP))
mbed_official 76:aeb1df146756 156
mbed_official 76:aeb1df146756 157 #define IS_PWR_CLEAR_FLAG(FLAG) (((FLAG) == PWR_FLAG_WU) || ((FLAG) == PWR_FLAG_SB))
mbed_official 76:aeb1df146756 158 /**
mbed_official 76:aeb1df146756 159 * @}
mbed_official 76:aeb1df146756 160 */
mbed_official 76:aeb1df146756 161
mbed_official 76:aeb1df146756 162 /**
mbed_official 76:aeb1df146756 163 * @}
mbed_official 76:aeb1df146756 164 */
mbed_official 76:aeb1df146756 165
mbed_official 76:aeb1df146756 166 /* Exported macro ------------------------------------------------------------*/
mbed_official 76:aeb1df146756 167 /* Exported functions ------------------------------------------------------- */
mbed_official 76:aeb1df146756 168
mbed_official 76:aeb1df146756 169 /* Function used to set the PWR configuration to the default reset state ******/
mbed_official 76:aeb1df146756 170 void PWR_DeInit(void);
mbed_official 76:aeb1df146756 171
mbed_official 76:aeb1df146756 172 /* RTC Domain Access function *************************************************/
mbed_official 76:aeb1df146756 173 void PWR_RTCAccessCmd(FunctionalState NewState);
mbed_official 76:aeb1df146756 174
mbed_official 76:aeb1df146756 175 /* PVD configuration functions ************************************************/
mbed_official 76:aeb1df146756 176 void PWR_PVDLevelConfig(uint32_t PWR_PVDLevel);
mbed_official 76:aeb1df146756 177 void PWR_PVDCmd(FunctionalState NewState);
mbed_official 76:aeb1df146756 178
mbed_official 76:aeb1df146756 179 /* WakeUp pins configuration functions ****************************************/
mbed_official 76:aeb1df146756 180 void PWR_WakeUpPinCmd(uint32_t PWR_WakeUpPin, FunctionalState NewState);
mbed_official 76:aeb1df146756 181
mbed_official 76:aeb1df146756 182 /* Ultra Low Power mode configuration functions *******************************/
mbed_official 76:aeb1df146756 183 void PWR_FastWakeUpCmd(FunctionalState NewState);
mbed_official 76:aeb1df146756 184 void PWR_UltraLowPowerCmd(FunctionalState NewState);
mbed_official 76:aeb1df146756 185
mbed_official 76:aeb1df146756 186 /* Voltage Scaling configuration functions ************************************/
mbed_official 76:aeb1df146756 187 void PWR_VoltageScalingConfig(uint32_t PWR_VoltageScaling);
mbed_official 76:aeb1df146756 188
mbed_official 76:aeb1df146756 189 /* Low Power modes configuration functions ************************************/
mbed_official 76:aeb1df146756 190 void PWR_EnterLowPowerRunMode(FunctionalState NewState);
mbed_official 76:aeb1df146756 191 void PWR_EnterSleepMode(uint32_t PWR_Regulator, uint8_t PWR_SLEEPEntry);
mbed_official 76:aeb1df146756 192 void PWR_EnterSTOPMode(uint32_t PWR_Regulator, uint8_t PWR_STOPEntry);
mbed_official 76:aeb1df146756 193 void PWR_EnterSTANDBYMode(void);
mbed_official 76:aeb1df146756 194
mbed_official 76:aeb1df146756 195 /* Flags management functions *************************************************/
mbed_official 76:aeb1df146756 196 FlagStatus PWR_GetFlagStatus(uint32_t PWR_FLAG);
mbed_official 76:aeb1df146756 197 void PWR_ClearFlag(uint32_t PWR_FLAG);
mbed_official 76:aeb1df146756 198
mbed_official 76:aeb1df146756 199 #ifdef __cplusplus
mbed_official 76:aeb1df146756 200 }
mbed_official 76:aeb1df146756 201 #endif
mbed_official 76:aeb1df146756 202
mbed_official 76:aeb1df146756 203 #endif /* __STM32L1xx_PWR_H */
mbed_official 76:aeb1df146756 204
mbed_official 76:aeb1df146756 205 /**
mbed_official 76:aeb1df146756 206 * @}
mbed_official 76:aeb1df146756 207 */
mbed_official 76:aeb1df146756 208
mbed_official 76:aeb1df146756 209 /**
mbed_official 76:aeb1df146756 210 * @}
mbed_official 76:aeb1df146756 211 */
mbed_official 76:aeb1df146756 212
mbed_official 76:aeb1df146756 213 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/