STM32F439xx HAL User Manual
|
00001 /** 00002 ****************************************************************************** 00003 * @file stm32f4xx_hal_i2c_ex.h 00004 * @author MCD Application Team 00005 * @brief Header file of I2C HAL Extension module. 00006 ****************************************************************************** 00007 * @attention 00008 * 00009 * <h2><center>© COPYRIGHT(c) 2017 STMicroelectronics</center></h2> 00010 * 00011 * Redistribution and use in source and binary forms, with or without modification, 00012 * are permitted provided that the following conditions are met: 00013 * 1. Redistributions of source code must retain the above copyright notice, 00014 * this list of conditions and the following disclaimer. 00015 * 2. Redistributions in binary form must reproduce the above copyright notice, 00016 * this list of conditions and the following disclaimer in the documentation 00017 * and/or other materials provided with the distribution. 00018 * 3. Neither the name of STMicroelectronics nor the names of its contributors 00019 * may be used to endorse or promote products derived from this software 00020 * without specific prior written permission. 00021 * 00022 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 00023 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00024 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 00025 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 00026 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 00027 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 00028 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 00029 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 00030 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 00031 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00032 * 00033 ****************************************************************************** 00034 */ 00035 00036 /* Define to prevent recursive inclusion -------------------------------------*/ 00037 #ifndef __STM32F4xx_HAL_I2C_EX_H 00038 #define __STM32F4xx_HAL_I2C_EX_H 00039 00040 #ifdef __cplusplus 00041 extern "C" { 00042 #endif 00043 00044 #if defined(STM32F427xx) || defined(STM32F437xx) || defined(STM32F429xx) || defined(STM32F439xx) ||\ 00045 defined(STM32F401xC) || defined(STM32F401xE) || defined(STM32F411xE) || defined(STM32F446xx) ||\ 00046 defined(STM32F469xx) || defined(STM32F479xx) || defined(STM32F413xx) || defined(STM32F423xx) 00047 /* Includes ------------------------------------------------------------------*/ 00048 #include "stm32f4xx_hal_def.h" 00049 00050 /** @addtogroup STM32F4xx_HAL_Driver 00051 * @{ 00052 */ 00053 00054 /** @addtogroup I2CEx 00055 * @{ 00056 */ 00057 00058 /* Exported types ------------------------------------------------------------*/ 00059 /* Exported constants --------------------------------------------------------*/ 00060 /** @defgroup I2CEx_Exported_Constants I2C Exported Constants 00061 * @{ 00062 */ 00063 00064 /** @defgroup I2CEx_Analog_Filter I2C Analog Filter 00065 * @{ 00066 */ 00067 #define I2C_ANALOGFILTER_ENABLE 0x00000000U 00068 #define I2C_ANALOGFILTER_DISABLE I2C_FLTR_ANOFF 00069 /** 00070 * @} 00071 */ 00072 00073 /** 00074 * @} 00075 */ 00076 00077 /* Exported macro ------------------------------------------------------------*/ 00078 /* Exported functions --------------------------------------------------------*/ 00079 /** @addtogroup I2CEx_Exported_Functions 00080 * @{ 00081 */ 00082 00083 /** @addtogroup I2CEx_Exported_Functions_Group1 00084 * @{ 00085 */ 00086 /* Peripheral Control functions ************************************************/ 00087 HAL_StatusTypeDef HAL_I2CEx_ConfigAnalogFilter(I2C_HandleTypeDef *hi2c, uint32_t AnalogFilter); 00088 HAL_StatusTypeDef HAL_I2CEx_ConfigDigitalFilter(I2C_HandleTypeDef *hi2c, uint32_t DigitalFilter); 00089 /** 00090 * @} 00091 */ 00092 00093 /** 00094 * @} 00095 */ 00096 /* Private types -------------------------------------------------------------*/ 00097 /* Private variables ---------------------------------------------------------*/ 00098 /* Private constants ---------------------------------------------------------*/ 00099 /** @defgroup I2CEx_Private_Constants I2C Private Constants 00100 * @{ 00101 */ 00102 00103 /** 00104 * @} 00105 */ 00106 00107 /* Private macros ------------------------------------------------------------*/ 00108 /** @defgroup I2CEx_Private_Macros I2C Private Macros 00109 * @{ 00110 */ 00111 #define IS_I2C_ANALOG_FILTER(FILTER) (((FILTER) == I2C_ANALOGFILTER_ENABLE) || \ 00112 ((FILTER) == I2C_ANALOGFILTER_DISABLE)) 00113 #define IS_I2C_DIGITAL_FILTER(FILTER) ((FILTER) <= 0x0000000FU) 00114 /** 00115 * @} 00116 */ 00117 00118 /** 00119 * @} 00120 */ 00121 00122 /** 00123 * @} 00124 */ 00125 00126 #endif /* STM32F427xx || STM32F429xx || STM32F437xx || STM32F439xx || STM32F401xC ||\ 00127 STM32F401xE || STM32F411xE || STM32F446xx || STM32F469xx || STM32F479xx ||\ 00128 STM32F413xx || STM32F423xx */ 00129 00130 #ifdef __cplusplus 00131 } 00132 #endif 00133 00134 #endif /* __STM32F4xx_HAL_I2C_EX_H */ 00135 00136 00137 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/