21 #ifndef STM32F1xx_HAL_EXTI_H 22 #define STM32F1xx_HAL_EXTI_H 51 HAL_EXTI_COMMON_CB_ID = 0x00U
60 void (* PendingCallback)(void);
91 #define EXTI_LINE_0 (EXTI_GPIO | 0x00u) 92 #define EXTI_LINE_1 (EXTI_GPIO | 0x01u) 93 #define EXTI_LINE_2 (EXTI_GPIO | 0x02u) 94 #define EXTI_LINE_3 (EXTI_GPIO | 0x03u) 95 #define EXTI_LINE_4 (EXTI_GPIO | 0x04u) 96 #define EXTI_LINE_5 (EXTI_GPIO | 0x05u) 97 #define EXTI_LINE_6 (EXTI_GPIO | 0x06u) 98 #define EXTI_LINE_7 (EXTI_GPIO | 0x07u) 99 #define EXTI_LINE_8 (EXTI_GPIO | 0x08u) 100 #define EXTI_LINE_9 (EXTI_GPIO | 0x09u) 101 #define EXTI_LINE_10 (EXTI_GPIO | 0x0Au) 102 #define EXTI_LINE_11 (EXTI_GPIO | 0x0Bu) 103 #define EXTI_LINE_12 (EXTI_GPIO | 0x0Cu) 104 #define EXTI_LINE_13 (EXTI_GPIO | 0x0Du) 105 #define EXTI_LINE_14 (EXTI_GPIO | 0x0Eu) 106 #define EXTI_LINE_15 (EXTI_GPIO | 0x0Fu) 107 #define EXTI_LINE_16 (EXTI_CONFIG | 0x10u) 108 #define EXTI_LINE_17 (EXTI_CONFIG | 0x11u) 109 #if defined(EXTI_IMR_IM18) 110 #define EXTI_LINE_18 (EXTI_CONFIG | 0x12u) 112 #if defined(EXTI_IMR_IM19) 113 #define EXTI_LINE_19 (EXTI_CONFIG | 0x13u) 123 #define EXTI_MODE_NONE 0x00000000u 124 #define EXTI_MODE_INTERRUPT 0x00000001u 125 #define EXTI_MODE_EVENT 0x00000002u 133 #define EXTI_TRIGGER_NONE 0x00000000u 134 #define EXTI_TRIGGER_RISING 0x00000001u 135 #define EXTI_TRIGGER_FALLING 0x00000002u 136 #define EXTI_TRIGGER_RISING_FALLING (EXTI_TRIGGER_RISING | EXTI_TRIGGER_FALLING) 145 #define EXTI_GPIOA 0x00000000u 146 #define EXTI_GPIOB 0x00000001u 147 #define EXTI_GPIOC 0x00000002u 148 #define EXTI_GPIOD 0x00000003u 150 #define EXTI_GPIOE 0x00000004u 153 #define EXTI_GPIOF 0x00000005u 156 #define EXTI_GPIOG 0x00000006u 182 #define EXTI_PROPERTY_SHIFT 24u 183 #define EXTI_CONFIG (0x02uL << EXTI_PROPERTY_SHIFT) 184 #define EXTI_GPIO ((0x04uL << EXTI_PROPERTY_SHIFT) | EXTI_CONFIG) 185 #define EXTI_PROPERTY_MASK (EXTI_CONFIG | EXTI_GPIO) 190 #define EXTI_PIN_MASK 0x0000001Fu 195 #define EXTI_MODE_MASK (EXTI_MODE_EVENT | EXTI_MODE_INTERRUPT) 200 #define EXTI_TRIGGER_MASK (EXTI_TRIGGER_RISING | EXTI_TRIGGER_FALLING) 205 #if defined(EXTI_IMR_IM19) 206 #define EXTI_LINE_NB 20UL 207 #elif defined(EXTI_IMR_IM18) 208 #define EXTI_LINE_NB 19UL 210 #define EXTI_LINE_NB 18UL 220 #define IS_EXTI_LINE(__LINE__) ((((__LINE__) & ~(EXTI_PROPERTY_MASK | EXTI_PIN_MASK)) == 0x00u) && \ 221 ((((__LINE__) & EXTI_PROPERTY_MASK) == EXTI_CONFIG) || \ 222 (((__LINE__) & EXTI_PROPERTY_MASK) == EXTI_GPIO)) && \ 223 (((__LINE__) & EXTI_PIN_MASK) < EXTI_LINE_NB)) 225 #define IS_EXTI_MODE(__LINE__) ((((__LINE__) & EXTI_MODE_MASK) != 0x00u) && \ 226 (((__LINE__) & ~EXTI_MODE_MASK) == 0x00u)) 228 #define IS_EXTI_TRIGGER(__LINE__) (((__LINE__) & ~EXTI_TRIGGER_MASK) == 0x00u) 230 #define IS_EXTI_PENDING_EDGE(__LINE__) ((__LINE__) == EXTI_TRIGGER_RISING_FALLING) 232 #define IS_EXTI_CONFIG_LINE(__LINE__) (((__LINE__) & EXTI_CONFIG) != 0x00u) 235 #define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ 236 ((__PORT__) == EXTI_GPIOB) || \ 237 ((__PORT__) == EXTI_GPIOC) || \ 238 ((__PORT__) == EXTI_GPIOD) || \ 239 ((__PORT__) == EXTI_GPIOE) || \ 240 ((__PORT__) == EXTI_GPIOF) || \ 241 ((__PORT__) == EXTI_GPIOG)) 242 #elif defined (GPIOF) 243 #define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ 244 ((__PORT__) == EXTI_GPIOB) || \ 245 ((__PORT__) == EXTI_GPIOC) || \ 246 ((__PORT__) == EXTI_GPIOD) || \ 247 ((__PORT__) == EXTI_GPIOE) || \ 248 ((__PORT__) == EXTI_GPIOF)) 249 #elif defined (GPIOE) 250 #define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ 251 ((__PORT__) == EXTI_GPIOB) || \ 252 ((__PORT__) == EXTI_GPIOC) || \ 253 ((__PORT__) == EXTI_GPIOD) || \ 254 ((__PORT__) == EXTI_GPIOE)) 256 #define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ 257 ((__PORT__) == EXTI_GPIOB) || \ 258 ((__PORT__) == EXTI_GPIOC) || \ 259 ((__PORT__) == EXTI_GPIOD)) 262 #define IS_EXTI_GPIO_PIN(__PIN__) ((__PIN__) < 16u) uint32_t GPIOSel
Definition: stm32f1xx_hal_exti.h:74
This file contains HAL common defines, enumeration, macros and structures definitions.
EXTI Handle structure definition.
Definition: stm32f1xx_hal_exti.h:57
EXTI_CallbackIDTypeDef
HAL EXTI common Callback ID enumeration definition.
Definition: stm32f1xx_hal_exti.h:49
uint32_t Trigger
Definition: stm32f1xx_hal_exti.h:72
EXTI Configuration structure definition.
Definition: stm32f1xx_hal_exti.h:66
HAL_StatusTypeDef
HAL Status structures definition.
Definition: stm32f1xx_hal_def.h:39
uint32_t Mode
Definition: stm32f1xx_hal_exti.h:70
uint32_t Line
Definition: stm32f1xx_hal_exti.h:59
uint32_t Line
Definition: stm32f1xx_hal_exti.h:68