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:
Wed Feb 20 20:53:29 2019 +0000
Revision:
172:65be27845400
Parent:
171:3a7713b1edbc
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 145:64910690c574 1 /**
AnnaBridge 145:64910690c574 2 ******************************************************************************
AnnaBridge 145:64910690c574 3 * @file stm32f4xx_ll_exti.h
AnnaBridge 145:64910690c574 4 * @author MCD Application Team
AnnaBridge 145:64910690c574 5 * @brief Header file of EXTI LL module.
AnnaBridge 145:64910690c574 6 ******************************************************************************
AnnaBridge 145:64910690c574 7 * @attention
AnnaBridge 145:64910690c574 8 *
AnnaBridge 145:64910690c574 9 * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
AnnaBridge 145:64910690c574 10 *
AnnaBridge 145:64910690c574 11 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 145:64910690c574 12 * are permitted provided that the following conditions are met:
AnnaBridge 145:64910690c574 13 * 1. Redistributions of source code must retain the above copyright notice,
AnnaBridge 145:64910690c574 14 * this list of conditions and the following disclaimer.
AnnaBridge 145:64910690c574 15 * 2. Redistributions in binary form must reproduce the above copyright notice,
AnnaBridge 145:64910690c574 16 * this list of conditions and the following disclaimer in the documentation
AnnaBridge 145:64910690c574 17 * and/or other materials provided with the distribution.
AnnaBridge 145:64910690c574 18 * 3. Neither the name of STMicroelectronics nor the names of its contributors
AnnaBridge 145:64910690c574 19 * may be used to endorse or promote products derived from this software
AnnaBridge 145:64910690c574 20 * without specific prior written permission.
AnnaBridge 145:64910690c574 21 *
AnnaBridge 145:64910690c574 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AnnaBridge 145:64910690c574 23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
AnnaBridge 145:64910690c574 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 145:64910690c574 25 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
AnnaBridge 145:64910690c574 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
AnnaBridge 145:64910690c574 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
AnnaBridge 145:64910690c574 28 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
AnnaBridge 145:64910690c574 29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
AnnaBridge 145:64910690c574 30 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
AnnaBridge 145:64910690c574 31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 145:64910690c574 32 *
AnnaBridge 145:64910690c574 33 ******************************************************************************
AnnaBridge 145:64910690c574 34 */
AnnaBridge 145:64910690c574 35
AnnaBridge 145:64910690c574 36 /* Define to prevent recursive inclusion -------------------------------------*/
AnnaBridge 145:64910690c574 37 #ifndef __STM32F4xx_LL_EXTI_H
AnnaBridge 145:64910690c574 38 #define __STM32F4xx_LL_EXTI_H
AnnaBridge 145:64910690c574 39
AnnaBridge 145:64910690c574 40 #ifdef __cplusplus
AnnaBridge 145:64910690c574 41 extern "C" {
AnnaBridge 145:64910690c574 42 #endif
AnnaBridge 145:64910690c574 43
AnnaBridge 145:64910690c574 44 /* Includes ------------------------------------------------------------------*/
AnnaBridge 145:64910690c574 45 #include "stm32f4xx.h"
AnnaBridge 145:64910690c574 46
AnnaBridge 145:64910690c574 47 /** @addtogroup STM32F4xx_LL_Driver
AnnaBridge 145:64910690c574 48 * @{
AnnaBridge 145:64910690c574 49 */
AnnaBridge 145:64910690c574 50
AnnaBridge 145:64910690c574 51 #if defined (EXTI)
AnnaBridge 145:64910690c574 52
AnnaBridge 145:64910690c574 53 /** @defgroup EXTI_LL EXTI
AnnaBridge 145:64910690c574 54 * @{
AnnaBridge 145:64910690c574 55 */
AnnaBridge 145:64910690c574 56
AnnaBridge 145:64910690c574 57 /* Private types -------------------------------------------------------------*/
AnnaBridge 145:64910690c574 58 /* Private variables ---------------------------------------------------------*/
AnnaBridge 145:64910690c574 59 /* Private constants ---------------------------------------------------------*/
AnnaBridge 145:64910690c574 60 /* Private Macros ------------------------------------------------------------*/
AnnaBridge 145:64910690c574 61 #if defined(USE_FULL_LL_DRIVER)
AnnaBridge 145:64910690c574 62 /** @defgroup EXTI_LL_Private_Macros EXTI Private Macros
AnnaBridge 145:64910690c574 63 * @{
AnnaBridge 145:64910690c574 64 */
AnnaBridge 145:64910690c574 65 /**
AnnaBridge 145:64910690c574 66 * @}
AnnaBridge 145:64910690c574 67 */
AnnaBridge 145:64910690c574 68 #endif /*USE_FULL_LL_DRIVER*/
AnnaBridge 145:64910690c574 69 /* Exported types ------------------------------------------------------------*/
AnnaBridge 145:64910690c574 70 #if defined(USE_FULL_LL_DRIVER)
AnnaBridge 145:64910690c574 71 /** @defgroup EXTI_LL_ES_INIT EXTI Exported Init structure
AnnaBridge 145:64910690c574 72 * @{
AnnaBridge 145:64910690c574 73 */
AnnaBridge 145:64910690c574 74 typedef struct
AnnaBridge 145:64910690c574 75 {
AnnaBridge 145:64910690c574 76
AnnaBridge 145:64910690c574 77 uint32_t Line_0_31; /*!< Specifies the EXTI lines to be enabled or disabled for Lines in range 0 to 31
AnnaBridge 145:64910690c574 78 This parameter can be any combination of @ref EXTI_LL_EC_LINE */
AnnaBridge 145:64910690c574 79
AnnaBridge 145:64910690c574 80 FunctionalState LineCommand; /*!< Specifies the new state of the selected EXTI lines.
AnnaBridge 145:64910690c574 81 This parameter can be set either to ENABLE or DISABLE */
AnnaBridge 145:64910690c574 82
AnnaBridge 145:64910690c574 83 uint8_t Mode; /*!< Specifies the mode for the EXTI lines.
AnnaBridge 145:64910690c574 84 This parameter can be a value of @ref EXTI_LL_EC_MODE. */
AnnaBridge 145:64910690c574 85
AnnaBridge 145:64910690c574 86 uint8_t Trigger; /*!< Specifies the trigger signal active edge for the EXTI lines.
AnnaBridge 145:64910690c574 87 This parameter can be a value of @ref EXTI_LL_EC_TRIGGER. */
AnnaBridge 145:64910690c574 88 } LL_EXTI_InitTypeDef;
AnnaBridge 145:64910690c574 89
AnnaBridge 145:64910690c574 90 /**
AnnaBridge 145:64910690c574 91 * @}
AnnaBridge 145:64910690c574 92 */
AnnaBridge 145:64910690c574 93 #endif /*USE_FULL_LL_DRIVER*/
AnnaBridge 145:64910690c574 94
AnnaBridge 145:64910690c574 95 /* Exported constants --------------------------------------------------------*/
AnnaBridge 145:64910690c574 96 /** @defgroup EXTI_LL_Exported_Constants EXTI Exported Constants
AnnaBridge 145:64910690c574 97 * @{
AnnaBridge 145:64910690c574 98 */
AnnaBridge 145:64910690c574 99
AnnaBridge 145:64910690c574 100 /** @defgroup EXTI_LL_EC_LINE LINE
AnnaBridge 145:64910690c574 101 * @{
AnnaBridge 145:64910690c574 102 */
AnnaBridge 145:64910690c574 103 #define LL_EXTI_LINE_0 EXTI_IMR_IM0 /*!< Extended line 0 */
AnnaBridge 145:64910690c574 104 #define LL_EXTI_LINE_1 EXTI_IMR_IM1 /*!< Extended line 1 */
AnnaBridge 145:64910690c574 105 #define LL_EXTI_LINE_2 EXTI_IMR_IM2 /*!< Extended line 2 */
AnnaBridge 145:64910690c574 106 #define LL_EXTI_LINE_3 EXTI_IMR_IM3 /*!< Extended line 3 */
AnnaBridge 145:64910690c574 107 #define LL_EXTI_LINE_4 EXTI_IMR_IM4 /*!< Extended line 4 */
AnnaBridge 145:64910690c574 108 #define LL_EXTI_LINE_5 EXTI_IMR_IM5 /*!< Extended line 5 */
AnnaBridge 145:64910690c574 109 #define LL_EXTI_LINE_6 EXTI_IMR_IM6 /*!< Extended line 6 */
AnnaBridge 145:64910690c574 110 #define LL_EXTI_LINE_7 EXTI_IMR_IM7 /*!< Extended line 7 */
AnnaBridge 145:64910690c574 111 #define LL_EXTI_LINE_8 EXTI_IMR_IM8 /*!< Extended line 8 */
AnnaBridge 145:64910690c574 112 #define LL_EXTI_LINE_9 EXTI_IMR_IM9 /*!< Extended line 9 */
AnnaBridge 145:64910690c574 113 #define LL_EXTI_LINE_10 EXTI_IMR_IM10 /*!< Extended line 10 */
AnnaBridge 145:64910690c574 114 #define LL_EXTI_LINE_11 EXTI_IMR_IM11 /*!< Extended line 11 */
AnnaBridge 145:64910690c574 115 #define LL_EXTI_LINE_12 EXTI_IMR_IM12 /*!< Extended line 12 */
AnnaBridge 145:64910690c574 116 #define LL_EXTI_LINE_13 EXTI_IMR_IM13 /*!< Extended line 13 */
AnnaBridge 145:64910690c574 117 #define LL_EXTI_LINE_14 EXTI_IMR_IM14 /*!< Extended line 14 */
AnnaBridge 145:64910690c574 118 #define LL_EXTI_LINE_15 EXTI_IMR_IM15 /*!< Extended line 15 */
AnnaBridge 145:64910690c574 119 #if defined(EXTI_IMR_IM16)
AnnaBridge 145:64910690c574 120 #define LL_EXTI_LINE_16 EXTI_IMR_IM16 /*!< Extended line 16 */
AnnaBridge 145:64910690c574 121 #endif
AnnaBridge 145:64910690c574 122 #define LL_EXTI_LINE_17 EXTI_IMR_IM17 /*!< Extended line 17 */
AnnaBridge 145:64910690c574 123 #if defined(EXTI_IMR_IM18)
AnnaBridge 145:64910690c574 124 #define LL_EXTI_LINE_18 EXTI_IMR_IM18 /*!< Extended line 18 */
AnnaBridge 145:64910690c574 125 #endif
AnnaBridge 145:64910690c574 126 #define LL_EXTI_LINE_19 EXTI_IMR_IM19 /*!< Extended line 19 */
AnnaBridge 145:64910690c574 127 #if defined(EXTI_IMR_IM20)
AnnaBridge 145:64910690c574 128 #define LL_EXTI_LINE_20 EXTI_IMR_IM20 /*!< Extended line 20 */
AnnaBridge 145:64910690c574 129 #endif
AnnaBridge 145:64910690c574 130 #if defined(EXTI_IMR_IM21)
AnnaBridge 145:64910690c574 131 #define LL_EXTI_LINE_21 EXTI_IMR_IM21 /*!< Extended line 21 */
AnnaBridge 145:64910690c574 132 #endif
AnnaBridge 145:64910690c574 133 #if defined(EXTI_IMR_IM22)
AnnaBridge 145:64910690c574 134 #define LL_EXTI_LINE_22 EXTI_IMR_IM22 /*!< Extended line 22 */
AnnaBridge 145:64910690c574 135 #endif
AnnaBridge 145:64910690c574 136 #if defined(EXTI_IMR_IM23)
AnnaBridge 145:64910690c574 137 #define LL_EXTI_LINE_23 EXTI_IMR_IM23 /*!< Extended line 23 */
AnnaBridge 145:64910690c574 138 #endif
AnnaBridge 145:64910690c574 139 #if defined(EXTI_IMR_IM24)
AnnaBridge 145:64910690c574 140 #define LL_EXTI_LINE_24 EXTI_IMR_IM24 /*!< Extended line 24 */
AnnaBridge 145:64910690c574 141 #endif
AnnaBridge 145:64910690c574 142 #if defined(EXTI_IMR_IM25)
AnnaBridge 145:64910690c574 143 #define LL_EXTI_LINE_25 EXTI_IMR_IM25 /*!< Extended line 25 */
AnnaBridge 145:64910690c574 144 #endif
AnnaBridge 145:64910690c574 145 #if defined(EXTI_IMR_IM26)
AnnaBridge 145:64910690c574 146 #define LL_EXTI_LINE_26 EXTI_IMR_IM26 /*!< Extended line 26 */
AnnaBridge 145:64910690c574 147 #endif
AnnaBridge 145:64910690c574 148 #if defined(EXTI_IMR_IM27)
AnnaBridge 145:64910690c574 149 #define LL_EXTI_LINE_27 EXTI_IMR_IM27 /*!< Extended line 27 */
AnnaBridge 145:64910690c574 150 #endif
AnnaBridge 145:64910690c574 151 #if defined(EXTI_IMR_IM28)
AnnaBridge 145:64910690c574 152 #define LL_EXTI_LINE_28 EXTI_IMR_IM28 /*!< Extended line 28 */
AnnaBridge 145:64910690c574 153 #endif
AnnaBridge 145:64910690c574 154 #if defined(EXTI_IMR_IM29)
AnnaBridge 145:64910690c574 155 #define LL_EXTI_LINE_29 EXTI_IMR_IM29 /*!< Extended line 29 */
AnnaBridge 145:64910690c574 156 #endif
AnnaBridge 145:64910690c574 157 #if defined(EXTI_IMR_IM30)
AnnaBridge 145:64910690c574 158 #define LL_EXTI_LINE_30 EXTI_IMR_IM30 /*!< Extended line 30 */
AnnaBridge 145:64910690c574 159 #endif
AnnaBridge 145:64910690c574 160 #if defined(EXTI_IMR_IM31)
AnnaBridge 145:64910690c574 161 #define LL_EXTI_LINE_31 EXTI_IMR_IM31 /*!< Extended line 31 */
AnnaBridge 145:64910690c574 162 #endif
AnnaBridge 145:64910690c574 163 #define LL_EXTI_LINE_ALL_0_31 EXTI_IMR_IM /*!< All Extended line not reserved*/
AnnaBridge 145:64910690c574 164
AnnaBridge 145:64910690c574 165
AnnaBridge 145:64910690c574 166 #define LL_EXTI_LINE_ALL ((uint32_t)0xFFFFFFFFU) /*!< All Extended line */
AnnaBridge 145:64910690c574 167
AnnaBridge 145:64910690c574 168 #if defined(USE_FULL_LL_DRIVER)
AnnaBridge 145:64910690c574 169 #define LL_EXTI_LINE_NONE ((uint32_t)0x00000000U) /*!< None Extended line */
AnnaBridge 145:64910690c574 170 #endif /*USE_FULL_LL_DRIVER*/
AnnaBridge 145:64910690c574 171
AnnaBridge 145:64910690c574 172 /**
AnnaBridge 145:64910690c574 173 * @}
AnnaBridge 145:64910690c574 174 */
AnnaBridge 145:64910690c574 175 #if defined(USE_FULL_LL_DRIVER)
AnnaBridge 145:64910690c574 176
AnnaBridge 145:64910690c574 177 /** @defgroup EXTI_LL_EC_MODE Mode
AnnaBridge 145:64910690c574 178 * @{
AnnaBridge 145:64910690c574 179 */
AnnaBridge 145:64910690c574 180 #define LL_EXTI_MODE_IT ((uint8_t)0x00U) /*!< Interrupt Mode */
AnnaBridge 145:64910690c574 181 #define LL_EXTI_MODE_EVENT ((uint8_t)0x01U) /*!< Event Mode */
AnnaBridge 145:64910690c574 182 #define LL_EXTI_MODE_IT_EVENT ((uint8_t)0x02U) /*!< Interrupt & Event Mode */
AnnaBridge 145:64910690c574 183 /**
AnnaBridge 145:64910690c574 184 * @}
AnnaBridge 145:64910690c574 185 */
AnnaBridge 145:64910690c574 186
AnnaBridge 145:64910690c574 187 /** @defgroup EXTI_LL_EC_TRIGGER Edge Trigger
AnnaBridge 145:64910690c574 188 * @{
AnnaBridge 145:64910690c574 189 */
AnnaBridge 145:64910690c574 190 #define LL_EXTI_TRIGGER_NONE ((uint8_t)0x00U) /*!< No Trigger Mode */
AnnaBridge 145:64910690c574 191 #define LL_EXTI_TRIGGER_RISING ((uint8_t)0x01U) /*!< Trigger Rising Mode */
AnnaBridge 145:64910690c574 192 #define LL_EXTI_TRIGGER_FALLING ((uint8_t)0x02U) /*!< Trigger Falling Mode */
AnnaBridge 145:64910690c574 193 #define LL_EXTI_TRIGGER_RISING_FALLING ((uint8_t)0x03U) /*!< Trigger Rising & Falling Mode */
AnnaBridge 145:64910690c574 194
AnnaBridge 145:64910690c574 195 /**
AnnaBridge 145:64910690c574 196 * @}
AnnaBridge 145:64910690c574 197 */
AnnaBridge 145:64910690c574 198
AnnaBridge 145:64910690c574 199
AnnaBridge 145:64910690c574 200 #endif /*USE_FULL_LL_DRIVER*/
AnnaBridge 145:64910690c574 201
AnnaBridge 145:64910690c574 202
AnnaBridge 145:64910690c574 203 /**
AnnaBridge 145:64910690c574 204 * @}
AnnaBridge 145:64910690c574 205 */
AnnaBridge 145:64910690c574 206
AnnaBridge 145:64910690c574 207 /* Exported macro ------------------------------------------------------------*/
AnnaBridge 145:64910690c574 208 /** @defgroup EXTI_LL_Exported_Macros EXTI Exported Macros
AnnaBridge 145:64910690c574 209 * @{
AnnaBridge 145:64910690c574 210 */
AnnaBridge 145:64910690c574 211
AnnaBridge 145:64910690c574 212 /** @defgroup EXTI_LL_EM_WRITE_READ Common Write and read registers Macros
AnnaBridge 145:64910690c574 213 * @{
AnnaBridge 145:64910690c574 214 */
AnnaBridge 145:64910690c574 215
AnnaBridge 145:64910690c574 216 /**
AnnaBridge 145:64910690c574 217 * @brief Write a value in EXTI register
AnnaBridge 145:64910690c574 218 * @param __REG__ Register to be written
AnnaBridge 145:64910690c574 219 * @param __VALUE__ Value to be written in the register
AnnaBridge 145:64910690c574 220 * @retval None
AnnaBridge 145:64910690c574 221 */
AnnaBridge 145:64910690c574 222 #define LL_EXTI_WriteReg(__REG__, __VALUE__) WRITE_REG(EXTI->__REG__, (__VALUE__))
AnnaBridge 145:64910690c574 223
AnnaBridge 145:64910690c574 224 /**
AnnaBridge 145:64910690c574 225 * @brief Read a value in EXTI register
AnnaBridge 145:64910690c574 226 * @param __REG__ Register to be read
AnnaBridge 145:64910690c574 227 * @retval Register value
AnnaBridge 145:64910690c574 228 */
AnnaBridge 145:64910690c574 229 #define LL_EXTI_ReadReg(__REG__) READ_REG(EXTI->__REG__)
AnnaBridge 145:64910690c574 230 /**
AnnaBridge 145:64910690c574 231 * @}
AnnaBridge 145:64910690c574 232 */
AnnaBridge 145:64910690c574 233
AnnaBridge 145:64910690c574 234
AnnaBridge 145:64910690c574 235 /**
AnnaBridge 145:64910690c574 236 * @}
AnnaBridge 145:64910690c574 237 */
AnnaBridge 145:64910690c574 238
AnnaBridge 145:64910690c574 239
AnnaBridge 145:64910690c574 240
AnnaBridge 145:64910690c574 241 /* Exported functions --------------------------------------------------------*/
AnnaBridge 145:64910690c574 242 /** @defgroup EXTI_LL_Exported_Functions EXTI Exported Functions
AnnaBridge 145:64910690c574 243 * @{
AnnaBridge 145:64910690c574 244 */
AnnaBridge 145:64910690c574 245 /** @defgroup EXTI_LL_EF_IT_Management IT_Management
AnnaBridge 145:64910690c574 246 * @{
AnnaBridge 145:64910690c574 247 */
AnnaBridge 145:64910690c574 248
AnnaBridge 145:64910690c574 249 /**
AnnaBridge 145:64910690c574 250 * @brief Enable ExtiLine Interrupt request for Lines in range 0 to 31
AnnaBridge 145:64910690c574 251 * @note The reset value for the direct or internal lines (see RM)
AnnaBridge 145:64910690c574 252 * is set to 1 in order to enable the interrupt by default.
AnnaBridge 145:64910690c574 253 * Bits are set automatically at Power on.
AnnaBridge 145:64910690c574 254 * @rmtoll IMR IMx LL_EXTI_EnableIT_0_31
AnnaBridge 145:64910690c574 255 * @param ExtiLine This parameter can be one of the following values:
AnnaBridge 145:64910690c574 256 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 257 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 258 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 259 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 260 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 261 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 262 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 263 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 264 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 265 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 266 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 267 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 268 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 269 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 270 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 271 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 272 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 273 * @arg @ref LL_EXTI_LINE_17
AnnaBridge 145:64910690c574 274 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 275 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 276 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 277 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 278 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 279 * @arg @ref LL_EXTI_LINE_23(*)
AnnaBridge 145:64910690c574 280 * @arg @ref LL_EXTI_LINE_ALL_0_31
AnnaBridge 145:64910690c574 281 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 282 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 283 * @retval None
AnnaBridge 145:64910690c574 284 */
AnnaBridge 145:64910690c574 285 __STATIC_INLINE void LL_EXTI_EnableIT_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 286 {
AnnaBridge 145:64910690c574 287 SET_BIT(EXTI->IMR, ExtiLine);
AnnaBridge 145:64910690c574 288 }
AnnaBridge 145:64910690c574 289
AnnaBridge 145:64910690c574 290 /**
AnnaBridge 145:64910690c574 291 * @brief Disable ExtiLine Interrupt request for Lines in range 0 to 31
AnnaBridge 145:64910690c574 292 * @note The reset value for the direct or internal lines (see RM)
AnnaBridge 145:64910690c574 293 * is set to 1 in order to enable the interrupt by default.
AnnaBridge 145:64910690c574 294 * Bits are set automatically at Power on.
AnnaBridge 145:64910690c574 295 * @rmtoll IMR IMx LL_EXTI_DisableIT_0_31
AnnaBridge 145:64910690c574 296 * @param ExtiLine This parameter can be one of the following values:
AnnaBridge 145:64910690c574 297 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 298 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 299 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 300 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 301 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 302 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 303 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 304 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 305 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 306 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 307 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 308 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 309 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 310 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 311 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 312 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 313 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 314 * @arg @ref LL_EXTI_LINE_17
AnnaBridge 145:64910690c574 315 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 316 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 317 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 318 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 319 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 320 * @arg @ref LL_EXTI_LINE_23(*)
AnnaBridge 145:64910690c574 321 * @arg @ref LL_EXTI_LINE_ALL_0_31
AnnaBridge 145:64910690c574 322 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 323 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 324 * @retval None
AnnaBridge 145:64910690c574 325 */
AnnaBridge 145:64910690c574 326 __STATIC_INLINE void LL_EXTI_DisableIT_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 327 {
AnnaBridge 145:64910690c574 328 CLEAR_BIT(EXTI->IMR, ExtiLine);
AnnaBridge 145:64910690c574 329 }
AnnaBridge 145:64910690c574 330
AnnaBridge 145:64910690c574 331
AnnaBridge 145:64910690c574 332 /**
AnnaBridge 145:64910690c574 333 * @brief Indicate if ExtiLine Interrupt request is enabled for Lines in range 0 to 31
AnnaBridge 145:64910690c574 334 * @note The reset value for the direct or internal lines (see RM)
AnnaBridge 145:64910690c574 335 * is set to 1 in order to enable the interrupt by default.
AnnaBridge 145:64910690c574 336 * Bits are set automatically at Power on.
AnnaBridge 145:64910690c574 337 * @rmtoll IMR IMx LL_EXTI_IsEnabledIT_0_31
AnnaBridge 145:64910690c574 338 * @param ExtiLine This parameter can be one of the following values:
AnnaBridge 145:64910690c574 339 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 340 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 341 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 342 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 343 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 344 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 345 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 346 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 347 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 348 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 349 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 350 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 351 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 352 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 353 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 354 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 355 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 356 * @arg @ref LL_EXTI_LINE_17
AnnaBridge 145:64910690c574 357 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 358 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 359 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 360 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 361 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 362 * @arg @ref LL_EXTI_LINE_23(*)
AnnaBridge 145:64910690c574 363 * @arg @ref LL_EXTI_LINE_ALL_0_31
AnnaBridge 145:64910690c574 364 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 365 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 366 * @retval State of bit (1 or 0).
AnnaBridge 145:64910690c574 367 */
AnnaBridge 145:64910690c574 368 __STATIC_INLINE uint32_t LL_EXTI_IsEnabledIT_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 369 {
AnnaBridge 145:64910690c574 370 return (READ_BIT(EXTI->IMR, ExtiLine) == (ExtiLine));
AnnaBridge 145:64910690c574 371 }
AnnaBridge 145:64910690c574 372
AnnaBridge 145:64910690c574 373
AnnaBridge 145:64910690c574 374 /**
AnnaBridge 145:64910690c574 375 * @}
AnnaBridge 145:64910690c574 376 */
AnnaBridge 145:64910690c574 377
AnnaBridge 145:64910690c574 378 /** @defgroup EXTI_LL_EF_Event_Management Event_Management
AnnaBridge 145:64910690c574 379 * @{
AnnaBridge 145:64910690c574 380 */
AnnaBridge 145:64910690c574 381
AnnaBridge 145:64910690c574 382 /**
AnnaBridge 145:64910690c574 383 * @brief Enable ExtiLine Event request for Lines in range 0 to 31
AnnaBridge 145:64910690c574 384 * @rmtoll EMR EMx LL_EXTI_EnableEvent_0_31
AnnaBridge 145:64910690c574 385 * @param ExtiLine This parameter can be one of the following values:
AnnaBridge 145:64910690c574 386 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 387 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 388 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 389 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 390 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 391 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 392 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 393 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 394 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 395 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 396 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 397 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 398 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 399 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 400 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 401 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 402 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 403 * @arg @ref LL_EXTI_LINE_17
AnnaBridge 145:64910690c574 404 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 405 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 406 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 407 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 408 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 409 * @arg @ref LL_EXTI_LINE_23(*)
AnnaBridge 145:64910690c574 410 * @arg @ref LL_EXTI_LINE_ALL_0_31
AnnaBridge 145:64910690c574 411 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 412 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 413 * @retval None
AnnaBridge 145:64910690c574 414 */
AnnaBridge 145:64910690c574 415 __STATIC_INLINE void LL_EXTI_EnableEvent_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 416 {
AnnaBridge 145:64910690c574 417 SET_BIT(EXTI->EMR, ExtiLine);
AnnaBridge 145:64910690c574 418
AnnaBridge 145:64910690c574 419 }
AnnaBridge 145:64910690c574 420
AnnaBridge 145:64910690c574 421
AnnaBridge 145:64910690c574 422 /**
AnnaBridge 145:64910690c574 423 * @brief Disable ExtiLine Event request for Lines in range 0 to 31
AnnaBridge 145:64910690c574 424 * @rmtoll EMR EMx LL_EXTI_DisableEvent_0_31
AnnaBridge 145:64910690c574 425 * @param ExtiLine This parameter can be one of the following values:
AnnaBridge 145:64910690c574 426 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 427 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 428 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 429 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 430 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 431 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 432 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 433 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 434 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 435 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 436 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 437 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 438 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 439 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 440 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 441 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 442 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 443 * @arg @ref LL_EXTI_LINE_17
AnnaBridge 145:64910690c574 444 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 445 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 446 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 447 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 448 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 449 * @arg @ref LL_EXTI_LINE_23(*)
AnnaBridge 145:64910690c574 450 * @arg @ref LL_EXTI_LINE_ALL_0_31
AnnaBridge 145:64910690c574 451 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 452 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 453 * @retval None
AnnaBridge 145:64910690c574 454 */
AnnaBridge 145:64910690c574 455 __STATIC_INLINE void LL_EXTI_DisableEvent_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 456 {
AnnaBridge 145:64910690c574 457 CLEAR_BIT(EXTI->EMR, ExtiLine);
AnnaBridge 145:64910690c574 458 }
AnnaBridge 145:64910690c574 459
AnnaBridge 145:64910690c574 460
AnnaBridge 145:64910690c574 461 /**
AnnaBridge 145:64910690c574 462 * @brief Indicate if ExtiLine Event request is enabled for Lines in range 0 to 31
AnnaBridge 145:64910690c574 463 * @rmtoll EMR EMx LL_EXTI_IsEnabledEvent_0_31
AnnaBridge 145:64910690c574 464 * @param ExtiLine This parameter can be one of the following values:
AnnaBridge 145:64910690c574 465 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 466 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 467 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 468 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 469 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 470 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 471 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 472 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 473 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 474 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 475 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 476 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 477 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 478 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 479 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 480 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 481 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 482 * @arg @ref LL_EXTI_LINE_17
AnnaBridge 145:64910690c574 483 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 484 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 485 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 486 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 487 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 488 * @arg @ref LL_EXTI_LINE_23(*)
AnnaBridge 145:64910690c574 489 * @arg @ref LL_EXTI_LINE_ALL_0_31
AnnaBridge 145:64910690c574 490 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 491 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 492 * @retval State of bit (1 or 0).
AnnaBridge 145:64910690c574 493 */
AnnaBridge 145:64910690c574 494 __STATIC_INLINE uint32_t LL_EXTI_IsEnabledEvent_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 495 {
AnnaBridge 145:64910690c574 496 return (READ_BIT(EXTI->EMR, ExtiLine) == (ExtiLine));
AnnaBridge 145:64910690c574 497
AnnaBridge 145:64910690c574 498 }
AnnaBridge 145:64910690c574 499
AnnaBridge 145:64910690c574 500
AnnaBridge 145:64910690c574 501 /**
AnnaBridge 145:64910690c574 502 * @}
AnnaBridge 145:64910690c574 503 */
AnnaBridge 145:64910690c574 504
AnnaBridge 145:64910690c574 505 /** @defgroup EXTI_LL_EF_Rising_Trigger_Management Rising_Trigger_Management
AnnaBridge 145:64910690c574 506 * @{
AnnaBridge 145:64910690c574 507 */
AnnaBridge 145:64910690c574 508
AnnaBridge 145:64910690c574 509 /**
AnnaBridge 145:64910690c574 510 * @brief Enable ExtiLine Rising Edge Trigger for Lines in range 0 to 31
AnnaBridge 145:64910690c574 511 * @note The configurable wakeup lines are edge-triggered. No glitch must be
AnnaBridge 145:64910690c574 512 * generated on these lines. If a rising edge on a configurable interrupt
AnnaBridge 145:64910690c574 513 * line occurs during a write operation in the EXTI_RTSR register, the
AnnaBridge 145:64910690c574 514 * pending bit is not set.
AnnaBridge 145:64910690c574 515 * Rising and falling edge triggers can be set for
AnnaBridge 145:64910690c574 516 * the same interrupt line. In this case, both generate a trigger
AnnaBridge 145:64910690c574 517 * condition.
AnnaBridge 145:64910690c574 518 * @rmtoll RTSR RTx LL_EXTI_EnableRisingTrig_0_31
AnnaBridge 145:64910690c574 519 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 520 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 521 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 522 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 523 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 524 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 525 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 526 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 527 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 528 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 529 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 530 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 531 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 532 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 533 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 534 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 535 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 536 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 537 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 538 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 539 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 540 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 541 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 542 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 543 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 544 * @retval None
AnnaBridge 145:64910690c574 545 */
AnnaBridge 145:64910690c574 546 __STATIC_INLINE void LL_EXTI_EnableRisingTrig_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 547 {
AnnaBridge 145:64910690c574 548 SET_BIT(EXTI->RTSR, ExtiLine);
AnnaBridge 145:64910690c574 549
AnnaBridge 145:64910690c574 550 }
AnnaBridge 145:64910690c574 551
AnnaBridge 145:64910690c574 552
AnnaBridge 145:64910690c574 553 /**
AnnaBridge 145:64910690c574 554 * @brief Disable ExtiLine Rising Edge Trigger for Lines in range 0 to 31
AnnaBridge 145:64910690c574 555 * @note The configurable wakeup lines are edge-triggered. No glitch must be
AnnaBridge 145:64910690c574 556 * generated on these lines. If a rising edge on a configurable interrupt
AnnaBridge 145:64910690c574 557 * line occurs during a write operation in the EXTI_RTSR register, the
AnnaBridge 145:64910690c574 558 * pending bit is not set.
AnnaBridge 145:64910690c574 559 * Rising and falling edge triggers can be set for
AnnaBridge 145:64910690c574 560 * the same interrupt line. In this case, both generate a trigger
AnnaBridge 145:64910690c574 561 * condition.
AnnaBridge 145:64910690c574 562 * @rmtoll RTSR RTx LL_EXTI_DisableRisingTrig_0_31
AnnaBridge 145:64910690c574 563 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 564 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 565 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 566 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 567 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 568 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 569 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 570 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 571 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 572 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 573 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 574 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 575 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 576 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 577 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 578 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 579 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 580 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 581 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 582 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 583 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 584 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 585 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 586 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 587 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 588 * @retval None
AnnaBridge 145:64910690c574 589 */
AnnaBridge 145:64910690c574 590 __STATIC_INLINE void LL_EXTI_DisableRisingTrig_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 591 {
AnnaBridge 145:64910690c574 592 CLEAR_BIT(EXTI->RTSR, ExtiLine);
AnnaBridge 145:64910690c574 593
AnnaBridge 145:64910690c574 594 }
AnnaBridge 145:64910690c574 595
AnnaBridge 145:64910690c574 596
AnnaBridge 145:64910690c574 597 /**
AnnaBridge 145:64910690c574 598 * @brief Check if rising edge trigger is enabled for Lines in range 0 to 31
AnnaBridge 145:64910690c574 599 * @rmtoll RTSR RTx LL_EXTI_IsEnabledRisingTrig_0_31
AnnaBridge 145:64910690c574 600 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 601 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 602 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 603 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 604 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 605 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 606 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 607 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 608 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 609 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 610 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 611 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 612 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 613 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 614 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 615 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 616 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 617 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 618 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 619 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 620 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 621 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 622 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 623 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 624 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 625 * @retval State of bit (1 or 0).
AnnaBridge 145:64910690c574 626 */
AnnaBridge 145:64910690c574 627 __STATIC_INLINE uint32_t LL_EXTI_IsEnabledRisingTrig_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 628 {
AnnaBridge 145:64910690c574 629 return (READ_BIT(EXTI->RTSR, ExtiLine) == (ExtiLine));
AnnaBridge 145:64910690c574 630 }
AnnaBridge 145:64910690c574 631
AnnaBridge 145:64910690c574 632
AnnaBridge 145:64910690c574 633 /**
AnnaBridge 145:64910690c574 634 * @}
AnnaBridge 145:64910690c574 635 */
AnnaBridge 145:64910690c574 636
AnnaBridge 145:64910690c574 637 /** @defgroup EXTI_LL_EF_Falling_Trigger_Management Falling_Trigger_Management
AnnaBridge 145:64910690c574 638 * @{
AnnaBridge 145:64910690c574 639 */
AnnaBridge 145:64910690c574 640
AnnaBridge 145:64910690c574 641 /**
AnnaBridge 145:64910690c574 642 * @brief Enable ExtiLine Falling Edge Trigger for Lines in range 0 to 31
AnnaBridge 145:64910690c574 643 * @note The configurable wakeup lines are edge-triggered. No glitch must be
AnnaBridge 145:64910690c574 644 * generated on these lines. If a falling edge on a configurable interrupt
AnnaBridge 145:64910690c574 645 * line occurs during a write operation in the EXTI_FTSR register, the
AnnaBridge 145:64910690c574 646 * pending bit is not set.
AnnaBridge 145:64910690c574 647 * Rising and falling edge triggers can be set for
AnnaBridge 145:64910690c574 648 * the same interrupt line. In this case, both generate a trigger
AnnaBridge 145:64910690c574 649 * condition.
AnnaBridge 145:64910690c574 650 * @rmtoll FTSR FTx LL_EXTI_EnableFallingTrig_0_31
AnnaBridge 145:64910690c574 651 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 652 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 653 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 654 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 655 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 656 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 657 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 658 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 659 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 660 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 661 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 662 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 663 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 664 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 665 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 666 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 667 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 668 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 669 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 670 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 671 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 672 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 673 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 674 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 675 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 676 * @retval None
AnnaBridge 145:64910690c574 677 */
AnnaBridge 145:64910690c574 678 __STATIC_INLINE void LL_EXTI_EnableFallingTrig_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 679 {
AnnaBridge 145:64910690c574 680 SET_BIT(EXTI->FTSR, ExtiLine);
AnnaBridge 145:64910690c574 681 }
AnnaBridge 145:64910690c574 682
AnnaBridge 145:64910690c574 683
AnnaBridge 145:64910690c574 684 /**
AnnaBridge 145:64910690c574 685 * @brief Disable ExtiLine Falling Edge Trigger for Lines in range 0 to 31
AnnaBridge 145:64910690c574 686 * @note The configurable wakeup lines are edge-triggered. No glitch must be
AnnaBridge 145:64910690c574 687 * generated on these lines. If a Falling edge on a configurable interrupt
AnnaBridge 145:64910690c574 688 * line occurs during a write operation in the EXTI_FTSR register, the
AnnaBridge 145:64910690c574 689 * pending bit is not set.
AnnaBridge 145:64910690c574 690 * Rising and falling edge triggers can be set for the same interrupt line.
AnnaBridge 145:64910690c574 691 * In this case, both generate a trigger condition.
AnnaBridge 145:64910690c574 692 * @rmtoll FTSR FTx LL_EXTI_DisableFallingTrig_0_31
AnnaBridge 145:64910690c574 693 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 694 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 695 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 696 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 697 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 698 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 699 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 700 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 701 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 702 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 703 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 704 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 705 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 706 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 707 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 708 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 709 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 710 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 711 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 712 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 713 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 714 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 715 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 716 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 717 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 718 * @retval None
AnnaBridge 145:64910690c574 719 */
AnnaBridge 145:64910690c574 720 __STATIC_INLINE void LL_EXTI_DisableFallingTrig_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 721 {
AnnaBridge 145:64910690c574 722 CLEAR_BIT(EXTI->FTSR, ExtiLine);
AnnaBridge 145:64910690c574 723 }
AnnaBridge 145:64910690c574 724
AnnaBridge 145:64910690c574 725
AnnaBridge 145:64910690c574 726 /**
AnnaBridge 145:64910690c574 727 * @brief Check if falling edge trigger is enabled for Lines in range 0 to 31
AnnaBridge 145:64910690c574 728 * @rmtoll FTSR FTx LL_EXTI_IsEnabledFallingTrig_0_31
AnnaBridge 145:64910690c574 729 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 730 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 731 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 732 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 733 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 734 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 735 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 736 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 737 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 738 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 739 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 740 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 741 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 742 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 743 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 744 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 745 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 746 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 747 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 748 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 749 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 750 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 751 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 752 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 753 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 754 * @retval State of bit (1 or 0).
AnnaBridge 145:64910690c574 755 */
AnnaBridge 145:64910690c574 756 __STATIC_INLINE uint32_t LL_EXTI_IsEnabledFallingTrig_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 757 {
AnnaBridge 145:64910690c574 758 return (READ_BIT(EXTI->FTSR, ExtiLine) == (ExtiLine));
AnnaBridge 145:64910690c574 759 }
AnnaBridge 145:64910690c574 760
AnnaBridge 145:64910690c574 761
AnnaBridge 145:64910690c574 762 /**
AnnaBridge 145:64910690c574 763 * @}
AnnaBridge 145:64910690c574 764 */
AnnaBridge 145:64910690c574 765
AnnaBridge 145:64910690c574 766 /** @defgroup EXTI_LL_EF_Software_Interrupt_Management Software_Interrupt_Management
AnnaBridge 145:64910690c574 767 * @{
AnnaBridge 145:64910690c574 768 */
AnnaBridge 145:64910690c574 769
AnnaBridge 145:64910690c574 770 /**
AnnaBridge 145:64910690c574 771 * @brief Generate a software Interrupt Event for Lines in range 0 to 31
AnnaBridge 145:64910690c574 772 * @note If the interrupt is enabled on this line in the EXTI_IMR, writing a 1 to
AnnaBridge 145:64910690c574 773 * this bit when it is at '0' sets the corresponding pending bit in EXTI_PR
AnnaBridge 145:64910690c574 774 * resulting in an interrupt request generation.
AnnaBridge 145:64910690c574 775 * This bit is cleared by clearing the corresponding bit in the EXTI_PR
AnnaBridge 145:64910690c574 776 * register (by writing a 1 into the bit)
AnnaBridge 145:64910690c574 777 * @rmtoll SWIER SWIx LL_EXTI_GenerateSWI_0_31
AnnaBridge 145:64910690c574 778 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 779 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 780 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 781 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 782 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 783 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 784 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 785 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 786 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 787 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 788 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 789 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 790 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 791 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 792 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 793 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 794 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 795 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 796 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 797 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 798 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 799 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 800 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 801 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 802 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 803 * @retval None
AnnaBridge 145:64910690c574 804 */
AnnaBridge 145:64910690c574 805 __STATIC_INLINE void LL_EXTI_GenerateSWI_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 806 {
AnnaBridge 145:64910690c574 807 SET_BIT(EXTI->SWIER, ExtiLine);
AnnaBridge 145:64910690c574 808 }
AnnaBridge 145:64910690c574 809
AnnaBridge 145:64910690c574 810
AnnaBridge 145:64910690c574 811 /**
AnnaBridge 145:64910690c574 812 * @}
AnnaBridge 145:64910690c574 813 */
AnnaBridge 145:64910690c574 814
AnnaBridge 145:64910690c574 815 /** @defgroup EXTI_LL_EF_Flag_Management Flag_Management
AnnaBridge 145:64910690c574 816 * @{
AnnaBridge 145:64910690c574 817 */
AnnaBridge 145:64910690c574 818
AnnaBridge 145:64910690c574 819 /**
AnnaBridge 145:64910690c574 820 * @brief Check if the ExtLine Flag is set or not for Lines in range 0 to 31
AnnaBridge 145:64910690c574 821 * @note This bit is set when the selected edge event arrives on the interrupt
AnnaBridge 145:64910690c574 822 * line. This bit is cleared by writing a 1 to the bit.
AnnaBridge 145:64910690c574 823 * @rmtoll PR PIFx LL_EXTI_IsActiveFlag_0_31
AnnaBridge 145:64910690c574 824 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 825 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 826 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 827 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 828 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 829 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 830 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 831 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 832 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 833 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 834 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 835 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 836 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 837 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 838 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 839 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 840 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 841 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 842 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 843 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 844 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 845 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 846 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 847 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 848 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 849 * @retval State of bit (1 or 0).
AnnaBridge 145:64910690c574 850 */
AnnaBridge 145:64910690c574 851 __STATIC_INLINE uint32_t LL_EXTI_IsActiveFlag_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 852 {
AnnaBridge 145:64910690c574 853 return (READ_BIT(EXTI->PR, ExtiLine) == (ExtiLine));
AnnaBridge 145:64910690c574 854 }
AnnaBridge 145:64910690c574 855
AnnaBridge 145:64910690c574 856
AnnaBridge 145:64910690c574 857 /**
AnnaBridge 145:64910690c574 858 * @brief Read ExtLine Combination Flag for Lines in range 0 to 31
AnnaBridge 145:64910690c574 859 * @note This bit is set when the selected edge event arrives on the interrupt
AnnaBridge 145:64910690c574 860 * line. This bit is cleared by writing a 1 to the bit.
AnnaBridge 145:64910690c574 861 * @rmtoll PR PIFx LL_EXTI_ReadFlag_0_31
AnnaBridge 145:64910690c574 862 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 863 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 864 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 865 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 866 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 867 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 868 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 869 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 870 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 871 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 872 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 873 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 874 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 875 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 876 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 877 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 878 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 879 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 880 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 881 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 882 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 883 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 884 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 885 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 886 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 887 * @retval @note This bit is set when the selected edge event arrives on the interrupt
AnnaBridge 145:64910690c574 888 */
AnnaBridge 145:64910690c574 889 __STATIC_INLINE uint32_t LL_EXTI_ReadFlag_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 890 {
AnnaBridge 145:64910690c574 891 return (uint32_t)(READ_BIT(EXTI->PR, ExtiLine));
AnnaBridge 145:64910690c574 892 }
AnnaBridge 145:64910690c574 893
AnnaBridge 145:64910690c574 894
AnnaBridge 145:64910690c574 895 /**
AnnaBridge 145:64910690c574 896 * @brief Clear ExtLine Flags for Lines in range 0 to 31
AnnaBridge 145:64910690c574 897 * @note This bit is set when the selected edge event arrives on the interrupt
AnnaBridge 145:64910690c574 898 * line. This bit is cleared by writing a 1 to the bit.
AnnaBridge 145:64910690c574 899 * @rmtoll PR PIFx LL_EXTI_ClearFlag_0_31
AnnaBridge 145:64910690c574 900 * @param ExtiLine This parameter can be a combination of the following values:
AnnaBridge 145:64910690c574 901 * @arg @ref LL_EXTI_LINE_0
AnnaBridge 145:64910690c574 902 * @arg @ref LL_EXTI_LINE_1
AnnaBridge 145:64910690c574 903 * @arg @ref LL_EXTI_LINE_2
AnnaBridge 145:64910690c574 904 * @arg @ref LL_EXTI_LINE_3
AnnaBridge 145:64910690c574 905 * @arg @ref LL_EXTI_LINE_4
AnnaBridge 145:64910690c574 906 * @arg @ref LL_EXTI_LINE_5
AnnaBridge 145:64910690c574 907 * @arg @ref LL_EXTI_LINE_6
AnnaBridge 145:64910690c574 908 * @arg @ref LL_EXTI_LINE_7
AnnaBridge 145:64910690c574 909 * @arg @ref LL_EXTI_LINE_8
AnnaBridge 145:64910690c574 910 * @arg @ref LL_EXTI_LINE_9
AnnaBridge 145:64910690c574 911 * @arg @ref LL_EXTI_LINE_10
AnnaBridge 145:64910690c574 912 * @arg @ref LL_EXTI_LINE_11
AnnaBridge 145:64910690c574 913 * @arg @ref LL_EXTI_LINE_12
AnnaBridge 145:64910690c574 914 * @arg @ref LL_EXTI_LINE_13
AnnaBridge 145:64910690c574 915 * @arg @ref LL_EXTI_LINE_14
AnnaBridge 145:64910690c574 916 * @arg @ref LL_EXTI_LINE_15
AnnaBridge 145:64910690c574 917 * @arg @ref LL_EXTI_LINE_16
AnnaBridge 145:64910690c574 918 * @arg @ref LL_EXTI_LINE_18
AnnaBridge 145:64910690c574 919 * @arg @ref LL_EXTI_LINE_19(*)
AnnaBridge 145:64910690c574 920 * @arg @ref LL_EXTI_LINE_20(*)
AnnaBridge 145:64910690c574 921 * @arg @ref LL_EXTI_LINE_21
AnnaBridge 145:64910690c574 922 * @arg @ref LL_EXTI_LINE_22
AnnaBridge 145:64910690c574 923 * @note (*): Available in some devices
AnnaBridge 145:64910690c574 924 * @note Please check each device line mapping for EXTI Line availability
AnnaBridge 145:64910690c574 925 * @retval None
AnnaBridge 145:64910690c574 926 */
AnnaBridge 145:64910690c574 927 __STATIC_INLINE void LL_EXTI_ClearFlag_0_31(uint32_t ExtiLine)
AnnaBridge 145:64910690c574 928 {
AnnaBridge 145:64910690c574 929 WRITE_REG(EXTI->PR, ExtiLine);
AnnaBridge 145:64910690c574 930 }
AnnaBridge 145:64910690c574 931
AnnaBridge 145:64910690c574 932
AnnaBridge 145:64910690c574 933 /**
AnnaBridge 145:64910690c574 934 * @}
AnnaBridge 145:64910690c574 935 */
AnnaBridge 145:64910690c574 936
AnnaBridge 145:64910690c574 937 #if defined(USE_FULL_LL_DRIVER)
AnnaBridge 145:64910690c574 938 /** @defgroup EXTI_LL_EF_Init Initialization and de-initialization functions
AnnaBridge 145:64910690c574 939 * @{
AnnaBridge 145:64910690c574 940 */
AnnaBridge 145:64910690c574 941
AnnaBridge 145:64910690c574 942 uint32_t LL_EXTI_Init(LL_EXTI_InitTypeDef *EXTI_InitStruct);
AnnaBridge 145:64910690c574 943 uint32_t LL_EXTI_DeInit(void);
AnnaBridge 145:64910690c574 944 void LL_EXTI_StructInit(LL_EXTI_InitTypeDef *EXTI_InitStruct);
AnnaBridge 145:64910690c574 945
AnnaBridge 145:64910690c574 946
AnnaBridge 145:64910690c574 947 /**
AnnaBridge 145:64910690c574 948 * @}
AnnaBridge 145:64910690c574 949 */
AnnaBridge 145:64910690c574 950 #endif /* USE_FULL_LL_DRIVER */
AnnaBridge 145:64910690c574 951
AnnaBridge 145:64910690c574 952 /**
AnnaBridge 145:64910690c574 953 * @}
AnnaBridge 145:64910690c574 954 */
AnnaBridge 145:64910690c574 955
AnnaBridge 145:64910690c574 956 /**
AnnaBridge 145:64910690c574 957 * @}
AnnaBridge 145:64910690c574 958 */
AnnaBridge 145:64910690c574 959
AnnaBridge 145:64910690c574 960 #endif /* EXTI */
AnnaBridge 145:64910690c574 961
AnnaBridge 145:64910690c574 962 /**
AnnaBridge 145:64910690c574 963 * @}
AnnaBridge 145:64910690c574 964 */
AnnaBridge 145:64910690c574 965
AnnaBridge 145:64910690c574 966 #ifdef __cplusplus
AnnaBridge 145:64910690c574 967 }
AnnaBridge 145:64910690c574 968 #endif
AnnaBridge 145:64910690c574 969
AnnaBridge 145:64910690c574 970 #endif /* __STM32F4xx_LL_EXTI_H */
AnnaBridge 145:64910690c574 971
AnnaBridge 145:64910690c574 972 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/