17.6.3.3.4 Function i2c_master_write_packet_wait_no_stop()
Writes data packet to slave without sending a stop condition when done.
enum status_code i2c_master_write_packet_wait_no_stop( struct i2c_master_module *const module, struct i2c_master_packet *const packet)
Writes a data packet to the specified slave address on the I2C bus without sending a stop condition, thus retaining ownership of the bus when done. To end the transaction, a read or write with stop condition or sending a stop with the i2c_master_send_stop function must be performed.
Data direction | Parameter name | Description |
---|---|---|
[in, out] |
module |
Pointer to software module struct |
[in, out] |
packet |
Pointer to I2C packet to transfer |
Returns
Status of write packet.
Return value | Description |
---|---|
STATUS_OK |
If packet was write successfully |
STATUS_BUSY |
If master module is busy |
STATUS_ERR_DENIED |
If error on bus |
STATUS_ERR_PACKET_COLLISION |
If arbitration is lost |
STATUS_ERR_BAD_ADDRESS |
If slave is busy, or no slave acknowledged the address |
STATUS_ERR_TIMEOUT |
If timeout occurred |
STATUS_ERR_OVERFLOW |
If slave did not acknowledge last sent data, indicating that slave do not want more data |