mbed library sources

Fork of mbed-src by mbed official

Committer:
mbed_official
Date:
Fri Nov 07 08:15:08 2014 +0000
Revision:
392:2b59412bb664
Parent:
targets/cmsis/TARGET_STM/TARGET_NUCLEO_F030R8/stm32f0xx_hal_pwr_ex.h@340:28d1f895c6fe
Child:
441:d2c15dda23c1
Synchronized with git revision eec0be05cd92349bee83c65f9e1302b25b5badf4

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

Targets: STM32F0 - Factorisation of NUCLEO_F030R8/F072RB/F091RC cmsis folders

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 340:28d1f895c6fe 1 /**
mbed_official 340:28d1f895c6fe 2 ******************************************************************************
mbed_official 340:28d1f895c6fe 3 * @file stm32f0xx_hal_pwr_ex.h
mbed_official 340:28d1f895c6fe 4 * @author MCD Application Team
mbed_official 340:28d1f895c6fe 5 * @version V1.1.0
mbed_official 340:28d1f895c6fe 6 * @date 03-Oct-2014
mbed_official 340:28d1f895c6fe 7 * @brief Header file of PWR HAL Extension module.
mbed_official 340:28d1f895c6fe 8 ******************************************************************************
mbed_official 340:28d1f895c6fe 9 * @attention
mbed_official 340:28d1f895c6fe 10 *
mbed_official 340:28d1f895c6fe 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
mbed_official 340:28d1f895c6fe 12 *
mbed_official 340:28d1f895c6fe 13 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 340:28d1f895c6fe 14 * are permitted provided that the following conditions are met:
mbed_official 340:28d1f895c6fe 15 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 340:28d1f895c6fe 16 * this list of conditions and the following disclaimer.
mbed_official 340:28d1f895c6fe 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 340:28d1f895c6fe 18 * this list of conditions and the following disclaimer in the documentation
mbed_official 340:28d1f895c6fe 19 * and/or other materials provided with the distribution.
mbed_official 340:28d1f895c6fe 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 340:28d1f895c6fe 21 * may be used to endorse or promote products derived from this software
mbed_official 340:28d1f895c6fe 22 * without specific prior written permission.
mbed_official 340:28d1f895c6fe 23 *
mbed_official 340:28d1f895c6fe 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 340:28d1f895c6fe 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 340:28d1f895c6fe 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 340:28d1f895c6fe 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 340:28d1f895c6fe 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 340:28d1f895c6fe 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 340:28d1f895c6fe 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 340:28d1f895c6fe 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 340:28d1f895c6fe 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 340:28d1f895c6fe 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 340:28d1f895c6fe 34 *
mbed_official 340:28d1f895c6fe 35 ******************************************************************************
mbed_official 340:28d1f895c6fe 36 */
mbed_official 340:28d1f895c6fe 37
mbed_official 340:28d1f895c6fe 38 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 340:28d1f895c6fe 39 #ifndef __STM32F0xx_HAL_PWR_EX_H
mbed_official 340:28d1f895c6fe 40 #define __STM32F0xx_HAL_PWR_EX_H
mbed_official 340:28d1f895c6fe 41
mbed_official 340:28d1f895c6fe 42 #ifdef __cplusplus
mbed_official 340:28d1f895c6fe 43 extern "C" {
mbed_official 340:28d1f895c6fe 44 #endif
mbed_official 340:28d1f895c6fe 45
mbed_official 340:28d1f895c6fe 46 /* Includes ------------------------------------------------------------------*/
mbed_official 340:28d1f895c6fe 47 #include "stm32f0xx_hal_def.h"
mbed_official 340:28d1f895c6fe 48
mbed_official 340:28d1f895c6fe 49 /** @addtogroup STM32F0xx_HAL_Driver
mbed_official 340:28d1f895c6fe 50 * @{
mbed_official 340:28d1f895c6fe 51 */
mbed_official 340:28d1f895c6fe 52
mbed_official 340:28d1f895c6fe 53 /** @addtogroup PWREx
mbed_official 340:28d1f895c6fe 54 * @{
mbed_official 340:28d1f895c6fe 55 */
mbed_official 340:28d1f895c6fe 56
mbed_official 340:28d1f895c6fe 57 /* Exported types ------------------------------------------------------------*/
mbed_official 340:28d1f895c6fe 58
mbed_official 340:28d1f895c6fe 59 /** @defgroup PWREx_Exported_Types PWREx Exported Types
mbed_official 340:28d1f895c6fe 60 * @{
mbed_official 340:28d1f895c6fe 61 */
mbed_official 340:28d1f895c6fe 62
mbed_official 340:28d1f895c6fe 63 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 64 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 65 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 66
mbed_official 340:28d1f895c6fe 67 /**
mbed_official 340:28d1f895c6fe 68 * @brief PWR PVD configuration structure definition
mbed_official 340:28d1f895c6fe 69 */
mbed_official 340:28d1f895c6fe 70 typedef struct
mbed_official 340:28d1f895c6fe 71 {
mbed_official 340:28d1f895c6fe 72 uint32_t PVDLevel; /*!< PVDLevel: Specifies the PVD detection level
mbed_official 340:28d1f895c6fe 73 This parameter can be a value of @ref PWREx_PVD_detection_level */
mbed_official 340:28d1f895c6fe 74
mbed_official 340:28d1f895c6fe 75 uint32_t Mode; /*!< Mode: Specifies the operating mode for the selected pins.
mbed_official 340:28d1f895c6fe 76 This parameter can be a value of @ref PWREx_PVD_Mode */
mbed_official 340:28d1f895c6fe 77 }PWR_PVDTypeDef;
mbed_official 340:28d1f895c6fe 78
mbed_official 340:28d1f895c6fe 79 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 80 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 81 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 82 /**
mbed_official 340:28d1f895c6fe 83 * @}
mbed_official 340:28d1f895c6fe 84 */
mbed_official 340:28d1f895c6fe 85 /* Exported constants --------------------------------------------------------*/
mbed_official 340:28d1f895c6fe 86
mbed_official 340:28d1f895c6fe 87 /** @defgroup PWREx_Exported_Constants PWREx Exported Constants
mbed_official 340:28d1f895c6fe 88 * @{
mbed_official 340:28d1f895c6fe 89 */
mbed_official 340:28d1f895c6fe 90
mbed_official 340:28d1f895c6fe 91
mbed_official 340:28d1f895c6fe 92 /** @defgroup PWREx_WakeUp_Pins PWREx Wakeup Pins
mbed_official 340:28d1f895c6fe 93 * @{
mbed_official 340:28d1f895c6fe 94 */
mbed_official 340:28d1f895c6fe 95 #if defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 96 defined (STM32F091xC) || defined (STM32F098xx)
mbed_official 340:28d1f895c6fe 97 #define PWR_WAKEUP_PIN1 ((uint32_t)0x00)
mbed_official 340:28d1f895c6fe 98 #define PWR_WAKEUP_PIN2 ((uint32_t)0x01)
mbed_official 340:28d1f895c6fe 99 #define PWR_WAKEUP_PIN3 ((uint32_t)0x02)
mbed_official 340:28d1f895c6fe 100 #define PWR_WAKEUP_PIN4 ((uint32_t)0x03)
mbed_official 340:28d1f895c6fe 101 #define PWR_WAKEUP_PIN5 ((uint32_t)0x04)
mbed_official 340:28d1f895c6fe 102 #define PWR_WAKEUP_PIN6 ((uint32_t)0x05)
mbed_official 340:28d1f895c6fe 103 #define PWR_WAKEUP_PIN7 ((uint32_t)0x06)
mbed_official 340:28d1f895c6fe 104 #define PWR_WAKEUP_PIN8 ((uint32_t)0x07)
mbed_official 340:28d1f895c6fe 105
mbed_official 340:28d1f895c6fe 106 #define IS_PWR_WAKEUP_PIN(PIN) (((PIN) == PWR_WAKEUP_PIN1) || \
mbed_official 340:28d1f895c6fe 107 ((PIN) == PWR_WAKEUP_PIN2) || \
mbed_official 340:28d1f895c6fe 108 ((PIN) == PWR_WAKEUP_PIN3) || \
mbed_official 340:28d1f895c6fe 109 ((PIN) == PWR_WAKEUP_PIN4) || \
mbed_official 340:28d1f895c6fe 110 ((PIN) == PWR_WAKEUP_PIN5) || \
mbed_official 340:28d1f895c6fe 111 ((PIN) == PWR_WAKEUP_PIN6) || \
mbed_official 340:28d1f895c6fe 112 ((PIN) == PWR_WAKEUP_PIN7) || \
mbed_official 340:28d1f895c6fe 113 ((PIN) == PWR_WAKEUP_PIN8))
mbed_official 340:28d1f895c6fe 114 #else
mbed_official 340:28d1f895c6fe 115 #define PWR_WAKEUP_PIN1 ((uint32_t)0x00)
mbed_official 340:28d1f895c6fe 116 #define PWR_WAKEUP_PIN2 ((uint32_t)0x01)
mbed_official 340:28d1f895c6fe 117
mbed_official 340:28d1f895c6fe 118 #define IS_PWR_WAKEUP_PIN(PIN) (((PIN) == PWR_WAKEUP_PIN1) || \
mbed_official 340:28d1f895c6fe 119 ((PIN) == PWR_WAKEUP_PIN2))
mbed_official 340:28d1f895c6fe 120 #endif /* defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || */
mbed_official 340:28d1f895c6fe 121 /* defined (STM32F091xC) || defined (STM32F098xx) */
mbed_official 340:28d1f895c6fe 122 /**
mbed_official 340:28d1f895c6fe 123 * @}
mbed_official 340:28d1f895c6fe 124 */
mbed_official 340:28d1f895c6fe 125
mbed_official 340:28d1f895c6fe 126 /** @defgroup PWREx_EXTI_Line PWREx EXTI Line
mbed_official 340:28d1f895c6fe 127 * @{
mbed_official 340:28d1f895c6fe 128 */
mbed_official 340:28d1f895c6fe 129 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 130 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 131 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 132
mbed_official 340:28d1f895c6fe 133 #define PWR_EXTI_LINE_PVD ((uint32_t)0x00010000) /*!< External interrupt line 16 Connected to the PVD EXTI Line */
mbed_official 340:28d1f895c6fe 134
mbed_official 340:28d1f895c6fe 135 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 136 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 137 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 138
mbed_official 340:28d1f895c6fe 139 #if defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 140 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 141 defined (STM32F091xC) || defined (STM32F098xx)
mbed_official 340:28d1f895c6fe 142
mbed_official 340:28d1f895c6fe 143 #define PWR_EXTI_LINE_VDDIO2 ((uint32_t)0x80000000) /*!< External interrupt line 31 Connected to the Vddio2 Monitor EXTI Line */
mbed_official 340:28d1f895c6fe 144
mbed_official 340:28d1f895c6fe 145 #endif /* defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 146 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 147 defined (STM32F091xC) || defined (STM32F098xx) */
mbed_official 340:28d1f895c6fe 148 /**
mbed_official 340:28d1f895c6fe 149 * @}
mbed_official 340:28d1f895c6fe 150 */
mbed_official 340:28d1f895c6fe 151
mbed_official 340:28d1f895c6fe 152 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 153 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 154 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 155 /** @defgroup PWREx_PVD_detection_level PWREx PVD detection level
mbed_official 340:28d1f895c6fe 156 * @{
mbed_official 340:28d1f895c6fe 157 */
mbed_official 340:28d1f895c6fe 158 #define PWR_PVDLEVEL_0 PWR_CR_PLS_LEV0
mbed_official 340:28d1f895c6fe 159 #define PWR_PVDLEVEL_1 PWR_CR_PLS_LEV1
mbed_official 340:28d1f895c6fe 160 #define PWR_PVDLEVEL_2 PWR_CR_PLS_LEV2
mbed_official 340:28d1f895c6fe 161 #define PWR_PVDLEVEL_3 PWR_CR_PLS_LEV3
mbed_official 340:28d1f895c6fe 162 #define PWR_PVDLEVEL_4 PWR_CR_PLS_LEV4
mbed_official 340:28d1f895c6fe 163 #define PWR_PVDLEVEL_5 PWR_CR_PLS_LEV5
mbed_official 340:28d1f895c6fe 164 #define PWR_PVDLEVEL_6 PWR_CR_PLS_LEV6
mbed_official 340:28d1f895c6fe 165 #define PWR_PVDLEVEL_7 PWR_CR_PLS_LEV7
mbed_official 340:28d1f895c6fe 166 #define IS_PWR_PVD_LEVEL(LEVEL) (((LEVEL) == PWR_PVDLEVEL_0) || ((LEVEL) == PWR_PVDLEVEL_1)|| \
mbed_official 340:28d1f895c6fe 167 ((LEVEL) == PWR_PVDLEVEL_2) || ((LEVEL) == PWR_PVDLEVEL_3)|| \
mbed_official 340:28d1f895c6fe 168 ((LEVEL) == PWR_PVDLEVEL_4) || ((LEVEL) == PWR_PVDLEVEL_5)|| \
mbed_official 340:28d1f895c6fe 169 ((LEVEL) == PWR_PVDLEVEL_6) || ((LEVEL) == PWR_PVDLEVEL_7))
mbed_official 340:28d1f895c6fe 170 /**
mbed_official 340:28d1f895c6fe 171 * @}
mbed_official 340:28d1f895c6fe 172 */
mbed_official 340:28d1f895c6fe 173
mbed_official 340:28d1f895c6fe 174 /** @defgroup PWREx_PVD_Mode PWREx PVD Mode
mbed_official 340:28d1f895c6fe 175 * @{
mbed_official 340:28d1f895c6fe 176 */
mbed_official 340:28d1f895c6fe 177 #define PWR_PVD_MODE_NORMAL ((uint32_t)0x00000000) /*!< basic mode is used */
mbed_official 340:28d1f895c6fe 178 #define PWR_PVD_MODE_IT_RISING ((uint32_t)0x00010001) /*!< External Interrupt Mode with Rising edge trigger detection */
mbed_official 340:28d1f895c6fe 179 #define PWR_PVD_MODE_IT_FALLING ((uint32_t)0x00010002) /*!< External Interrupt Mode with Falling edge trigger detection */
mbed_official 340:28d1f895c6fe 180 #define PWR_PVD_MODE_IT_RISING_FALLING ((uint32_t)0x00010003) /*!< External Interrupt Mode with Rising/Falling edge trigger detection */
mbed_official 340:28d1f895c6fe 181 #define PWR_PVD_MODE_EVENT_RISING ((uint32_t)0x00020001) /*!< Event Mode with Rising edge trigger detection */
mbed_official 340:28d1f895c6fe 182 #define PWR_PVD_MODE_EVENT_FALLING ((uint32_t)0x00020002) /*!< Event Mode with Falling edge trigger detection */
mbed_official 340:28d1f895c6fe 183 #define PWR_PVD_MODE_EVENT_RISING_FALLING ((uint32_t)0x00020003) /*!< Event Mode with Rising/Falling edge trigger detection */
mbed_official 340:28d1f895c6fe 184
mbed_official 340:28d1f895c6fe 185 #define IS_PWR_PVD_MODE(MODE) (((MODE) == PWR_PVD_MODE_IT_RISING)|| ((MODE) == PWR_PVD_MODE_IT_FALLING) || \
mbed_official 340:28d1f895c6fe 186 ((MODE) == PWR_PVD_MODE_IT_RISING_FALLING) || ((MODE) == PWR_PVD_MODE_EVENT_RISING) || \
mbed_official 340:28d1f895c6fe 187 ((MODE) == PWR_PVD_MODE_EVENT_FALLING) || ((MODE) == PWR_PVD_MODE_EVENT_RISING_FALLING) || \
mbed_official 340:28d1f895c6fe 188 ((MODE) == PWR_PVD_MODE_NORMAL))
mbed_official 340:28d1f895c6fe 189 /**
mbed_official 340:28d1f895c6fe 190 * @}
mbed_official 340:28d1f895c6fe 191 */
mbed_official 340:28d1f895c6fe 192 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 193 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 194 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 195
mbed_official 340:28d1f895c6fe 196 /** @defgroup PWREx_Flag PWREx Flag
mbed_official 340:28d1f895c6fe 197 * @{
mbed_official 340:28d1f895c6fe 198 */
mbed_official 340:28d1f895c6fe 199 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 200 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 201 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 202
mbed_official 340:28d1f895c6fe 203 #define PWR_FLAG_WU PWR_CSR_WUF
mbed_official 340:28d1f895c6fe 204 #define PWR_FLAG_SB PWR_CSR_SBF
mbed_official 340:28d1f895c6fe 205 #define PWR_FLAG_PVDO PWR_CSR_PVDO
mbed_official 340:28d1f895c6fe 206 #define PWR_FLAG_VREFINTRDY PWR_CSR_VREFINTRDYF
mbed_official 340:28d1f895c6fe 207 #else
mbed_official 340:28d1f895c6fe 208 #define PWR_FLAG_WU PWR_CSR_WUF
mbed_official 340:28d1f895c6fe 209 #define PWR_FLAG_SB PWR_CSR_SBF
mbed_official 340:28d1f895c6fe 210
mbed_official 340:28d1f895c6fe 211 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 212 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 213 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 214 /**
mbed_official 340:28d1f895c6fe 215 * @}
mbed_official 340:28d1f895c6fe 216 */
mbed_official 340:28d1f895c6fe 217
mbed_official 340:28d1f895c6fe 218 /**
mbed_official 340:28d1f895c6fe 219 * @}
mbed_official 340:28d1f895c6fe 220 */
mbed_official 340:28d1f895c6fe 221
mbed_official 340:28d1f895c6fe 222 /* Exported macro ------------------------------------------------------------*/
mbed_official 340:28d1f895c6fe 223 /** @defgroup PWREx_Exported_Macros PWREx Exported Macros
mbed_official 340:28d1f895c6fe 224 * @{
mbed_official 340:28d1f895c6fe 225 */
mbed_official 340:28d1f895c6fe 226 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 227 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 228 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 229 /**
mbed_official 340:28d1f895c6fe 230 * @brief Enable interrupt on PVD Exti Line 16.
mbed_official 340:28d1f895c6fe 231 * @retval None.
mbed_official 340:28d1f895c6fe 232 */
mbed_official 340:28d1f895c6fe 233 #define __HAL_PWR_PVD_EXTI_ENABLE_IT() (EXTI->IMR |= (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 234
mbed_official 340:28d1f895c6fe 235 /**
mbed_official 340:28d1f895c6fe 236 * @brief Disable interrupt on PVD Exti Line 16.
mbed_official 340:28d1f895c6fe 237 * @retval None.
mbed_official 340:28d1f895c6fe 238 */
mbed_official 340:28d1f895c6fe 239 #define __HAL_PWR_PVD_EXTI_DISABLE_IT() (EXTI->IMR &= ~(PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 240
mbed_official 340:28d1f895c6fe 241 /**
mbed_official 340:28d1f895c6fe 242 * @brief Enable event on PVD Exti Line 16.
mbed_official 340:28d1f895c6fe 243 * @retval None.
mbed_official 340:28d1f895c6fe 244 */
mbed_official 340:28d1f895c6fe 245 #define __HAL_PWR_PVD_EXTI_ENABLE_EVENT() (EXTI->EMR |= (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 246
mbed_official 340:28d1f895c6fe 247 /**
mbed_official 340:28d1f895c6fe 248 * @brief Disable event on PVD Exti Line 16.
mbed_official 340:28d1f895c6fe 249 * @retval None.
mbed_official 340:28d1f895c6fe 250 */
mbed_official 340:28d1f895c6fe 251 #define __HAL_PWR_PVD_EXTI_DISABLE_EVENT() (EXTI->EMR &= ~(PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 252
mbed_official 340:28d1f895c6fe 253 /**
mbed_official 340:28d1f895c6fe 254 * @brief PVD EXTI line configuration: clear falling edge and rising edge trigger.
mbed_official 340:28d1f895c6fe 255 * @retval None.
mbed_official 340:28d1f895c6fe 256 */
mbed_official 340:28d1f895c6fe 257 #define __HAL_PWR_PVD_EXTI_CLEAR_EGDE_TRIGGER() EXTI->FTSR &= ~(PWR_EXTI_LINE_PVD); \
mbed_official 340:28d1f895c6fe 258 EXTI->RTSR &= ~(PWR_EXTI_LINE_PVD)
mbed_official 340:28d1f895c6fe 259
mbed_official 340:28d1f895c6fe 260 /**
mbed_official 340:28d1f895c6fe 261 * @brief PVD EXTI line configuration: set falling edge trigger.
mbed_official 340:28d1f895c6fe 262 * @retval None.
mbed_official 340:28d1f895c6fe 263 */
mbed_official 340:28d1f895c6fe 264 #define __HAL_PWR_PVD_EXTI_SET_FALLING_EGDE_TRIGGER() EXTI->FTSR |= (PWR_EXTI_LINE_PVD)
mbed_official 340:28d1f895c6fe 265
mbed_official 340:28d1f895c6fe 266 /**
mbed_official 340:28d1f895c6fe 267 * @brief PVD EXTI line configuration: set rising edge trigger.
mbed_official 340:28d1f895c6fe 268 * @retval None.
mbed_official 340:28d1f895c6fe 269 */
mbed_official 340:28d1f895c6fe 270 #define __HAL_PWR_PVD_EXTI_SET_RISING_EDGE_TRIGGER() EXTI->RTSR |= (PWR_EXTI_LINE_PVD)
mbed_official 340:28d1f895c6fe 271
mbed_official 340:28d1f895c6fe 272 /**
mbed_official 340:28d1f895c6fe 273 * @brief Check whether the specified PVD EXTI interrupt flag is set or not.
mbed_official 340:28d1f895c6fe 274 * @retval EXTI PVD Line Status.
mbed_official 340:28d1f895c6fe 275 */
mbed_official 340:28d1f895c6fe 276 #define __HAL_PWR_PVD_EXTI_GET_FLAG() (EXTI->PR & (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 277
mbed_official 340:28d1f895c6fe 278 /**
mbed_official 340:28d1f895c6fe 279 * @brief Clear the PVD EXTI flag.
mbed_official 340:28d1f895c6fe 280 * @retval None.
mbed_official 340:28d1f895c6fe 281 */
mbed_official 340:28d1f895c6fe 282 #define __HAL_PWR_PVD_EXTI_CLEAR_FLAG() (EXTI->PR = (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 283
mbed_official 340:28d1f895c6fe 284 /**
mbed_official 340:28d1f895c6fe 285 * @brief Generate a Software interrupt on selected EXTI line.
mbed_official 340:28d1f895c6fe 286 * @retval None.
mbed_official 340:28d1f895c6fe 287 */
mbed_official 340:28d1f895c6fe 288 #define __HAL_PWR_PVD_EXTI_GENERATE_SWIT() (EXTI->SWIER |= (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 289
mbed_official 340:28d1f895c6fe 290 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 291 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 292 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 293
mbed_official 340:28d1f895c6fe 294
mbed_official 340:28d1f895c6fe 295 #if defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 296 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 297 defined (STM32F091xC) || defined (STM32F098xx)
mbed_official 340:28d1f895c6fe 298 /**
mbed_official 340:28d1f895c6fe 299 * @brief Enable interrupt on Vddio2 Monitor Exti Line 31.
mbed_official 340:28d1f895c6fe 300 * @retval None.
mbed_official 340:28d1f895c6fe 301 */
mbed_official 340:28d1f895c6fe 302 #define __HAL_PWR_VDDIO2_EXTI_ENABLE_IT() (EXTI->IMR |= (PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 303
mbed_official 340:28d1f895c6fe 304 /**
mbed_official 340:28d1f895c6fe 305 * @brief Disable interrupt on Vddio2 Monitor Exti Line 31.
mbed_official 340:28d1f895c6fe 306 * @retval None.
mbed_official 340:28d1f895c6fe 307 */
mbed_official 340:28d1f895c6fe 308 #define __HAL_PWR_VDDIO2_EXTI_DISABLE_IT() (EXTI->IMR &= ~(PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 309
mbed_official 340:28d1f895c6fe 310 /**
mbed_official 340:28d1f895c6fe 311 * @brief Vddio2 Monitor EXTI line configuration: clear falling edge and rising edge trigger.
mbed_official 340:28d1f895c6fe 312 * @retval None.
mbed_official 340:28d1f895c6fe 313 */
mbed_official 340:28d1f895c6fe 314 #define __HAL_PWR_VDDIO2_EXTI_CLEAR_EGDE_TRIGGER() EXTI->FTSR &= ~(PWR_EXTI_LINE_VDDIO2); \
mbed_official 340:28d1f895c6fe 315 EXTI->RTSR &= ~(PWR_EXTI_LINE_VDDIO2)
mbed_official 340:28d1f895c6fe 316
mbed_official 340:28d1f895c6fe 317 /**
mbed_official 340:28d1f895c6fe 318 * @brief Vddio2 Monitor EXTI line configuration: set falling edge trigger.
mbed_official 340:28d1f895c6fe 319 * @retval None.
mbed_official 340:28d1f895c6fe 320 */
mbed_official 340:28d1f895c6fe 321 #define __HAL_PWR_VDDIO2_EXTI_SET_FALLING_EGDE_TRIGGER() EXTI->FTSR |= (PWR_EXTI_LINE_VDDIO2)
mbed_official 340:28d1f895c6fe 322
mbed_official 340:28d1f895c6fe 323 /**
mbed_official 340:28d1f895c6fe 324 * @brief Check whether the specified VDDIO2 monitor EXTI interrupt flag is set or not.
mbed_official 340:28d1f895c6fe 325 * @retval EXTI VDDIO2 Monitor Line Status.
mbed_official 340:28d1f895c6fe 326 */
mbed_official 340:28d1f895c6fe 327 #define __HAL_PWR_VDDIO2_EXTI_GET_FLAG() (EXTI->PR & (PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 328
mbed_official 340:28d1f895c6fe 329 /**
mbed_official 340:28d1f895c6fe 330 * @brief Clear the VDDIO2 Monitor EXTI flag.
mbed_official 340:28d1f895c6fe 331 * @retval None.
mbed_official 340:28d1f895c6fe 332 */
mbed_official 340:28d1f895c6fe 333 #define __HAL_PWR_VDDIO2_EXTI_CLEAR_FLAG() (EXTI->PR = (PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 334
mbed_official 340:28d1f895c6fe 335 /**
mbed_official 340:28d1f895c6fe 336 * @brief Generate a Software interrupt on selected EXTI line.
mbed_official 340:28d1f895c6fe 337 * @retval None.
mbed_official 340:28d1f895c6fe 338 */
mbed_official 340:28d1f895c6fe 339 #define __HAL_PWR_VDDIO2_EXTI_GENERATE_SWIT() (EXTI->SWIER |= (PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 340
mbed_official 340:28d1f895c6fe 341
mbed_official 340:28d1f895c6fe 342 #endif /* defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 343 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 344 defined (STM32F091xC) || defined (STM32F098xx) */
mbed_official 340:28d1f895c6fe 345
mbed_official 340:28d1f895c6fe 346 /**
mbed_official 340:28d1f895c6fe 347 * @}
mbed_official 340:28d1f895c6fe 348 */
mbed_official 340:28d1f895c6fe 349
mbed_official 340:28d1f895c6fe 350 /* Exported functions --------------------------------------------------------*/
mbed_official 340:28d1f895c6fe 351
mbed_official 340:28d1f895c6fe 352 /** @addtogroup PWREx_Exported_Functions PWREx Exported Functions
mbed_official 340:28d1f895c6fe 353 * @{
mbed_official 340:28d1f895c6fe 354 */
mbed_official 340:28d1f895c6fe 355
mbed_official 340:28d1f895c6fe 356 /** @addtogroup PWREx_Exported_Functions_Group1
mbed_official 340:28d1f895c6fe 357 * @{
mbed_official 340:28d1f895c6fe 358 */
mbed_official 340:28d1f895c6fe 359 /* I/O operation functions ***************************************************/
mbed_official 340:28d1f895c6fe 360 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 361 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 362 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 363 void HAL_PWR_PVD_IRQHandler(void);
mbed_official 340:28d1f895c6fe 364 void HAL_PWR_PVDCallback(void);
mbed_official 340:28d1f895c6fe 365 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 366 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 367 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 368
mbed_official 340:28d1f895c6fe 369 #if defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 370 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 371 defined (STM32F091xC) || defined (STM32F098xx)
mbed_official 340:28d1f895c6fe 372 void HAL_PWR_Vddio2Monitor_IRQHandler(void);
mbed_official 340:28d1f895c6fe 373 void HAL_PWR_Vddio2MonitorCallback(void);
mbed_official 340:28d1f895c6fe 374 #endif /* defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 375 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 376 defined (STM32F091xC) || defined (STM32F098xx) */
mbed_official 340:28d1f895c6fe 377
mbed_official 340:28d1f895c6fe 378 /* Peripheral Control functions **********************************************/
mbed_official 340:28d1f895c6fe 379 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 380 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 381 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 382 void HAL_PWR_PVDConfig(PWR_PVDTypeDef *sConfigPVD);
mbed_official 340:28d1f895c6fe 383 void HAL_PWR_EnablePVD(void);
mbed_official 340:28d1f895c6fe 384 void HAL_PWR_DisablePVD(void);
mbed_official 340:28d1f895c6fe 385 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 386 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 387 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 388
mbed_official 340:28d1f895c6fe 389 #if defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 390 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 391 defined (STM32F091xC) || defined (STM32F098xx)
mbed_official 340:28d1f895c6fe 392 void HAL_PWR_EnableVddio2Monitor(void);
mbed_official 340:28d1f895c6fe 393 void HAL_PWR_DisableVddio2Monitor(void);
mbed_official 340:28d1f895c6fe 394 #endif /* defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 395 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 396 defined (STM32F091xC) || defined (STM32F098xx) */
mbed_official 340:28d1f895c6fe 397
mbed_official 340:28d1f895c6fe 398 /**
mbed_official 340:28d1f895c6fe 399 * @}
mbed_official 340:28d1f895c6fe 400 */
mbed_official 340:28d1f895c6fe 401
mbed_official 340:28d1f895c6fe 402 /**
mbed_official 340:28d1f895c6fe 403 * @}
mbed_official 340:28d1f895c6fe 404 */
mbed_official 340:28d1f895c6fe 405
mbed_official 340:28d1f895c6fe 406 /**
mbed_official 340:28d1f895c6fe 407 * @}
mbed_official 340:28d1f895c6fe 408 */
mbed_official 340:28d1f895c6fe 409
mbed_official 340:28d1f895c6fe 410 /**
mbed_official 340:28d1f895c6fe 411 * @}
mbed_official 340:28d1f895c6fe 412 */
mbed_official 340:28d1f895c6fe 413
mbed_official 340:28d1f895c6fe 414 #ifdef __cplusplus
mbed_official 340:28d1f895c6fe 415 }
mbed_official 340:28d1f895c6fe 416 #endif
mbed_official 340:28d1f895c6fe 417
mbed_official 340:28d1f895c6fe 418 #endif /* __STM32F0xx_HAL_PWR_EX_H */
mbed_official 340:28d1f895c6fe 419
mbed_official 340:28d1f895c6fe 420 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
mbed_official 340:28d1f895c6fe 421