Mbed OS Reference
Loading...
Searching...
No Matches
i2c_capabilities_t Struct Reference

Describes the capabilities of an I2C peripheral. More...

#include <i2c_api.h>

Data Fields

bool single_byte_start_cond_delayed
 If true, generation of the start condition in single-byte mode is delayed until the address is transmitted.
 
bool single_byte_address_delayed
 If true, transmission of the address in single-byte mode is delayed until the first data byte is read/written.
 
bool supports_single_byte
 If true, the single-byte API is implemented. Otherwise, it is a no-op.
 
bool supports_zero_length_transfer_single_byte
 If true, the single-byte API supports a zero-length transfer (one that has only a start, then an address, then a stop).
 
bool supports_zero_length_transfer_transaction
 If true, the transaction-based API supports a zero-length transfer (one that has only a start, then an address, then a stop).
 

Detailed Description

Describes the capabilities of an I2C peripheral.

Definition at line 111 of file i2c_api.h.

Field Documentation

◆ single_byte_start_cond_delayed

bool single_byte_start_cond_delayed

If true, generation of the start condition in single-byte mode is delayed until the address is transmitted.

If single-byte is not supported this is a don't care.

Definition at line 114 of file i2c_api.h.

◆ single_byte_address_delayed

bool single_byte_address_delayed

If true, transmission of the address in single-byte mode is delayed until the first data byte is read/written.

For write transactions, the ACK/NACK from the address byte will be reported in the status of the first data byte. Note that this means there is no way to detect a NACK of the address for a single-byte read operation. If single-byte is not supported this is a don't care.

Definition at line 120 of file i2c_api.h.

◆ supports_single_byte

bool supports_single_byte

If true, the single-byte API is implemented. Otherwise, it is a no-op.

Definition at line 122 of file i2c_api.h.

◆ supports_zero_length_transfer_single_byte

bool supports_zero_length_transfer_single_byte

If true, the single-byte API supports a zero-length transfer (one that has only a start, then an address, then a stop).

If single-byte is not supported this is a don't care.

Definition at line 126 of file i2c_api.h.

◆ supports_zero_length_transfer_transaction

bool supports_zero_length_transfer_transaction

If true, the transaction-based API supports a zero-length transfer (one that has only a start, then an address, then a stop).

Definition at line 129 of file i2c_api.h.