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) || \ |