#ifndef DRV_I2C_H_ #define DRV_I2C_H_ #ifdef __cplusplus extern "C" { #endif #include "kit_macro.h" typedef enum { kI2cDev_1 = 0, kI2cDev_2, kI2cDev_3, kI2cDev_4, kI2cDev_End, }I2cDev; kit_ret_e drv_i2c_init(I2cDev dev, uint32_t freq, uint8_t scl_idx, uint8_t sda_idx); kit_ret_e drv_i2c_sync_write(I2cDev dev, uint8_t dev_addr, uint8_t reg_addr, uint8_t * buf, uint16_t len); kit_ret_e drv_i2c_sync_read(I2cDev dev, uint8_t dev_addr, uint8_t reg_addr, uint8_t *buf, uint16_t len); kit_ret_e drv_i2c_sync_write_then_read(I2cDev dev, uint8_t dev_addr, uint8_t *tx_buf, uint16_t tx_len, uint8_t *rx_buf, uint16_t rx_len); kit_ret_e drv_i2c_sync_direct_read(I2cDev dev, uint8_t dev_addr, uint8_t reg_addr, uint8_t *buf, uint16_t len); #ifdef __cplusplus } #endif #endif