28 #if (HAL_USE_I2C == TRUE) || defined(__DOXYGEN__) 47 #if !defined(PLATFORM_I2C_USE_I2C1) || defined(__DOXYGEN__) 48 #define PLATFORM_I2C_USE_I2C1 FALSE 101 #if (I2C_USE_MUTUAL_EXCLUSION == TRUE) || defined(__DOXYGEN__) 104 #if defined(I2C_DRIVER_EXT_FIELDS) 105 I2C_DRIVER_EXT_FIELDS
121 #define i2c_lld_get_errors(i2cp) ((i2cp)->errors) 127 #if (PLATFORM_I2C_USE_I2C1 == TRUE) && !defined(__DOXYGEN__) 138 const uint8_t *txbuf,
size_t txbytes,
139 uint8_t *rxbuf,
size_t rxbytes,
142 uint8_t *rxbuf,
size_t rxbytes,
void i2c_lld_stop(I2CDriver *i2cp)
Deactivates the I2C peripheral.
Type of I2C driver configuration structure.
msg_t i2c_lld_master_transmit_timeout(I2CDriver *i2cp, i2caddr_t addr, const uint8_t *txbuf, size_t txbytes, uint8_t *rxbuf, size_t rxbytes, sysinterval_t timeout)
Transmits data via the I2C bus as master.
msg_t i2c_lld_master_receive_timeout(I2CDriver *i2cp, i2caddr_t addr, uint8_t *rxbuf, size_t rxbytes, sysinterval_t timeout)
Receives data via the I2C bus as master.
int32_t msg_t
Type of a message.
uint32_t i2cflags_t
Type of I2C Driver condition flags.
Structure representing an I2C driver.
I2CDriver I2CD1
I2C1 driver identifier.
void i2c_lld_start(I2CDriver *i2cp)
Configures and activates the I2C peripheral.
uint32_t sysinterval_t
Type of system time interval.
void i2c_lld_init(void)
Low level I2C driver initialization.
uint16_t i2caddr_t
Type representing an I2C address.
i2cflags_t errors
Error flags.
const I2CConfig * config
Current configuration data.
i2cstate_t
Driver state machine possible states.
uint32_t mutex_t
Type of a mutex.
i2cstate_t state
Driver state.