STM32G474xx HAL 用户手册
stm32g4xx_ll_exti.h
转到此文件的文档。
00001 /**
00002   ******************************************************************************
00003   * @file    stm32g4xx_ll_exti.h
00004   * @author  MCD Application Team
00005   * @brief   EXTI LL模块的头文件。
00006   ******************************************************************************
00007   * @attention
00008   *
00009   * Copyright (c) 2019 STMicroelectronics.
00010   * All rights reserved.
00011   *
00012   * This software is licensed under terms that can be found in the LICENSE file
00013   * in the root directory of this software component.
00014   * If no LICENSE file comes with this software, it is provided AS-IS.
00015   *
00016   ******************************************************************************
00017   */
00018 
00019 /* 定义防止递归包含 -------------------------------------*/
00020 #ifndef __STM32G4xx_LL_EXTI_H
00021 #define __STM32G4xx_LL_EXTI_H
00022 
00023 #ifdef __cplusplus
00024 extern "C" {
00025 #endif
00026 
00027 /* 包含 ------------------------------------------------------------------*/
00028 #include "stm32g4xx.h"
00029 
00030 /** @addtogroup STM32G4xx_LL_Driver
00031   * @{
00032   */
00033 
00034 #if defined (EXTI)
00035 
00036 /** @defgroup EXTI_LL EXTI
00037   * @{
00038   */
00039 
00040 /* 私有类型 -------------------------------------------------------------*/
00041 /* 私有变量 ---------------------------------------------------------*/
00042 /* 私有常量 ---------------------------------------------------------*/
00043 /* 私有宏 ------------------------------------------------------------*/
00044 #if defined(USE_FULL_LL_DRIVER)
00045 /** @defgroup EXTI_LL_Private_Macros EXTI 私有宏
00046   * @{
00047   */
00048 /**
00049   * @}
00050   */
00051 #endif /*USE_FULL_LL_DRIVER*/
00052 /* 导出类型 ------------------------------------------------------------*/
00053 #if defined(USE_FULL_LL_DRIVER)
00054 /** @defgroup EXTI_LL_ES_INIT EXTI 导出初始化结构
00055   * @{
00056   */
00057 typedef struct
00058 {
00059 
00060   uint32_t Line_0_31;           /*!< 指定要为范围0到31的线路启用或禁用的EXTI线路
00061                                      此参数可以是 @ref EXTI_LL_EC_LINE 的任意组合 */
00062 
00063   uint32_t Line_32_63;          /*!< 指定要为范围32到63的线路启用或禁用的EXTI线路
00064                                      此参数可以是 @ref EXTI_LL_EC_LINE 的任意组合 */
00065 
00066   FunctionalState LineCommand;  /*!< 指定所选EXTI线路的新状态。
00067                                      此参数可以设置为ENABLE或DISABLE */
00068 
00069   uint8_t Mode;                 /*!< 指定EXTI线路的模式。
00070                                      此参数可以是 @ref EXTI_LL_EC_MODE 的值。 */
00071 
00072   uint8_t Trigger;              /*!< 指定EXTI线路的触发信号有效边沿。
00073                                      此参数可以是 @ref EXTI_LL_EC_TRIGGER 的值。 */
00074 } LL_EXTI_InitTypeDef;
00075 
00076 /**
00077   * @}
00078   */
00079 #endif /*USE_FULL_LL_DRIVER*/
00080 
00081 /* 导出常量 --------------------------------------------------------*/
00082 /** @defgroup EXTI_LL_Exported_Constants EXTI 导出常量
00083   * @{
00084   */
00085 
00086 /** @defgroup EXTI_LL_EC_LINE LINE
00087   * @{
00088   */
00089 #define LL_EXTI_LINE_0                 EXTI_IMR1_IM0           /*!< 扩展线路0 */
00090 #define LL_EXTI_LINE_1                 EXTI_IMR1_IM1           /*!< 扩展线路1 */
00091 #define LL_EXTI_LINE_2                 EXTI_IMR1_IM2           /*!< 扩展线路2 */
00092 #define LL_EXTI_LINE_3                 EXTI_IMR1_IM3           /*!< 扩展线路3 */
00093 #define LL_EXTI_LINE_4                 EXTI_IMR1_IM4           /*!< 扩展线路4 */
00094 #define LL_EXTI_LINE_5                 EXTI_IMR1_IM5           /*!< 扩展线路5 */
00095 #define LL_EXTI_LINE_6                 EXTI_IMR1_IM6           /*!< 扩展线路6 */
00096 #define LL_EXTI_LINE_7                 EXTI_IMR1_IM7           /*!< 扩展线路7 */
00097 #define LL_EXTI_LINE_8                 EXTI_IMR1_IM8           /*!< 扩展线路8 */
00098 #define LL_EXTI_LINE_9                 EXTI_IMR1_IM9           /*!< 扩展线路9 */
00099 #define LL_EXTI_LINE_10                EXTI_IMR1_IM10          /*!< 扩展线路10 */
00100 #define LL_EXTI_LINE_11                EXTI_IMR1_IM11          /*!< 扩展线路11 */
00101 #define LL_EXTI_LINE_12                EXTI_IMR1_IM12          /*!< 扩展线路12 */
00102 #define LL_EXTI_LINE_13                EXTI_IMR1_IM13          /*!< 扩展线路13 */
00103 #define LL_EXTI_LINE_14                EXTI_IMR1_IM14          /*!< 扩展线路14 */
00104 #define LL_EXTI_LINE_15                EXTI_IMR1_IM15          /*!< 扩展线路15 */
00105 #if defined(EXTI_IMR1_IM16)
00106 #define LL_EXTI_LINE_16                EXTI_IMR1_IM16          /*!< 扩展线路16 */
00107 #endif /* EXTI_IMR1_IM16 */
00108 #define LL_EXTI_LINE_17                EXTI_IMR1_IM17          /*!< 扩展线路17 */
00109 #if defined(EXTI_IMR1_IM18)
00110 #define LL_EXTI_LINE_18                EXTI_IMR1_IM18          /*!< 扩展线路18 */
00111 #endif /* EXTI_IMR1_IM18 */
00112 #define LL_EXTI_LINE_19                EXTI_IMR1_IM19          /*!< 扩展线路19 */
00113 #if defined(EXTI_IMR1_IM20)
00114 #define LL_EXTI_LINE_20                EXTI_IMR1_IM20          /*!< 扩展线路20 */
00115 #endif /* EXTI_IMR1_IM20 */
00116 #if defined(EXTI_IMR1_IM21)
00117 #define LL_EXTI_LINE_21                EXTI_IMR1_IM21          /*!< 扩展线路21 */
00118 #endif /* EXTI_IMR1_IM21 */
00119 #if defined(EXTI_IMR1_IM22)
00120 #define LL_EXTI_LINE_22                EXTI_IMR1_IM22          /*!< 扩展线路22 */
00121 #endif /* EXTI_IMR1_IM22 */
00122 #define LL_EXTI_LINE_23                EXTI_IMR1_IM23          /*!< 扩展线路23 */
00123 #if defined(EXTI_IMR1_IM24)
00124