Rev 2 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2 | Rev 6 | ||
---|---|---|---|
Line 60... | Line 60... | ||
60 | #define I2C_FASTMODEPLUS_PA9 SYSCFG_CFGR1_I2C_FMP_PA9 /*!< Enable Fast Mode Plus on PA9 */ |
60 | #define I2C_FASTMODEPLUS_PA9 SYSCFG_CFGR1_I2C_FMP_PA9 /*!< Enable Fast Mode Plus on PA9 */ |
61 | #define I2C_FASTMODEPLUS_PA10 SYSCFG_CFGR1_I2C_FMP_PA10 /*!< Enable Fast Mode Plus on PA10 */ |
61 | #define I2C_FASTMODEPLUS_PA10 SYSCFG_CFGR1_I2C_FMP_PA10 /*!< Enable Fast Mode Plus on PA10 */ |
62 | #else |
62 | #else |
63 | #define I2C_FASTMODEPLUS_PA9 (uint32_t)(0x00000001U | I2C_FMP_NOT_SUPPORTED) /*!< Fast Mode Plus PA9 not supported */ |
63 | #define I2C_FASTMODEPLUS_PA9 (uint32_t)(0x00000001U | I2C_FMP_NOT_SUPPORTED) /*!< Fast Mode Plus PA9 not supported */ |
64 | #define I2C_FASTMODEPLUS_PA10 (uint32_t)(0x00000002U | I2C_FMP_NOT_SUPPORTED) /*!< Fast Mode Plus PA10 not supported */ |
64 | #define I2C_FASTMODEPLUS_PA10 (uint32_t)(0x00000002U | I2C_FMP_NOT_SUPPORTED) /*!< Fast Mode Plus PA10 not supported */ |
65 | #endif |
65 | #endif /* SYSCFG_CFGR1_I2C_FMP_PA9 */ |
66 | #define I2C_FASTMODEPLUS_PB6 SYSCFG_CFGR1_I2C_FMP_PB6 /*!< Enable Fast Mode Plus on PB6 */ |
66 | #define I2C_FASTMODEPLUS_PB6 SYSCFG_CFGR1_I2C_FMP_PB6 /*!< Enable Fast Mode Plus on PB6 */ |
67 | #define I2C_FASTMODEPLUS_PB7 SYSCFG_CFGR1_I2C_FMP_PB7 /*!< Enable Fast Mode Plus on PB7 */ |
67 | #define I2C_FASTMODEPLUS_PB7 SYSCFG_CFGR1_I2C_FMP_PB7 /*!< Enable Fast Mode Plus on PB7 */ |
68 | #define I2C_FASTMODEPLUS_PB8 SYSCFG_CFGR1_I2C_FMP_PB8 /*!< Enable Fast Mode Plus on PB8 */ |
68 | #define I2C_FASTMODEPLUS_PB8 SYSCFG_CFGR1_I2C_FMP_PB8 /*!< Enable Fast Mode Plus on PB8 */ |
69 | #define I2C_FASTMODEPLUS_PB9 SYSCFG_CFGR1_I2C_FMP_PB9 /*!< Enable Fast Mode Plus on PB9 */ |
69 | #define I2C_FASTMODEPLUS_PB9 SYSCFG_CFGR1_I2C_FMP_PB9 /*!< Enable Fast Mode Plus on PB9 */ |
70 | #if defined(SYSCFG_CFGR1_I2C_FMP_I2C1) |
70 | #if defined(SYSCFG_CFGR1_I2C_FMP_I2C1) |
71 | #define I2C_FASTMODEPLUS_I2C1 SYSCFG_CFGR1_I2C_FMP_I2C1 /*!< Enable Fast Mode Plus on I2C1 pins */ |
71 | #define I2C_FASTMODEPLUS_I2C1 SYSCFG_CFGR1_I2C_FMP_I2C1 /*!< Enable Fast Mode Plus on I2C1 pins */ |
72 | #else |
72 | #else |
73 | #define I2C_FASTMODEPLUS_I2C1 (uint32_t)(0x00000100U | I2C_FMP_NOT_SUPPORTED) /*!< Fast Mode Plus I2C1 not supported */ |
73 | #define I2C_FASTMODEPLUS_I2C1 (uint32_t)(0x00000100U | I2C_FMP_NOT_SUPPORTED) /*!< Fast Mode Plus I2C1 not supported */ |
74 | #endif |
74 | #endif /* SYSCFG_CFGR1_I2C_FMP_I2C1 */ |
75 | #if defined(SYSCFG_CFGR1_I2C_FMP_I2C2) |
75 | #if defined(SYSCFG_CFGR1_I2C_FMP_I2C2) |
76 | #define I2C_FASTMODEPLUS_I2C2 SYSCFG_CFGR1_I2C_FMP_I2C2 /*!< Enable Fast Mode Plus on I2C2 pins */ |
76 | #define I2C_FASTMODEPLUS_I2C2 SYSCFG_CFGR1_I2C_FMP_I2C2 /*!< Enable Fast Mode Plus on I2C2 pins */ |
77 | #else |
77 | #else |
78 | #define I2C_FASTMODEPLUS_I2C2 (uint32_t)(0x00000200U | I2C_FMP_NOT_SUPPORTED) /*!< Fast Mode Plus I2C2 not supported */ |
78 | #define I2C_FASTMODEPLUS_I2C2 (uint32_t)(0x00000200U | I2C_FMP_NOT_SUPPORTED) /*!< Fast Mode Plus I2C2 not supported */ |
79 | #endif |
79 | #endif /* SYSCFG_CFGR1_I2C_FMP_I2C2 */ |
80 | /** |
80 | /** |
81 | * @} |
81 | * @} |
82 | */ |
82 | */ |
83 | 83 | ||
84 | /** |
84 | /** |
Line 95... | Line 95... | ||
95 | /** @addtogroup I2CEx_Exported_Functions_Group1 Extended features functions |
95 | /** @addtogroup I2CEx_Exported_Functions_Group1 Extended features functions |
96 | * @brief Extended features functions |
96 | * @brief Extended features functions |
97 | * @{ |
97 | * @{ |
98 | */ |
98 | */ |
99 | 99 | ||
100 | /* Peripheral Control functions ************************************************/ |
100 | /** @addtogroup I2CEx_Exported_Functions_Group1 Filter Mode Functions |
- | 101 | * @{ |
|
- | 102 | */ |
|
101 | HAL_StatusTypeDef HAL_I2CEx_ConfigAnalogFilter(I2C_HandleTypeDef *hi2c, uint32_t AnalogFilter); |
103 | HAL_StatusTypeDef HAL_I2CEx_ConfigAnalogFilter(I2C_HandleTypeDef *hi2c, |
- | 104 | uint32_t AnalogFilter); |
|
102 | HAL_StatusTypeDef HAL_I2CEx_ConfigDigitalFilter(I2C_HandleTypeDef *hi2c, uint32_t DigitalFilter); |
105 | HAL_StatusTypeDef HAL_I2CEx_ConfigDigitalFilter(I2C_HandleTypeDef *hi2c, |
- | 106 | uint32_t DigitalFilter); |
|
- | 107 | /** |
|
- | 108 | * @} |
|
- | 109 | */ |
|
103 | #if defined(I2C_CR1_WUPEN) |
110 | #if defined(I2C_CR1_WUPEN) |
- | 111 | ||
- | 112 | /** @addtogroup I2CEx_Exported_Functions_Group2 WakeUp Mode Functions |
|
- | 113 | * @{ |
|
- | 114 | */ |
|
104 | HAL_StatusTypeDef HAL_I2CEx_EnableWakeUp(I2C_HandleTypeDef *hi2c); |
115 | HAL_StatusTypeDef HAL_I2CEx_EnableWakeUp(I2C_HandleTypeDef *hi2c); |
105 | HAL_StatusTypeDef HAL_I2CEx_DisableWakeUp(I2C_HandleTypeDef *hi2c); |
116 | HAL_StatusTypeDef HAL_I2CEx_DisableWakeUp(I2C_HandleTypeDef *hi2c); |
- | 117 | /** |
|
- | 118 | * @} |
|
- | 119 | */ |
|
- | 120 | #endif /* I2C_CR1_WUPEN */ |
|
- | 121 | ||
- | 122 | /** @addtogroup I2CEx_Exported_Functions_Group3 Fast Mode Plus Functions |
|
106 | #endif |
123 | * @{ |
- | 124 | */ |
|
107 | void HAL_I2CEx_EnableFastModePlus(uint32_t ConfigFastModePlus); |
125 | void HAL_I2CEx_EnableFastModePlus(uint32_t ConfigFastModePlus); |
108 | void HAL_I2CEx_DisableFastModePlus(uint32_t ConfigFastModePlus); |
126 | void HAL_I2CEx_DisableFastModePlus(uint32_t ConfigFastModePlus); |
- | 127 | /** |
|
- | 128 | * @} |
|
- | 129 | */ |
|
109 | 130 | ||
110 | /* Private constants ---------------------------------------------------------*/ |
131 | /* Private constants ---------------------------------------------------------*/ |
111 | /** @defgroup I2CEx_Private_Constants I2C Extended Private Constants |
132 | /** @defgroup I2CEx_Private_Constants I2C Extended Private Constants |
112 | * @{ |
133 | * @{ |
113 | */ |
134 | */ |
Line 119... | Line 140... | ||
119 | /* Private macros ------------------------------------------------------------*/ |
140 | /* Private macros ------------------------------------------------------------*/ |
120 | /** @defgroup I2CEx_Private_Macro I2C Extended Private Macros |
141 | /** @defgroup I2CEx_Private_Macro I2C Extended Private Macros |
121 | * @{ |
142 | * @{ |
122 | */ |
143 | */ |
123 | #define IS_I2C_ANALOG_FILTER(FILTER) (((FILTER) == I2C_ANALOGFILTER_ENABLE) || \ |
144 | #define IS_I2C_ANALOG_FILTER(FILTER) (((FILTER) == I2C_ANALOGFILTER_ENABLE) || \ |
124 | ((FILTER) == I2C_ANALOGFILTER_DISABLE)) |
145 | ((FILTER) == I2C_ANALOGFILTER_DISABLE)) |
125 | 146 | ||
126 | #define IS_I2C_DIGITAL_FILTER(FILTER) ((FILTER) <= 0x0000000FU) |
147 | #define IS_I2C_DIGITAL_FILTER(FILTER) ((FILTER) <= 0x0000000FU) |
127 | 148 | ||
128 | #define IS_I2C_FASTMODEPLUS(__CONFIG__) ((((__CONFIG__) & I2C_FMP_NOT_SUPPORTED) != I2C_FMP_NOT_SUPPORTED) && \ |
149 | #define IS_I2C_FASTMODEPLUS(__CONFIG__) ((((__CONFIG__) & I2C_FMP_NOT_SUPPORTED) != I2C_FMP_NOT_SUPPORTED) && \ |
129 | ((((__CONFIG__) & (I2C_FASTMODEPLUS_PA9)) == I2C_FASTMODEPLUS_PA9) || \ |
150 | ((((__CONFIG__) & (I2C_FASTMODEPLUS_PA9)) == I2C_FASTMODEPLUS_PA9) || \ |