Subversion Repositories FuelGauge

Rev

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