Astra MCU SDK Peripheral Driver Library
 
Loading...
Searching...
No Matches
i2c_controller_config_t Struct Reference

I²C controller configuration structure. More...

#include <i2c.h>

Data Fields

bool ten_bit_addr
 
i2c_speed_en speed
 
bool enable_bus_clear
 
bool clear_stuck_sda
 
uint32_t scl_stuck_timeout_ms
 
uint32_t sda_stuck_timeout_ms
 

Detailed Description

I²C controller configuration structure.

Configures mode, addressing, bus timing, and special features.

Field Documentation

◆ ten_bit_addr

bool i2c_controller_config_t::ten_bit_addr

true = 10-bit addressing

◆ speed

i2c_speed_en i2c_controller_config_t::speed

Bus speed

◆ enable_bus_clear

bool i2c_controller_config_t::enable_bus_clear

Enable bus clear

◆ clear_stuck_sda

bool i2c_controller_config_t::clear_stuck_sda

If SDA is detected as stuck automatically try and recover

◆ scl_stuck_timeout_ms

uint32_t i2c_controller_config_t::scl_stuck_timeout_ms

SCL stuck-low timeout (loop count), set to 0 if not desired

◆ sda_stuck_timeout_ms

uint32_t i2c_controller_config_t::sda_stuck_timeout_ms

SDA stuck-low timeout (loop count), set to 0 if not desired