My customer is confused about AD5698R READ OPERATION.
Is it possible for you to confirm the I2C Read Operation timing?
Please find attached file. These are I2C timing chart.
As I pointed out, there are "ACK. BY Master" and the other. Compared with AD5698 and AD5698R. It seems different each other.
The customer is afraid of its typo.
I believe this is a typo error as there is no AD5698 part. I think you are referring to either AD5696 or AD5694 which are almost identical when it comes to the digital communication.
When writing to the part, the microcontroller acts as the master and the AD5696 is the slave. But when the read operation is being performed, this becomes reverse; the DAC is the master (because the DAC will be the one to send signals on the SDA line) and the microcontroller is the slave which receives the data being sent by the DAC.
I believe there are no errors in the figures. They are different words but in this case, they refer to the same thing.
I couldn't understand.
Sorry it was my typo. The device is AD5696R.
As for Figure51 in the AD5696R datasheet, START BY MASTER --> ACK. BY MASTER --> ACK. BY MASTER.
and REPEATED START BY MASTER --> ACK. BY MASTER --> ACK. BY MASTER
Is this right?
Yes, you are correct. Although I would like to stress that in this case, the DAC is the master (because the DAC will be the one to send signals on the SDA line) and the microcontroller is the slave which receives the data being sent by the DAC.
I would like to confirm a thing. Is it possible for you to check?
I think CPU should be master, DAC should be slave.
During READ OPERATION, master and slave are changed.
According to the timing chart of P22 on the datasheet of AD5694R,
Start is Master, All of the ACK are master,
Repeated start is Master, Stop is also master.
At least, Ack should be supported by receiver for data transmitter.
Phase Data Tramsmitted By ACK Trasmitted By
Start CPU -
FRAME 1 SLAVE ADDRESS CPU AD5696?
FRAME 2 COMMAND BYTE CPU AD5696?
FRAME 3 SLAVE ADDRESS CPU? AD5696?
FRAME 4 MOST SIGNIFICANTDATA BYTE n AD5696? CPU?
FRAME 5 SLAVE ADDRESS SIGNIFICANT DATA BYTE n AD5696? CPU?
FRAME 6 MOST SIGNIFICANTDATA BYTE n – 1 AD596? CPU?
Stop CPU -
On the timing chart, which output Ack from CPU or AD5696R?
How does customer set for "FRAME 2 COMMAND BYTE"?
It seems to set internal pointer. But we couldn't find out format.
FRAME4(MSB) and FRAME6(LSB) are data?
Does FRAME 5 show address?
Should the customer confirm it same as FRAME3？