I'm designing my own data protocol for communication between PICs, ICs, etc. and in the specification I'd like to compare it to the existing I2C protocol.
There are two types of operation on the I2C bus:
- Write operation: master writes START, address, data (the slave sends ACKs only)
- Read operation: master writes START, address. Slave sends data, master sends ACK / NACK.
Just to get this clear for me: is there any way to use these operations, according to the protocol specification, to read and write data within one operation? You would win speed because you don't have to send the address twice. So is this possible?