Function definitions for I2C driver.
Functions | |
| void | i2c_applyConfig (i2c_instance_t *inst) |
| Apply the software configuration to the hardware. | |
| void | i2c_setSlaveOverride (i2c_instance_t *inst, u32 value) |
| Write values to I2C hardware registers. | |
I2C (Get Functions) | |
Read value from I2C hardware registers. | |
| u32 | i2c_getSlaveStatus (i2c_instance_t *inst) |
| Get Slave Status. | |
| u32 | i2c_getMasterStatus (i2c_instance_t *inst) |
| Get Master Status. | |
| u32 | i2c_getFilteringHit (i2c_instance_t *inst) |
| Get Filtering Hit. | |
| u32 | i2c_getInterruptFlag (i2c_instance_t *inst) |
| Get Interrupt Flag. | |
| u32 | i2c_getFilteringStatus (i2c_instance_t *inst) |
| Get Filtering Status. | |
| u32 | i2c_getSlaveOverride (i2c_instance_t *inst) |
| Get Slave Override. | |
I2C (Master Functions) | |
Read value from I2C hardware registers. | |
| void | i2c_startMaster (i2c_instance_t *inst) |
| Initiate start condition for I2C master mode and sets the dropped status if necessary. | |
| void | i2c_restartMaster (i2c_instance_t *inst) |
| Initiate restart condition for I2C master mode and sets the dropped status if necessary. | |
| void | i2c_recoverMaster (i2c_instance_t *inst) |
| Initiate recover condition for I2C master mode and sets the dropped status if necessary. | |
| void | i2c_startMasterBlocking (i2c_instance_t *inst) |
| Initiate start condition for I2C master mode and waits until the operation is complete. | |
| void | i2c_restartMasterBlocking (i2c_instance_t *inst) |
| Initiate restart condition for I2C master mode and waits until the operation is complete. | |
| void | i2c_stopMaster (i2c_instance_t *inst) |
| Initiate stop condition for I2C master mode and sets the dropped status if necessary. | |
| void | i2c_stopMasterBlocking (i2c_instance_t *inst) |
| Initiate stop condition for I2C master mode and waits until the operation is complete. | |
| void | i2c_recoverMasterBlocking (i2c_instance_t *inst) |
| Initiate recover condition for I2C master mode and waits until the operation is complete. | |
| void | i2c_dropMaster (i2c_instance_t *inst) |
| Drops the current I2C master operation. | |
| u32 | i2c_checkMasterBusy (i2c_instance_t *inst) |
| Checks if the I2C master is busy. | |
I2C (Transmit/Receive Functions) | |
Transmit data over I2C or receive data over I2C. | |
| void | i2c_listenAck (i2c_instance_t *inst) |
| configures the I2C controller to listen for ACK signals on the receiver (RX) line. | |
| void | i2c_txByte (i2c_instance_t *inst, u8 byte) |
| Transmits a byte of data over I2C. | |
| void | i2c_txAck (i2c_instance_t *inst) |
| Transmits an ACK signal over I2C. | |
| void | i2c_txNack (i2c_instance_t *inst) |
| Transmits an NACK signal over I2C. | |
| void | i2c_txAckWait (i2c_instance_t *inst) |
| Waits until the transmission of an ACK signal is complete over the I2C bus. | |
| void | i2c_rxAckWait (i2c_instance_t *inst) |
| Waits until the reception of an ACK signal is complete over the I2C bus. | |
| void | i2c_txAckBlocking (i2c_instance_t *inst) |
| Sends an ACK signal over the I2C bus and waits until the transmission is complete. | |
| void | i2c_txNackBlocking (i2c_instance_t *inst) |
| Sends an NACK signal over the I2C bus and waits until the transmission is complete. | |
| u32 | i2c_rxData (i2c_instance_t *inst) |
| Reads data from I2C receive data register. | |
| u32 | i2c_rxAck (i2c_instance_t *inst) |
| Reads data from I2C receive data register. | |
| u32 | i2c_rxNack (i2c_instance_t *inst) |
| Checks if the received ACK signal is detected. | |
| void | i2c_txByteRepeat (i2c_instance_t *inst, u8 byte) |
| Sends a byte over I2C bus with repeat mode enabled. | |
| void | i2c_txNackRepeat (i2c_instance_t *inst) |
| Sends a NACK signal over I2C bus with repeat mode enabled. | |
I2C (Control Functions) | |
Configure I2C filters and interrupts. | |
| void | i2c_enableFilter (i2c_instance_t *inst, u32 filterId, u32 config) |
| Enables and configures an I2C hardware filter. | |
| void | i2c_setFilterConfig (i2c_instance_t *inst, u32 filterId, u32 value) |
| Sets the configuration for an I2C hardware filter. | |
| void | i2c_enableInterrupt (i2c_instance_t *inst, i2c_interrupt_t value) |
| Enables specific I2C interrupts. | |
| void | i2c_disableInterrupt (i2c_instance_t *inst, i2c_interrupt_t value) |
| Disables specific I2C interrupts. | |
| void | i2c_clearInterruptFlag (i2c_instance_t *inst, i2c_interrupt_t value) |
| Clears specific I2C interrupt flags. | |
I2C (Read/Write Functions) | |
Read and write data over I2C bus. | |
| void | i2c_writeData_b (i2c_instance_t *inst, u8 regAddr, u8 *data, u32 length) |
| Write data with an 8-bit register address over I2C and check rx ack for each transaction. | |
| void | i2c_writeData_w (i2c_instance_t *inst, u16 regAddr, u8 *data, u32 length) |
| Write data with a 16-bit register address over I2C and check rx ack for each transaction. | |
| void | i2c_readData_b (i2c_instance_t *inst, u8 regAddr, u8 *data, u32 length) |
| Read data with an 8-bit register address over I2C. | |
| void | i2c_readData_w (i2c_instance_t *inst, u16 regAddr, u8 *data, u32 length) |
| Read data with a 16-bit register address over I2C. | |
| void | i2c_setMux (i2c_instance_t *inst, const uint8_t cr) |
| Set I2C MUX control register. | |
| void i2c_applyConfig | ( | i2c_instance_t * | inst | ) |
| u32 i2c_checkMasterBusy | ( | i2c_instance_t * | inst | ) |
| void i2c_clearInterruptFlag | ( | i2c_instance_t * | inst, |
| i2c_interrupt_t | value ) |
| void i2c_disableInterrupt | ( | i2c_instance_t * | inst, |
| i2c_interrupt_t | value ) |
| void i2c_dropMaster | ( | i2c_instance_t * | inst | ) |
| void i2c_enableFilter | ( | i2c_instance_t * | inst, |
| u32 | filterId, | ||
| u32 | config ) |
| void i2c_enableInterrupt | ( | i2c_instance_t * | inst, |
| i2c_interrupt_t | value ) |
| u32 i2c_getFilteringHit | ( | i2c_instance_t * | inst | ) |
| u32 i2c_getFilteringStatus | ( | i2c_instance_t * | inst | ) |
| u32 i2c_getInterruptFlag | ( | i2c_instance_t * | inst | ) |
| u32 i2c_getMasterStatus | ( | i2c_instance_t * | inst | ) |
| u32 i2c_getSlaveOverride | ( | i2c_instance_t * | inst | ) |
| u32 i2c_getSlaveStatus | ( | i2c_instance_t * | inst | ) |
| void i2c_listenAck | ( | i2c_instance_t * | inst | ) |
| void i2c_readData_b | ( | i2c_instance_t * | inst, |
| u8 | regAddr, | ||
| u8 * | data, | ||
| u32 | length ) |
#include <i2c.h>
Read data with an 8-bit register address over I2C.
| inst | Pointer to I2C instance. |
| regAddr | 8-bit register address to read from. |
| data | Pointer to data buffer to store read data. |
| length | Number of bytes to read. |
| void i2c_readData_w | ( | i2c_instance_t * | inst, |
| u16 | regAddr, | ||
| u8 * | data, | ||
| u32 | length ) |
#include <i2c.h>
Read data with a 16-bit register address over I2C.
| inst | Pointer to I2C instance. |
| regAddr | 16-bit register address to read from. |
| data | Pointer to data buffer to store read data. |
| length | Number of bytes to read. |
| void i2c_recoverMaster | ( | i2c_instance_t * | inst | ) |
| void i2c_recoverMasterBlocking | ( | i2c_instance_t * | inst | ) |
| void i2c_restartMaster | ( | i2c_instance_t * | inst | ) |
| void i2c_restartMasterBlocking | ( | i2c_instance_t * | inst | ) |
| u32 i2c_rxAck | ( | i2c_instance_t * | inst | ) |
| void i2c_rxAckWait | ( | i2c_instance_t * | inst | ) |
| u32 i2c_rxData | ( | i2c_instance_t * | inst | ) |
| u32 i2c_rxNack | ( | i2c_instance_t * | inst | ) |
| void i2c_setFilterConfig | ( | i2c_instance_t * | inst, |
| u32 | filterId, | ||
| u32 | value ) |
| void i2c_setMux | ( | i2c_instance_t * | inst, |
| const uint8_t | cr ) |
| void i2c_setSlaveOverride | ( | i2c_instance_t * | inst, |
| u32 | value ) |
| void i2c_startMaster | ( | i2c_instance_t * | inst | ) |
| void i2c_startMasterBlocking | ( | i2c_instance_t * | inst | ) |
| void i2c_stopMaster | ( | i2c_instance_t * | inst | ) |
| void i2c_stopMasterBlocking | ( | i2c_instance_t * | inst | ) |
| void i2c_txAck | ( | i2c_instance_t * | inst | ) |
| void i2c_txAckBlocking | ( | i2c_instance_t * | inst | ) |
| void i2c_txAckWait | ( | i2c_instance_t * | inst | ) |
| void i2c_txByte | ( | i2c_instance_t * | inst, |
| u8 | byte ) |
| void i2c_txByteRepeat | ( | i2c_instance_t * | inst, |
| u8 | byte ) |
| void i2c_txNack | ( | i2c_instance_t * | inst | ) |
| void i2c_txNackBlocking | ( | i2c_instance_t * | inst | ) |
| void i2c_txNackRepeat | ( | i2c_instance_t * | inst | ) |
| void i2c_writeData_b | ( | i2c_instance_t * | inst, |
| u8 | regAddr, | ||
| u8 * | data, | ||
| u32 | length ) |
#include <i2c.h>
Write data with an 8-bit register address over I2C and check rx ack for each transaction.
| inst | Pointer to I2C instance. |
| regAddr | 8-bit register address to write to. |
| data | Pointer to data buffer to write. |
| length | Number of bytes to write. |
| void i2c_writeData_w | ( | i2c_instance_t * | inst, |
| u16 | regAddr, | ||
| u8 * | data, | ||
| u32 | length ) |
#include <i2c.h>
Write data with a 16-bit register address over I2C and check rx ack for each transaction.
| inst | Pointer to I2C instance. |
| regAddr | 16-bit register address to write to. |
| data | Pointer to data buffer to write. |
| length | Number of bytes to write. |