The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
AnnaBridge
Date:
Fri May 26 12:30:20 2017 +0100
Revision:
143:86740a56073b
Parent:
135:176b8275d35d
Release 143 of the mbed library.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 126:abea610beb85 1 /**
AnnaBridge 126:abea610beb85 2 ******************************************************************************
AnnaBridge 126:abea610beb85 3 * @file stm32f3xx_hal_pwr_ex.h
AnnaBridge 126:abea610beb85 4 * @author MCD Application Team
<> 135:176b8275d35d 5 * @version V1.4.0
<> 135:176b8275d35d 6 * @date 16-December-2016
AnnaBridge 126:abea610beb85 7 * @brief Header file of PWR HAL Extended module.
AnnaBridge 126:abea610beb85 8 ******************************************************************************
AnnaBridge 126:abea610beb85 9 * @attention
AnnaBridge 126:abea610beb85 10 *
AnnaBridge 126:abea610beb85 11 * <h2><center>&copy; COPYRIGHT(c) 2016 STMicroelectronics</center></h2>
AnnaBridge 126:abea610beb85 12 *
AnnaBridge 126:abea610beb85 13 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 126:abea610beb85 14 * are permitted provided that the following conditions are met:
AnnaBridge 126:abea610beb85 15 * 1. Redistributions of source code must retain the above copyright notice,
AnnaBridge 126:abea610beb85 16 * this list of conditions and the following disclaimer.
AnnaBridge 126:abea610beb85 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
AnnaBridge 126:abea610beb85 18 * this list of conditions and the following disclaimer in the documentation
AnnaBridge 126:abea610beb85 19 * and/or other materials provided with the distribution.
AnnaBridge 126:abea610beb85 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
AnnaBridge 126:abea610beb85 21 * may be used to endorse or promote products derived from this software
AnnaBridge 126:abea610beb85 22 * without specific prior written permission.
AnnaBridge 126:abea610beb85 23 *
AnnaBridge 126:abea610beb85 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AnnaBridge 126:abea610beb85 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
AnnaBridge 126:abea610beb85 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 126:abea610beb85 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
AnnaBridge 126:abea610beb85 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
AnnaBridge 126:abea610beb85 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
AnnaBridge 126:abea610beb85 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
AnnaBridge 126:abea610beb85 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
AnnaBridge 126:abea610beb85 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
AnnaBridge 126:abea610beb85 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 126:abea610beb85 34 *
AnnaBridge 126:abea610beb85 35 ******************************************************************************
AnnaBridge 126:abea610beb85 36 */
AnnaBridge 126:abea610beb85 37
AnnaBridge 126:abea610beb85 38 /* Define to prevent recursive inclusion -------------------------------------*/
AnnaBridge 126:abea610beb85 39 #ifndef __STM32F3xx_HAL_PWR_EX_H
AnnaBridge 126:abea610beb85 40 #define __STM32F3xx_HAL_PWR_EX_H
AnnaBridge 126:abea610beb85 41
AnnaBridge 126:abea610beb85 42 #ifdef __cplusplus
AnnaBridge 126:abea610beb85 43 extern "C" {
AnnaBridge 126:abea610beb85 44 #endif
AnnaBridge 126:abea610beb85 45
AnnaBridge 126:abea610beb85 46 /* Includes ------------------------------------------------------------------*/
AnnaBridge 126:abea610beb85 47 #include "stm32f3xx_hal_def.h"
AnnaBridge 126:abea610beb85 48
AnnaBridge 126:abea610beb85 49 /** @addtogroup STM32F3xx_HAL_Driver
AnnaBridge 126:abea610beb85 50 * @{
AnnaBridge 126:abea610beb85 51 */
AnnaBridge 126:abea610beb85 52
AnnaBridge 126:abea610beb85 53 /** @addtogroup PWREx
AnnaBridge 126:abea610beb85 54 * @{
AnnaBridge 126:abea610beb85 55 */
AnnaBridge 126:abea610beb85 56
AnnaBridge 126:abea610beb85 57 /* Exported types ------------------------------------------------------------*/
AnnaBridge 126:abea610beb85 58
AnnaBridge 126:abea610beb85 59 /** @defgroup PWREx_Exported_Types PWR Extended Exported Types
AnnaBridge 126:abea610beb85 60 * @{
AnnaBridge 126:abea610beb85 61 */
AnnaBridge 126:abea610beb85 62 #if defined(STM32F302xE) || defined(STM32F303xE) || \
AnnaBridge 126:abea610beb85 63 defined(STM32F302xC) || defined(STM32F303xC) || \
AnnaBridge 126:abea610beb85 64 defined(STM32F303x8) || defined(STM32F334x8) || \
AnnaBridge 126:abea610beb85 65 defined(STM32F301x8) || defined(STM32F302x8) || \
AnnaBridge 126:abea610beb85 66 defined(STM32F373xC)
AnnaBridge 126:abea610beb85 67 /**
AnnaBridge 126:abea610beb85 68 * @brief PWR PVD configuration structure definition
AnnaBridge 126:abea610beb85 69 */
AnnaBridge 126:abea610beb85 70 typedef struct
AnnaBridge 126:abea610beb85 71 {
AnnaBridge 126:abea610beb85 72 uint32_t PVDLevel; /*!< PVDLevel: Specifies the PVD detection level
AnnaBridge 126:abea610beb85 73 This parameter can be a value of @ref PWREx_PVD_detection_level */
AnnaBridge 126:abea610beb85 74
AnnaBridge 126:abea610beb85 75 uint32_t Mode; /*!< Mode: Specifies the operating mode for the selected pins.
AnnaBridge 126:abea610beb85 76 This parameter can be a value of @ref PWREx_PVD_Mode */
AnnaBridge 126:abea610beb85 77 }PWR_PVDTypeDef;
AnnaBridge 126:abea610beb85 78 #endif /* STM32F302xE || STM32F303xE || */
AnnaBridge 126:abea610beb85 79 /* STM32F302xC || STM32F303xC || */
AnnaBridge 126:abea610beb85 80 /* STM32F303x8 || STM32F334x8 || */
AnnaBridge 126:abea610beb85 81 /* STM32F301x8 || STM32F302x8 || */
AnnaBridge 126:abea610beb85 82 /* STM32F373xC */
AnnaBridge 126:abea610beb85 83
AnnaBridge 126:abea610beb85 84 /**
AnnaBridge 126:abea610beb85 85 * @}
AnnaBridge 126:abea610beb85 86 */
AnnaBridge 126:abea610beb85 87
AnnaBridge 126:abea610beb85 88 /* Exported constants --------------------------------------------------------*/
AnnaBridge 126:abea610beb85 89 /** @defgroup PWREx_Exported_Constants PWR Extended Exported Constants
AnnaBridge 126:abea610beb85 90 * @{
AnnaBridge 126:abea610beb85 91 */
AnnaBridge 126:abea610beb85 92
AnnaBridge 126:abea610beb85 93 #if defined(STM32F302xE) || defined(STM32F303xE) || \
AnnaBridge 126:abea610beb85 94 defined(STM32F302xC) || defined(STM32F303xC) || \
AnnaBridge 126:abea610beb85 95 defined(STM32F303x8) || defined(STM32F334x8) || \
AnnaBridge 126:abea610beb85 96 defined(STM32F301x8) || defined(STM32F302x8) || \
AnnaBridge 126:abea610beb85 97 defined(STM32F373xC)
AnnaBridge 126:abea610beb85 98
AnnaBridge 126:abea610beb85 99 /** @defgroup PWREx_PVD_detection_level PWR Extended PVD detection level
AnnaBridge 126:abea610beb85 100 * @{
AnnaBridge 126:abea610beb85 101 */
AnnaBridge 126:abea610beb85 102 #define PWR_PVDLEVEL_0 PWR_CR_PLS_LEV0 /*!< PVD threshold around 2.2 V */
AnnaBridge 126:abea610beb85 103 #define PWR_PVDLEVEL_1 PWR_CR_PLS_LEV1 /*!< PVD threshold around 2.3 V */
AnnaBridge 126:abea610beb85 104 #define PWR_PVDLEVEL_2 PWR_CR_PLS_LEV2 /*!< PVD threshold around 2.4 V */
AnnaBridge 126:abea610beb85 105 #define PWR_PVDLEVEL_3 PWR_CR_PLS_LEV3 /*!< PVD threshold around 2.5 V */
AnnaBridge 126:abea610beb85 106 #define PWR_PVDLEVEL_4 PWR_CR_PLS_LEV4 /*!< PVD threshold around 2.6 V */
AnnaBridge 126:abea610beb85 107 #define PWR_PVDLEVEL_5 PWR_CR_PLS_LEV5 /*!< PVD threshold around 2.7 V */
AnnaBridge 126:abea610beb85 108 #define PWR_PVDLEVEL_6 PWR_CR_PLS_LEV6 /*!< PVD threshold around 2.8 V */
AnnaBridge 126:abea610beb85 109 #define PWR_PVDLEVEL_7 PWR_CR_PLS_LEV7 /*!< PVD threshold around 2.9 V */
AnnaBridge 126:abea610beb85 110 /**
AnnaBridge 126:abea610beb85 111 * @}
AnnaBridge 126:abea610beb85 112 */
AnnaBridge 126:abea610beb85 113
AnnaBridge 126:abea610beb85 114 /** @defgroup PWREx_PVD_Mode PWR Extended PVD Mode
AnnaBridge 126:abea610beb85 115 * @{
AnnaBridge 126:abea610beb85 116 */
<> 135:176b8275d35d 117 #define PWR_PVD_MODE_NORMAL (0x00000000U) /*!< Basic mode is used */
<> 135:176b8275d35d 118 #define PWR_PVD_MODE_IT_RISING (0x00010001U) /*!< External Interrupt Mode with Rising edge trigger detection */
<> 135:176b8275d35d 119 #define PWR_PVD_MODE_IT_FALLING (0x00010002U) /*!< External Interrupt Mode with Falling edge trigger detection */
<> 135:176b8275d35d 120 #define PWR_PVD_MODE_IT_RISING_FALLING (0x00010003U) /*!< External Interrupt Mode with Rising/Falling edge trigger detection */
<> 135:176b8275d35d 121 #define PWR_PVD_MODE_EVENT_RISING (0x00020001U) /*!< Event Mode with Rising edge trigger detection */
<> 135:176b8275d35d 122 #define PWR_PVD_MODE_EVENT_FALLING (0x00020002U) /*!< Event Mode with Falling edge trigger detection */
<> 135:176b8275d35d 123 #define PWR_PVD_MODE_EVENT_RISING_FALLING (0x00020003U) /*!< Event Mode with Rising/Falling edge trigger detection */
AnnaBridge 126:abea610beb85 124 /**
AnnaBridge 126:abea610beb85 125 * @}
AnnaBridge 126:abea610beb85 126 */
AnnaBridge 126:abea610beb85 127
AnnaBridge 126:abea610beb85 128 #define PWR_EXTI_LINE_PVD EXTI_IMR_MR16 /*!< External interrupt line 16 Connected to the PVD EXTI Line */
AnnaBridge 126:abea610beb85 129
AnnaBridge 126:abea610beb85 130 #endif /* STM32F302xE || STM32F303xE || */
AnnaBridge 126:abea610beb85 131 /* STM32F302xC || STM32F303xC || */
AnnaBridge 126:abea610beb85 132 /* STM32F303x8 || STM32F334x8 || */
AnnaBridge 126:abea610beb85 133 /* STM32F301x8 || STM32F302x8 || */
AnnaBridge 126:abea610beb85 134 /* STM32F373xC */
AnnaBridge 126:abea610beb85 135
AnnaBridge 126:abea610beb85 136 #if defined(STM32F373xC) || defined(STM32F378xx)
AnnaBridge 126:abea610beb85 137 /** @defgroup PWREx_SDADC_ANALOGx PWR Extended SDADC ANALOGx
AnnaBridge 126:abea610beb85 138 * @{
AnnaBridge 126:abea610beb85 139 */
<> 135:176b8275d35d 140 #define PWR_SDADC_ANALOG1 ((uint32_t)PWR_CR_ENSD1) /*!< Enable SDADC1 */
<> 135:176b8275d35d 141 #define PWR_SDADC_ANALOG2 ((uint32_t)PWR_CR_ENSD2) /*!< Enable SDADC2 */
<> 135:176b8275d35d 142 #define PWR_SDADC_ANALOG3 ((uint32_t)PWR_CR_ENSD3) /*!< Enable SDADC3 */
AnnaBridge 126:abea610beb85 143 /**
AnnaBridge 126:abea610beb85 144 * @}
AnnaBridge 126:abea610beb85 145 */
AnnaBridge 126:abea610beb85 146 #endif /* STM32F373xC || STM32F378xx */
AnnaBridge 126:abea610beb85 147
AnnaBridge 126:abea610beb85 148 /**
AnnaBridge 126:abea610beb85 149 * @}
AnnaBridge 126:abea610beb85 150 */
AnnaBridge 126:abea610beb85 151
AnnaBridge 126:abea610beb85 152 /* Exported macro ------------------------------------------------------------*/
AnnaBridge 126:abea610beb85 153 /** @defgroup PWREx_Exported_Macros PWR Extended Exported Macros
AnnaBridge 126:abea610beb85 154 * @{
AnnaBridge 126:abea610beb85 155 */
AnnaBridge 126:abea610beb85 156
AnnaBridge 126:abea610beb85 157 #if defined(STM32F302xE) || defined(STM32F303xE) || \
AnnaBridge 126:abea610beb85 158 defined(STM32F302xC) || defined(STM32F303xC) || \
AnnaBridge 126:abea610beb85 159 defined(STM32F303x8) || defined(STM32F334x8) || \
AnnaBridge 126:abea610beb85 160 defined(STM32F301x8) || defined(STM32F302x8) || \
AnnaBridge 126:abea610beb85 161 defined(STM32F373xC)
AnnaBridge 126:abea610beb85 162
AnnaBridge 126:abea610beb85 163 /**
AnnaBridge 126:abea610beb85 164 * @brief Enable interrupt on PVD Exti Line 16.
AnnaBridge 126:abea610beb85 165 * @retval None.
AnnaBridge 126:abea610beb85 166 */
AnnaBridge 126:abea610beb85 167 #define __HAL_PWR_PVD_EXTI_ENABLE_IT() (EXTI->IMR |= (PWR_EXTI_LINE_PVD))
AnnaBridge 126:abea610beb85 168
AnnaBridge 126:abea610beb85 169 /**
AnnaBridge 126:abea610beb85 170 * @brief Disable interrupt on PVD Exti Line 16.
AnnaBridge 126:abea610beb85 171 * @retval None.
AnnaBridge 126:abea610beb85 172 */
AnnaBridge 126:abea610beb85 173 #define __HAL_PWR_PVD_EXTI_DISABLE_IT() (EXTI->IMR &= ~(PWR_EXTI_LINE_PVD))
AnnaBridge 126:abea610beb85 174
AnnaBridge 126:abea610beb85 175 /**
AnnaBridge 126:abea610beb85 176 * @brief Generate a Software interrupt on selected EXTI line.
AnnaBridge 126:abea610beb85 177 * @retval None.
AnnaBridge 126:abea610beb85 178 */
AnnaBridge 126:abea610beb85 179 #define __HAL_PWR_PVD_EXTI_GENERATE_SWIT() (EXTI->SWIER |= (PWR_EXTI_LINE_PVD))
AnnaBridge 126:abea610beb85 180
AnnaBridge 126:abea610beb85 181 /**
AnnaBridge 126:abea610beb85 182 * @brief Enable event on PVD Exti Line 16.
AnnaBridge 126:abea610beb85 183 * @retval None.
AnnaBridge 126:abea610beb85 184 */
AnnaBridge 126:abea610beb85 185 #define __HAL_PWR_PVD_EXTI_ENABLE_EVENT() (EXTI->EMR |= (PWR_EXTI_LINE_PVD))
AnnaBridge 126:abea610beb85 186
AnnaBridge 126:abea610beb85 187 /**
AnnaBridge 126:abea610beb85 188 * @brief Disable event on PVD Exti Line 16.
AnnaBridge 126:abea610beb85 189 * @retval None.
AnnaBridge 126:abea610beb85 190 */
AnnaBridge 126:abea610beb85 191 #define __HAL_PWR_PVD_EXTI_DISABLE_EVENT() (EXTI->EMR &= ~(PWR_EXTI_LINE_PVD))
AnnaBridge 126:abea610beb85 192
AnnaBridge 126:abea610beb85 193 /**
AnnaBridge 126:abea610beb85 194 * @brief Disable the PVD Extended Interrupt Rising Trigger.
AnnaBridge 126:abea610beb85 195 * @retval None.
AnnaBridge 126:abea610beb85 196 */
AnnaBridge 126:abea610beb85 197 #define __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE() CLEAR_BIT(EXTI->RTSR, PWR_EXTI_LINE_PVD)
AnnaBridge 126:abea610beb85 198
AnnaBridge 126:abea610beb85 199 /**
AnnaBridge 126:abea610beb85 200 * @brief Disable the PVD Extended Interrupt Falling Trigger.
AnnaBridge 126:abea610beb85 201 * @retval None.
AnnaBridge 126:abea610beb85 202 */
AnnaBridge 126:abea610beb85 203 #define __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE() CLEAR_BIT(EXTI->FTSR, PWR_EXTI_LINE_PVD)
AnnaBridge 126:abea610beb85 204
AnnaBridge 126:abea610beb85 205 /**
AnnaBridge 126:abea610beb85 206 * @brief Disable the PVD Extended Interrupt Rising & Falling Trigger.
AnnaBridge 126:abea610beb85 207 * @retval None
AnnaBridge 126:abea610beb85 208 */
AnnaBridge 126:abea610beb85 209 #define __HAL_PWR_PVD_EXTI_DISABLE_RISING_FALLING_EDGE() __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE();__HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE();
AnnaBridge 126:abea610beb85 210
AnnaBridge 126:abea610beb85 211 /**
AnnaBridge 126:abea610beb85 212 * @brief PVD EXTI line configuration: set falling edge trigger.
AnnaBridge 126:abea610beb85 213 * @retval None.
AnnaBridge 126:abea610beb85 214 */
AnnaBridge 126:abea610beb85 215 #define __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE() EXTI->FTSR |= (PWR_EXTI_LINE_PVD)
AnnaBridge 126:abea610beb85 216
AnnaBridge 126:abea610beb85 217 /**
AnnaBridge 126:abea610beb85 218 * @brief PVD EXTI line configuration: set rising edge trigger.
AnnaBridge 126:abea610beb85 219 * @retval None.
AnnaBridge 126:abea610beb85 220 */
AnnaBridge 126:abea610beb85 221 #define __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE() EXTI->RTSR |= (PWR_EXTI_LINE_PVD)
AnnaBridge 126:abea610beb85 222
AnnaBridge 126:abea610beb85 223 /**
AnnaBridge 126:abea610beb85 224 * @brief Enable the PVD Extended Interrupt Rising & Falling Trigger.
AnnaBridge 126:abea610beb85 225 * @retval None
AnnaBridge 126:abea610beb85 226 */
AnnaBridge 126:abea610beb85 227 #define __HAL_PWR_PVD_EXTI_ENABLE_RISING_FALLING_EDGE() __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE();__HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE();
AnnaBridge 126:abea610beb85 228
AnnaBridge 126:abea610beb85 229 /**
AnnaBridge 126:abea610beb85 230 * @brief Check whether the specified PVD EXTI interrupt flag is set or not.
AnnaBridge 126:abea610beb85 231 * @retval EXTI PVD Line Status.
AnnaBridge 126:abea610beb85 232 */
AnnaBridge 126:abea610beb85 233 #define __HAL_PWR_PVD_EXTI_GET_FLAG() (EXTI->PR & (PWR_EXTI_LINE_PVD))
AnnaBridge 126:abea610beb85 234
AnnaBridge 126:abea610beb85 235 /**
AnnaBridge 126:abea610beb85 236 * @brief Clear the PVD EXTI flag.
AnnaBridge 126:abea610beb85 237 * @retval None.
AnnaBridge 126:abea610beb85 238 */
AnnaBridge 126:abea610beb85 239 #define __HAL_PWR_PVD_EXTI_CLEAR_FLAG() (EXTI->PR = (PWR_EXTI_LINE_PVD))
AnnaBridge 126:abea610beb85 240
AnnaBridge 126:abea610beb85 241 #endif /* STM32F302xE || STM32F303xE || */
AnnaBridge 126:abea610beb85 242 /* STM32F302xC || STM32F303xC || */
AnnaBridge 126:abea610beb85 243 /* STM32F303x8 || STM32F334x8 || */
AnnaBridge 126:abea610beb85 244 /* STM32F301x8 || STM32F302x8 || */
AnnaBridge 126:abea610beb85 245 /* STM32F373xC */
AnnaBridge 126:abea610beb85 246
AnnaBridge 126:abea610beb85 247 /**
AnnaBridge 126:abea610beb85 248 * @}
AnnaBridge 126:abea610beb85 249 */
AnnaBridge 126:abea610beb85 250
AnnaBridge 126:abea610beb85 251 /* Private macros --------------------------------------------------------*/
AnnaBridge 126:abea610beb85 252 /** @addtogroup PWREx_Private_Macros PWR Extended Private Macros
AnnaBridge 126:abea610beb85 253 * @{
AnnaBridge 126:abea610beb85 254 */
AnnaBridge 126:abea610beb85 255
AnnaBridge 126:abea610beb85 256 #if defined(STM32F302xE) || defined(STM32F303xE) || \
AnnaBridge 126:abea610beb85 257 defined(STM32F302xC) || defined(STM32F303xC) || \
AnnaBridge 126:abea610beb85 258 defined(STM32F303x8) || defined(STM32F334x8) || \
AnnaBridge 126:abea610beb85 259 defined(STM32F301x8) || defined(STM32F302x8) || \
AnnaBridge 126:abea610beb85 260 defined(STM32F373xC)
AnnaBridge 126:abea610beb85 261 #define IS_PWR_PVD_LEVEL(LEVEL) (((LEVEL) == PWR_PVDLEVEL_0) || ((LEVEL) == PWR_PVDLEVEL_1)|| \
AnnaBridge 126:abea610beb85 262 ((LEVEL) == PWR_PVDLEVEL_2) || ((LEVEL) == PWR_PVDLEVEL_3)|| \
AnnaBridge 126:abea610beb85 263 ((LEVEL) == PWR_PVDLEVEL_4) || ((LEVEL) == PWR_PVDLEVEL_5)|| \
AnnaBridge 126:abea610beb85 264 ((LEVEL) == PWR_PVDLEVEL_6) || ((LEVEL) == PWR_PVDLEVEL_7))
AnnaBridge 126:abea610beb85 265
AnnaBridge 126:abea610beb85 266 #define IS_PWR_PVD_MODE(MODE) (((MODE) == PWR_PVD_MODE_IT_RISING)|| ((MODE) == PWR_PVD_MODE_IT_FALLING) || \
AnnaBridge 126:abea610beb85 267 ((MODE) == PWR_PVD_MODE_IT_RISING_FALLING) || ((MODE) == PWR_PVD_MODE_EVENT_RISING) || \
AnnaBridge 126:abea610beb85 268 ((MODE) == PWR_PVD_MODE_EVENT_FALLING) || ((MODE) == PWR_PVD_MODE_EVENT_RISING_FALLING) || \
AnnaBridge 126:abea610beb85 269 ((MODE) == PWR_PVD_MODE_NORMAL))
AnnaBridge 126:abea610beb85 270 #endif /* STM32F302xE || STM32F303xE || */
AnnaBridge 126:abea610beb85 271 /* STM32F302xC || STM32F303xC || */
AnnaBridge 126:abea610beb85 272 /* STM32F303x8 || STM32F334x8 || */
AnnaBridge 126:abea610beb85 273 /* STM32F301x8 || STM32F302x8 || */
AnnaBridge 126:abea610beb85 274 /* STM32F373xC */
AnnaBridge 126:abea610beb85 275
AnnaBridge 126:abea610beb85 276 #if defined(STM32F373xC) || defined(STM32F378xx)
AnnaBridge 126:abea610beb85 277 #define IS_PWR_SDADC_ANALOG(SDADC) (((SDADC) == PWR_SDADC_ANALOG1) || \
AnnaBridge 126:abea610beb85 278 ((SDADC) == PWR_SDADC_ANALOG2) || \
AnnaBridge 126:abea610beb85 279 ((SDADC) == PWR_SDADC_ANALOG3))
AnnaBridge 126:abea610beb85 280 #endif /* STM32F373xC || STM32F378xx */
AnnaBridge 126:abea610beb85 281
AnnaBridge 126:abea610beb85 282
AnnaBridge 126:abea610beb85 283 /**
AnnaBridge 126:abea610beb85 284 * @}
AnnaBridge 126:abea610beb85 285 */
AnnaBridge 126:abea610beb85 286
AnnaBridge 126:abea610beb85 287 /* Exported functions --------------------------------------------------------*/
AnnaBridge 126:abea610beb85 288
AnnaBridge 126:abea610beb85 289 /** @addtogroup PWREx_Exported_Functions PWR Extended Exported Functions
AnnaBridge 126:abea610beb85 290 * @{
AnnaBridge 126:abea610beb85 291 */
AnnaBridge 126:abea610beb85 292
AnnaBridge 126:abea610beb85 293 /** @addtogroup PWREx_Exported_Functions_Group1 Peripheral Extended Control Functions
AnnaBridge 126:abea610beb85 294 * @{
AnnaBridge 126:abea610beb85 295 */
AnnaBridge 126:abea610beb85 296 /* Peripheral Extended control functions **************************************/
AnnaBridge 126:abea610beb85 297 #if defined(STM32F302xE) || defined(STM32F303xE) || \
AnnaBridge 126:abea610beb85 298 defined(STM32F302xC) || defined(STM32F303xC) || \
AnnaBridge 126:abea610beb85 299 defined(STM32F303x8) || defined(STM32F334x8) || \
AnnaBridge 126:abea610beb85 300 defined(STM32F301x8) || defined(STM32F302x8) || \
AnnaBridge 126:abea610beb85 301 defined(STM32F373xC)
AnnaBridge 126:abea610beb85 302 void HAL_PWR_ConfigPVD(PWR_PVDTypeDef *sConfigPVD);
AnnaBridge 126:abea610beb85 303 void HAL_PWR_EnablePVD(void);
AnnaBridge 126:abea610beb85 304 void HAL_PWR_DisablePVD(void);
AnnaBridge 126:abea610beb85 305 void HAL_PWR_PVD_IRQHandler(void);
AnnaBridge 126:abea610beb85 306 void HAL_PWR_PVDCallback(void);
AnnaBridge 126:abea610beb85 307 #endif /* STM32F302xE || STM32F303xE || */
AnnaBridge 126:abea610beb85 308 /* STM32F302xC || STM32F303xC || */
AnnaBridge 126:abea610beb85 309 /* STM32F303x8 || STM32F334x8 || */
AnnaBridge 126:abea610beb85 310 /* STM32F301x8 || STM32F302x8 || */
AnnaBridge 126:abea610beb85 311 /* STM32F373xC */
AnnaBridge 126:abea610beb85 312
AnnaBridge 126:abea610beb85 313 #if defined(STM32F373xC) || defined(STM32F378xx)
AnnaBridge 126:abea610beb85 314 void HAL_PWREx_EnableSDADC(uint32_t Analogx);
AnnaBridge 126:abea610beb85 315 void HAL_PWREx_DisableSDADC(uint32_t Analogx);
AnnaBridge 126:abea610beb85 316 #endif /* STM32F373xC || STM32F378xx */
AnnaBridge 126:abea610beb85 317
AnnaBridge 126:abea610beb85 318 /**
AnnaBridge 126:abea610beb85 319 * @}
AnnaBridge 126:abea610beb85 320 */
AnnaBridge 126:abea610beb85 321
AnnaBridge 126:abea610beb85 322 /**
AnnaBridge 126:abea610beb85 323 * @}
AnnaBridge 126:abea610beb85 324 */
AnnaBridge 126:abea610beb85 325
AnnaBridge 126:abea610beb85 326 /**
AnnaBridge 126:abea610beb85 327 * @}
AnnaBridge 126:abea610beb85 328 */
AnnaBridge 126:abea610beb85 329
AnnaBridge 126:abea610beb85 330 /**
AnnaBridge 126:abea610beb85 331 * @}
AnnaBridge 126:abea610beb85 332 */
AnnaBridge 126:abea610beb85 333
AnnaBridge 126:abea610beb85 334 #ifdef __cplusplus
AnnaBridge 126:abea610beb85 335 }
AnnaBridge 126:abea610beb85 336 #endif
AnnaBridge 126:abea610beb85 337
AnnaBridge 126:abea610beb85 338 #endif /* __STM32F3xx_HAL_PWR_EX_H */
AnnaBridge 126:abea610beb85 339
AnnaBridge 126:abea610beb85 340 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/