idfxx 1.0.0
Modern C++23 components for ESP-IDF
Loading...
Searching...
No Matches
I2C Component

Type-safe I2C master bus driver for ESP32. More...

Namespaces

namespace  idfxx
 
namespace  idfxx::i2c
 I2C master driver classes.
 

Classes

class  idfxx::i2c::master_bus
 I2C master bus controller with thread-safe device access. More...
 
class  idfxx::i2c::master_device
 I2C device at a specific 7-bit address with register operations. More...
 

Typedefs

typedef struct i2c_master_bus_t * i2c_master_bus_handle_t
 
typedef struct i2c_master_dev_t * i2c_master_dev_handle_t
 

Enumerations

enum class  idfxx::i2c::port : int { idfxx::i2c::port::i2c0 = 0 }
 I2C port identifiers. More...
 

Variables

static constexpr auto idfxx::i2c::DEFAULT_TIMEOUT = std::chrono::milliseconds(50)
 Default timeout for I2C operations.
 

Detailed Description

Type-safe I2C master bus driver for ESP32.

Provides I2C bus lifecycle management with thread-safe device access and register operations.

Depends on Core Utilities for error handling and GPIO Component for pin configuration.

Typedef Documentation

◆ i2c_master_bus_handle_t

typedef struct i2c_master_bus_t* i2c_master_bus_handle_t

Definition at line 31 of file master.hpp.

◆ i2c_master_dev_handle_t

typedef struct i2c_master_dev_t* i2c_master_dev_handle_t

Definition at line 32 of file master.hpp.

Enumeration Type Documentation

◆ port

enum class idfxx::i2c::port : int
strong

I2C port identifiers.

Enumerator
i2c0 

I2C port 0.

Definition at line 47 of file master.hpp.

Variable Documentation

◆ DEFAULT_TIMEOUT