mbed library sources

Fork of mbed-src by mbed official

Committer:
mbed_official
Date:
Tue Jan 06 16:15:36 2015 +0000
Revision:
441:d2c15dda23c1
Parent:
392:2b59412bb664
Synchronized with git revision 245a60b29caabb42eabdd19658eeac7c3f68313b

Full URL: https://github.com/mbedmicro/mbed/commit/245a60b29caabb42eabdd19658eeac7c3f68313b/

NUCLEO_F072RB/F091RC - adding target to rtos lib and exporter for coide and gcc_arm

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 441:d2c15dda23c1 5 * @version V1.2.0
mbed_official 441:d2c15dda23c1 6 * @date 11-December-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 441:d2c15dda23c1 95 #if defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || defined (STM32F070xB) || \
mbed_official 441:d2c15dda23c1 96 defined (STM32F091xC) || defined (STM32F098xx) || defined (STM32F030xC)
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 441:d2c15dda23c1 120 #endif /* defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || defined (STM32F070xB) || */
mbed_official 441:d2c15dda23c1 121 /* defined (STM32F091xC) || defined (STM32F098xx) || defined (STM32F030xC) */
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 441:d2c15dda23c1 145 #endif /* defined (STM32F042x6) || defined (STM32F048xx) ||\
mbed_official 340:28d1f895c6fe 146 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 441:d2c15dda23c1 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 441:d2c15dda23c1 207 #elif defined (STM32F070x6) || defined (STM32F070xB) || defined (STM32F030xC)
mbed_official 441:d2c15dda23c1 208 #define PWR_FLAG_WU PWR_CSR_WUF
mbed_official 441:d2c15dda23c1 209 #define PWR_FLAG_SB PWR_CSR_SBF
mbed_official 441:d2c15dda23c1 210 #define PWR_FLAG_VREFINTRDY PWR_CSR_VREFINTRDYF
mbed_official 340:28d1f895c6fe 211 #else
mbed_official 340:28d1f895c6fe 212 #define PWR_FLAG_WU PWR_CSR_WUF
mbed_official 340:28d1f895c6fe 213 #define PWR_FLAG_SB PWR_CSR_SBF
mbed_official 340:28d1f895c6fe 214
mbed_official 340:28d1f895c6fe 215 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 216 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 217 /* defined (STM32F091xC) */
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 /**
mbed_official 340:28d1f895c6fe 223 * @}
mbed_official 340:28d1f895c6fe 224 */
mbed_official 340:28d1f895c6fe 225
mbed_official 340:28d1f895c6fe 226 /* Exported macro ------------------------------------------------------------*/
mbed_official 340:28d1f895c6fe 227 /** @defgroup PWREx_Exported_Macros PWREx Exported Macros
mbed_official 340:28d1f895c6fe 228 * @{
mbed_official 340:28d1f895c6fe 229 */
mbed_official 340:28d1f895c6fe 230 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 231 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 232 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 233 /**
mbed_official 340:28d1f895c6fe 234 * @brief Enable interrupt on PVD Exti Line 16.
mbed_official 340:28d1f895c6fe 235 * @retval None.
mbed_official 340:28d1f895c6fe 236 */
mbed_official 340:28d1f895c6fe 237 #define __HAL_PWR_PVD_EXTI_ENABLE_IT() (EXTI->IMR |= (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 238
mbed_official 340:28d1f895c6fe 239 /**
mbed_official 340:28d1f895c6fe 240 * @brief Disable interrupt on PVD Exti Line 16.
mbed_official 340:28d1f895c6fe 241 * @retval None.
mbed_official 340:28d1f895c6fe 242 */
mbed_official 340:28d1f895c6fe 243 #define __HAL_PWR_PVD_EXTI_DISABLE_IT() (EXTI->IMR &= ~(PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 244
mbed_official 340:28d1f895c6fe 245 /**
mbed_official 340:28d1f895c6fe 246 * @brief Enable event on PVD Exti Line 16.
mbed_official 340:28d1f895c6fe 247 * @retval None.
mbed_official 340:28d1f895c6fe 248 */
mbed_official 340:28d1f895c6fe 249 #define __HAL_PWR_PVD_EXTI_ENABLE_EVENT() (EXTI->EMR |= (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 250
mbed_official 340:28d1f895c6fe 251 /**
mbed_official 340:28d1f895c6fe 252 * @brief Disable event on PVD Exti Line 16.
mbed_official 340:28d1f895c6fe 253 * @retval None.
mbed_official 340:28d1f895c6fe 254 */
mbed_official 340:28d1f895c6fe 255 #define __HAL_PWR_PVD_EXTI_DISABLE_EVENT() (EXTI->EMR &= ~(PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 256
mbed_official 340:28d1f895c6fe 257 /**
mbed_official 340:28d1f895c6fe 258 * @brief PVD EXTI line configuration: clear falling edge and rising edge trigger.
mbed_official 340:28d1f895c6fe 259 * @retval None.
mbed_official 340:28d1f895c6fe 260 */
mbed_official 340:28d1f895c6fe 261 #define __HAL_PWR_PVD_EXTI_CLEAR_EGDE_TRIGGER() EXTI->FTSR &= ~(PWR_EXTI_LINE_PVD); \
mbed_official 340:28d1f895c6fe 262 EXTI->RTSR &= ~(PWR_EXTI_LINE_PVD)
mbed_official 340:28d1f895c6fe 263
mbed_official 340:28d1f895c6fe 264 /**
mbed_official 340:28d1f895c6fe 265 * @brief PVD EXTI line configuration: set falling edge trigger.
mbed_official 340:28d1f895c6fe 266 * @retval None.
mbed_official 340:28d1f895c6fe 267 */
mbed_official 340:28d1f895c6fe 268 #define __HAL_PWR_PVD_EXTI_SET_FALLING_EGDE_TRIGGER() EXTI->FTSR |= (PWR_EXTI_LINE_PVD)
mbed_official 340:28d1f895c6fe 269
mbed_official 340:28d1f895c6fe 270 /**
mbed_official 340:28d1f895c6fe 271 * @brief PVD EXTI line configuration: set rising edge trigger.
mbed_official 340:28d1f895c6fe 272 * @retval None.
mbed_official 340:28d1f895c6fe 273 */
mbed_official 340:28d1f895c6fe 274 #define __HAL_PWR_PVD_EXTI_SET_RISING_EDGE_TRIGGER() EXTI->RTSR |= (PWR_EXTI_LINE_PVD)
mbed_official 340:28d1f895c6fe 275
mbed_official 340:28d1f895c6fe 276 /**
mbed_official 340:28d1f895c6fe 277 * @brief Check whether the specified PVD EXTI interrupt flag is set or not.
mbed_official 340:28d1f895c6fe 278 * @retval EXTI PVD Line Status.
mbed_official 340:28d1f895c6fe 279 */
mbed_official 340:28d1f895c6fe 280 #define __HAL_PWR_PVD_EXTI_GET_FLAG() (EXTI->PR & (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 281
mbed_official 340:28d1f895c6fe 282 /**
mbed_official 340:28d1f895c6fe 283 * @brief Clear the PVD EXTI flag.
mbed_official 340:28d1f895c6fe 284 * @retval None.
mbed_official 340:28d1f895c6fe 285 */
mbed_official 340:28d1f895c6fe 286 #define __HAL_PWR_PVD_EXTI_CLEAR_FLAG() (EXTI->PR = (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 287
mbed_official 340:28d1f895c6fe 288 /**
mbed_official 340:28d1f895c6fe 289 * @brief Generate a Software interrupt on selected EXTI line.
mbed_official 340:28d1f895c6fe 290 * @retval None.
mbed_official 340:28d1f895c6fe 291 */
mbed_official 340:28d1f895c6fe 292 #define __HAL_PWR_PVD_EXTI_GENERATE_SWIT() (EXTI->SWIER |= (PWR_EXTI_LINE_PVD))
mbed_official 340:28d1f895c6fe 293
mbed_official 340:28d1f895c6fe 294 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 295 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 296 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 297
mbed_official 340:28d1f895c6fe 298
mbed_official 340:28d1f895c6fe 299 #if defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 300 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 301 defined (STM32F091xC) || defined (STM32F098xx)
mbed_official 340:28d1f895c6fe 302 /**
mbed_official 340:28d1f895c6fe 303 * @brief Enable interrupt on Vddio2 Monitor Exti Line 31.
mbed_official 340:28d1f895c6fe 304 * @retval None.
mbed_official 340:28d1f895c6fe 305 */
mbed_official 340:28d1f895c6fe 306 #define __HAL_PWR_VDDIO2_EXTI_ENABLE_IT() (EXTI->IMR |= (PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 307
mbed_official 340:28d1f895c6fe 308 /**
mbed_official 340:28d1f895c6fe 309 * @brief Disable interrupt on Vddio2 Monitor Exti Line 31.
mbed_official 340:28d1f895c6fe 310 * @retval None.
mbed_official 340:28d1f895c6fe 311 */
mbed_official 340:28d1f895c6fe 312 #define __HAL_PWR_VDDIO2_EXTI_DISABLE_IT() (EXTI->IMR &= ~(PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 313
mbed_official 340:28d1f895c6fe 314 /**
mbed_official 340:28d1f895c6fe 315 * @brief Vddio2 Monitor EXTI line configuration: clear falling edge and rising edge trigger.
mbed_official 340:28d1f895c6fe 316 * @retval None.
mbed_official 340:28d1f895c6fe 317 */
mbed_official 340:28d1f895c6fe 318 #define __HAL_PWR_VDDIO2_EXTI_CLEAR_EGDE_TRIGGER() EXTI->FTSR &= ~(PWR_EXTI_LINE_VDDIO2); \
mbed_official 340:28d1f895c6fe 319 EXTI->RTSR &= ~(PWR_EXTI_LINE_VDDIO2)
mbed_official 340:28d1f895c6fe 320
mbed_official 340:28d1f895c6fe 321 /**
mbed_official 340:28d1f895c6fe 322 * @brief Vddio2 Monitor EXTI line configuration: set falling edge trigger.
mbed_official 340:28d1f895c6fe 323 * @retval None.
mbed_official 340:28d1f895c6fe 324 */
mbed_official 340:28d1f895c6fe 325 #define __HAL_PWR_VDDIO2_EXTI_SET_FALLING_EGDE_TRIGGER() EXTI->FTSR |= (PWR_EXTI_LINE_VDDIO2)
mbed_official 340:28d1f895c6fe 326
mbed_official 340:28d1f895c6fe 327 /**
mbed_official 340:28d1f895c6fe 328 * @brief Check whether the specified VDDIO2 monitor EXTI interrupt flag is set or not.
mbed_official 340:28d1f895c6fe 329 * @retval EXTI VDDIO2 Monitor Line Status.
mbed_official 340:28d1f895c6fe 330 */
mbed_official 340:28d1f895c6fe 331 #define __HAL_PWR_VDDIO2_EXTI_GET_FLAG() (EXTI->PR & (PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 332
mbed_official 340:28d1f895c6fe 333 /**
mbed_official 340:28d1f895c6fe 334 * @brief Clear the VDDIO2 Monitor EXTI flag.
mbed_official 340:28d1f895c6fe 335 * @retval None.
mbed_official 340:28d1f895c6fe 336 */
mbed_official 340:28d1f895c6fe 337 #define __HAL_PWR_VDDIO2_EXTI_CLEAR_FLAG() (EXTI->PR = (PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 338
mbed_official 340:28d1f895c6fe 339 /**
mbed_official 340:28d1f895c6fe 340 * @brief Generate a Software interrupt on selected EXTI line.
mbed_official 340:28d1f895c6fe 341 * @retval None.
mbed_official 340:28d1f895c6fe 342 */
mbed_official 340:28d1f895c6fe 343 #define __HAL_PWR_VDDIO2_EXTI_GENERATE_SWIT() (EXTI->SWIER |= (PWR_EXTI_LINE_VDDIO2))
mbed_official 340:28d1f895c6fe 344
mbed_official 340:28d1f895c6fe 345
mbed_official 441:d2c15dda23c1 346 #endif /* defined (STM32F042x6) || defined (STM32F048xx) ||\
mbed_official 340:28d1f895c6fe 347 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 348 defined (STM32F091xC) || defined (STM32F098xx) */
mbed_official 340:28d1f895c6fe 349
mbed_official 340:28d1f895c6fe 350 /**
mbed_official 340:28d1f895c6fe 351 * @}
mbed_official 340:28d1f895c6fe 352 */
mbed_official 340:28d1f895c6fe 353
mbed_official 340:28d1f895c6fe 354 /* Exported functions --------------------------------------------------------*/
mbed_official 340:28d1f895c6fe 355
mbed_official 340:28d1f895c6fe 356 /** @addtogroup PWREx_Exported_Functions PWREx Exported Functions
mbed_official 340:28d1f895c6fe 357 * @{
mbed_official 340:28d1f895c6fe 358 */
mbed_official 340:28d1f895c6fe 359
mbed_official 340:28d1f895c6fe 360 /** @addtogroup PWREx_Exported_Functions_Group1
mbed_official 340:28d1f895c6fe 361 * @{
mbed_official 340:28d1f895c6fe 362 */
mbed_official 340:28d1f895c6fe 363 /* I/O operation functions ***************************************************/
mbed_official 340:28d1f895c6fe 364 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 365 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 366 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 367 void HAL_PWR_PVD_IRQHandler(void);
mbed_official 340:28d1f895c6fe 368 void HAL_PWR_PVDCallback(void);
mbed_official 340:28d1f895c6fe 369 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 370 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 371 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 372
mbed_official 340:28d1f895c6fe 373 #if defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 374 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 375 defined (STM32F091xC) || defined (STM32F098xx)
mbed_official 340:28d1f895c6fe 376 void HAL_PWR_Vddio2Monitor_IRQHandler(void);
mbed_official 340:28d1f895c6fe 377 void HAL_PWR_Vddio2MonitorCallback(void);
mbed_official 340:28d1f895c6fe 378 #endif /* defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 379 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 380 defined (STM32F091xC) || defined (STM32F098xx) */
mbed_official 340:28d1f895c6fe 381
mbed_official 340:28d1f895c6fe 382 /* Peripheral Control functions **********************************************/
mbed_official 340:28d1f895c6fe 383 #if defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || \
mbed_official 340:28d1f895c6fe 384 defined (STM32F071xB) || defined (STM32F072xB) || \
mbed_official 340:28d1f895c6fe 385 defined (STM32F091xC)
mbed_official 340:28d1f895c6fe 386 void HAL_PWR_PVDConfig(PWR_PVDTypeDef *sConfigPVD);
mbed_official 340:28d1f895c6fe 387 void HAL_PWR_EnablePVD(void);
mbed_official 340:28d1f895c6fe 388 void HAL_PWR_DisablePVD(void);
mbed_official 340:28d1f895c6fe 389 #endif /* defined (STM32F031x6) || defined (STM32F042x6) || defined (STM32F051x8) || */
mbed_official 340:28d1f895c6fe 390 /* defined (STM32F071xB) || defined (STM32F072xB) || */
mbed_official 340:28d1f895c6fe 391 /* defined (STM32F091xC) */
mbed_official 340:28d1f895c6fe 392
mbed_official 340:28d1f895c6fe 393 #if defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 394 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 395 defined (STM32F091xC) || defined (STM32F098xx)
mbed_official 340:28d1f895c6fe 396 void HAL_PWR_EnableVddio2Monitor(void);
mbed_official 340:28d1f895c6fe 397 void HAL_PWR_DisableVddio2Monitor(void);
mbed_official 340:28d1f895c6fe 398 #endif /* defined (STM32F042x6) || defined (STM32F048xx) || \
mbed_official 340:28d1f895c6fe 399 defined (STM32F071xB) || defined (STM32F072xB) || defined (STM32F078xx) || \
mbed_official 340:28d1f895c6fe 400 defined (STM32F091xC) || defined (STM32F098xx) */
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 /**
mbed_official 340:28d1f895c6fe 415 * @}
mbed_official 340:28d1f895c6fe 416 */
mbed_official 340:28d1f895c6fe 417
mbed_official 340:28d1f895c6fe 418 #ifdef __cplusplus
mbed_official 340:28d1f895c6fe 419 }
mbed_official 340:28d1f895c6fe 420 #endif
mbed_official 340:28d1f895c6fe 421
mbed_official 340:28d1f895c6fe 422 #endif /* __STM32F0xx_HAL_PWR_EX_H */
mbed_official 340:28d1f895c6fe 423
mbed_official 340:28d1f895c6fe 424 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
mbed_official 340:28d1f895c6fe 425