Device Manager I2C#

Overview#

The Device Manager I2C component defines the macros, structures, and enums that are used commonly across I2C driver and peripheral.

Enumerations#

enum
SL_I2C_LEADER_MODE = 0
SL_I2C_FOLLOWER_MODE
}

Leader or Follower mode selection enum.

enum
SL_I2C_CLK_HLR_STANDARD = 0
SL_I2C_CLK_HLR_ASYMMETRIC
SL_I2C_CLK_HLR_FAST
}

FIFO Threshold enum.

Macros#

#define

Validation of operating mode.

#define

Enumeration Documentation#

sl_i2c_operating_mode_t#

sl_i2c_operating_mode_t

Leader or Follower mode selection enum.

Enumerator
SL_I2C_LEADER_MODE

I2C Leader Mode.

SL_I2C_FOLLOWER_MODE

I2C Follower Mode.


sl_i2c_clock_hlr_t#

sl_i2c_clock_hlr_t

FIFO Threshold enum.

Clock high to low ratio settings.

Enumerator
SL_I2C_CLK_HLR_STANDARD

Ratio is 4:4.

SL_I2C_CLK_HLR_ASYMMETRIC

Ratio is 6:3.

SL_I2C_CLK_HLR_FAST

Ratio is 11:3.


Macro Definition Documentation#

SL_I2C_7BIT_FOLLOWER_ADDRESS_MASK#

#define SL_I2C_7BIT_FOLLOWER_ADDRESS_MASK
Value:
(0xFE)

SL_I2C_FIRST_BYTE_10BIT_ADDR_MASK#

#define SL_I2C_FIRST_BYTE_10BIT_ADDR_MASK
Value:
(0xF0)

SL_I2C_OPERATING_MODE_IS_VALID#

#define SL_I2C_OPERATING_MODE_IS_VALID
Value:
(operating_mode)

Validation of operating mode.


SL_I2C_FREQ_MODE_IS_VALID#

#define SL_I2C_FREQ_MODE_IS_VALID
Value:
((freq_mode == SL_I2C_FREQ_STANDARD_MODE) \
|| (freq_mode == SL_I2C_FREQ_FAST_MODE) \
|| (freq_mode == SL_I2C_FREQ_FASTPLUS_MODE))