22#define LIB_I2C UINT8_C(0x23)
27#define IFX_I2C_LOG_TAG "IFX_I2C"
33#define IFX_I2C_GET_CLOCK_FREQUENCY 0x01
39#define IFX_I2C_SET_CLOCK_FREQUENCY 0x02
45#define IFX_I2C_GET_SLAVE_ADDR 0x03
51#define IFX_I2C_SET_SLAVE_ADDR 0x04
56#define IFX_I2C_GET_GUARD_TIME 0x05
62#define IFX_I2C_SET_GUARD_TIME 0x06
76 uint32_t *frequency_hz_buffer);
90 uint32_t frequency_hz);
104 uint16_t *address_buffer);
135 uint32_t *guard_time_us_buffer);
150 uint32_t guard_time_us);
uint32_t ifx_status_t
Custom return code type used by all Infineon host software libraries.
Generic protocol API (ISO/OSI stack).
ifx_status_t ifx_i2c_get_clock_frequency(ifx_protocol_t *self, uint32_t *frequency_hz_buffer)
Getter for I2C clock frequency in [Hz].
ifx_status_t ifx_i2c_get_slave_address(ifx_protocol_t *self, uint16_t *address_buffer)
Getter for I2C slave address.
ifx_status_t ifx_i2c_set_clock_frequency(ifx_protocol_t *self, uint32_t frequency_hz)
Sets I2C clock frequency in [Hz].
ifx_status_t ifx_i2c_set_guard_time(ifx_protocol_t *self, uint32_t guard_time_us)
Sets guard time to be waited between I2C transmissions.
ifx_status_t ifx_i2c_get_guard_time(ifx_protocol_t *self, uint32_t *guard_time_us_buffer)
Getter for I2C guard time in [us].
ifx_status_t ifx_i2c_set_slave_address(ifx_protocol_t *self, uint16_t address)
Sets I2C slave address.