/** * @file cw32f030_i2c.h * @author your name (you@domain.com) * @brief * @version 0.1 * @date 2021-04-27 * * @copyright Copyright (c) 2021 * x */ /******************************************************************************* * * 代码许可和免责信息 * 武汉力源半导体有限公司授予您使用所有编程代码示例的非专属的版权许可,您可以由此 * 生成根据您的特定需要而定制的相似功能。根据不能被排除的任何法定保证,武汉力源半 * 导体有限公司及其程序开发商和供应商对程序或技术支持(如果有)不提供任何明示或暗 * 含的保证或条件,包括但不限于暗含的有关适销性、适用于某种特定用途和非侵权的保证 * 或条件。 * 无论何种情形,武汉力源半导体有限公司及其程序开发商或供应商均不对下列各项负责, * 即使被告知其发生的可能性时,也是如此:数据的丢失或损坏;直接的、特别的、附带的 * 或间接的损害,或任何后果性经济损害;或利润、业务、收入、商誉或预期可节省金额的 * 损失。 * 某些司法辖区不允许对直接的、附带的或后果性的损害有任何的排除或限制,因此某些或 * 全部上述排除或限制可能并不适用于您。 * *******************************************************************************/ /* Define to prevent recursive inclusion -------------------------------------*/ #ifndef __CW32F03x_I2C_H #define __CW32F03x_I2C_H #ifdef __cplusplus extern "C" { #endif /* Includes ------------------------------------------------------------------*/ #include "cw32f030.h" #include "base_types.h" #include "cw32f030_rcc.h" /** * @brief I2C通道选择 * */ typedef enum en_i2c_channel { I2C1 = 0,///<通道1 I2C2 = 1,///<通道2 }en_i2c_channel_t; /** ****************************************************************************** ** \brief I2C初始化配置结构 *****************************************************************************/ typedef struct { FunctionalState I2C_BaudEn; ///<波特率计数器使能 uint8_t I2C_Baud; ///<波特率计数器配置 uint8_t I2C_OwnSlaveAddr0; ///<从机地址0 FunctionalState I2C_OwnGc; ///<广播响应使能 uint8_t I2C_OwnSlaveAddr1; ///<从机地址1 uint8_t I2C_OwnSlaveAddr2; ///<从机地址2 FunctionalState I2C_FLT; ///