|
idfxx 1.0.0
Modern C++23 components for ESP-IDF
|
I2C master bus and device classes. More...
#include <idfxx/error>#include <idfxx/gpio>#include <idfxx/intr_alloc>#include <array>#include <cassert>#include <chrono>#include <concepts>#include <frequency/frequency>#include <functional>#include <initializer_list>#include <memory>#include <mutex>#include <optional>#include <span>#include <string>#include <vector>#include "sdkconfig.h"Go to the source code of this file.
Classes | |
| struct | idfxx::i2c::operation |
| Describes a single operation in a custom I2C transaction sequence. More... | |
| class | idfxx::i2c::master_bus |
| I2C master bus controller with thread-safe device access. More... | |
| struct | idfxx::i2c::master_bus::config |
| I2C master bus configuration. More... | |
| class | idfxx::i2c::master_device |
| I2C device at a specific address with register operations. More... | |
| struct | idfxx::i2c::master_device::config |
| I2C device configuration. More... | |
Namespaces | |
| namespace | idfxx |
| namespace | idfxx::i2c |
| I2C master driver classes. | |
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... | |
| enum class | idfxx::i2c::clk_source : int { idfxx::i2c::clk_source::default_source = 0 } |
| I2C master bus clock source. More... | |
| enum class | idfxx::i2c::operation_command : int { idfxx::i2c::operation_command::start = 0 , idfxx::i2c::operation_command::write = 1 , idfxx::i2c::operation_command::read = 2 , idfxx::i2c::operation_command::stop = 3 } |
| I2C operation command type for custom transaction sequences. More... | |
| enum class | idfxx::i2c::ack_value : uint8_t { idfxx::i2c::ack_value::ack = 0 , idfxx::i2c::ack_value::nack = 1 } |
| ACK value sent after a read operation. More... | |
Functions | |
| std::string | idfxx::to_string (i2c::port p) |
| Returns a string representation of an I2C port. | |
Variables | |
| static constexpr auto | idfxx::i2c::DEFAULT_TIMEOUT = std::chrono::milliseconds(50) |
| Default timeout for I2C operations. | |
I2C master bus and device classes.
Definition in file master.hpp.