18#if defined(USE_FULL_LL_DRIVER)
23#include "stm32_assert.h"
25#define assert_param(expr) ((void)0U)
46#define IS_LL_EXTI_LINE_0_31(__VALUE__) (((__VALUE__) & ~LL_EXTI_LINE_ALL_0_31) == 0x00000000U)
48#define IS_LL_EXTI_MODE(__VALUE__) (((__VALUE__) == LL_EXTI_MODE_IT) \
49 || ((__VALUE__) == LL_EXTI_MODE_EVENT) \
50 || ((__VALUE__) == LL_EXTI_MODE_IT_EVENT))
53#define IS_LL_EXTI_TRIGGER(__VALUE__) (((__VALUE__) == LL_EXTI_TRIGGER_NONE) \
54 || ((__VALUE__) == LL_EXTI_TRIGGER_RISING) \
55 || ((__VALUE__) == LL_EXTI_TRIGGER_FALLING) \
56 || ((__VALUE__) == LL_EXTI_TRIGGER_RISING_FALLING))
79uint32_t LL_EXTI_DeInit(
void)
82 LL_EXTI_WriteReg(IMR, 0x00000000U);
84 LL_EXTI_WriteReg(EMR, 0x00000000U);
86 LL_EXTI_WriteReg(RTSR, 0x00000000U);
88 LL_EXTI_WriteReg(FTSR, 0x00000000U);
90 LL_EXTI_WriteReg(SWIER, 0x00000000U);
92 LL_EXTI_WriteReg(PR, 0x00FFFFFFU);
104uint32_t LL_EXTI_Init(LL_EXTI_InitTypeDef *EXTI_InitStruct)
106 ErrorStatus status = SUCCESS;
108 assert_param(IS_LL_EXTI_LINE_0_31(EXTI_InitStruct->Line_0_31));
109 assert_param(IS_FUNCTIONAL_STATE(EXTI_InitStruct->LineCommand));
113 if (EXTI_InitStruct->LineCommand != DISABLE)
115 assert_param(IS_LL_EXTI_TRIGGER(EXTI_InitStruct->Trigger));
118 if (EXTI_InitStruct->Line_0_31 != LL_EXTI_LINE_NONE)
120 switch (EXTI_InitStruct->Mode)
122 case LL_EXTI_MODE_IT:
124 LL_EXTI_DisableEvent_0_31(EXTI_InitStruct->Line_0_31);
126 LL_EXTI_EnableIT_0_31(EXTI_InitStruct->Line_0_31);
128 case LL_EXTI_MODE_EVENT:
130 LL_EXTI_DisableIT_0_31(EXTI_InitStruct->Line_0_31);
132 LL_EXTI_EnableEvent_0_31(EXTI_InitStruct->Line_0_31);
134 case LL_EXTI_MODE_IT_EVENT:
136 LL_EXTI_EnableIT_0_31(EXTI_InitStruct->Line_0_31);
137 LL_EXTI_EnableEvent_0_31(EXTI_InitStruct->Line_0_31);
143 if (EXTI_InitStruct->Trigger != LL_EXTI_TRIGGER_NONE)
145 switch (EXTI_InitStruct->Trigger)
147 case LL_EXTI_TRIGGER_RISING:
149 LL_EXTI_DisableFallingTrig_0_31(EXTI_InitStruct->Line_0_31);
151 LL_EXTI_EnableRisingTrig_0_31(EXTI_InitStruct->Line_0_31);
153 case LL_EXTI_TRIGGER_FALLING:
155 LL_EXTI_DisableRisingTrig_0_31(EXTI_InitStruct->Line_0_31);
157 LL_EXTI_EnableFallingTrig_0_31(EXTI_InitStruct->Line_0_31);
159 case LL_EXTI_TRIGGER_RISING_FALLING:
160 LL_EXTI_EnableRisingTrig_0_31(EXTI_InitStruct->Line_0_31);
161 LL_EXTI_EnableFallingTrig_0_31(EXTI_InitStruct->Line_0_31);
174 LL_EXTI_DisableIT_0_31(EXTI_InitStruct->Line_0_31);
175 LL_EXTI_DisableEvent_0_31(EXTI_InitStruct->Line_0_31);
185void LL_EXTI_StructInit(LL_EXTI_InitTypeDef *EXTI_InitStruct)
187 EXTI_InitStruct->Line_0_31 = LL_EXTI_LINE_NONE;
188 EXTI_InitStruct->LineCommand = DISABLE;
189 EXTI_InitStruct->Mode = LL_EXTI_MODE_IT;
190 EXTI_InitStruct->Trigger = LL_EXTI_TRIGGER_FALLING;
#define assert_param(expr)
Header file of EXTI LL module.