Datasheet

Data Sheet ADAU1772
Rev. B | Page 41 of 116
I
2
C Read and Write Operations
Figure 77 shows the timing of a single-word write operation.
Every ninth clock pulse, the ADAU1772 issues an acknowledge
by pulling SDA low.
Figure 78 shows the timing of a burst mode write sequence. This
figure shows an example where the target destination words are
two bytes, such as the program memory. The ADAU1772 knows
to increment its subaddress register every two bytes because the
requested subaddress corresponds to a register or memory area
with a 2-byte word length.
The timing of a single-word read operation is shown in Figure 79.
Note that the first R/
W
bit is 0, indicating a write operation. This
is because the subaddress still needs to be written to set up the
internal address. After the ADAU1772 acknowledges the receipt
of the subaddress, the master must issue a repeated start command
followed by the chip address byte with the R/
W
set to 1 (read).
This causes the ADAU1772 SDA to reverse and begin driving
data back to the master. The master then responds every ninth
pulse with an acknowledge pulse to the ADAU1772.
Figure 80 shows the timing of a burst mode read sequence. This
figure shows an example where the target read words are two
bytes. The ADAU1772 increments its subaddress every two bytes
because the requested subaddress corresponds to a register or
memory area with word lengths of two bytes. Other address
ranges may have a variety of word lengths, ranging from one to
four bytes. The ADAU1772 always decodes the subaddress and
sets the auto-increment circuit so that the address increments
after the appropriate number of bytes.
Figure 77 to Figure 80 use the following abbreviations:
S = start bit
P = stop bit
AM = acknowledge by master
AS = acknowledge by slave
Figure 77. Single-Word I
2
C Write Format
Figure 78. Burst Mode I
2
C Write Format
Figure 79. Single-Word I
2
C Read Format
Figure 80. Burst Mode I
2
C Read Format
S
I
2
C ADDRESS,
R/W = 0
AS
SUBADDRESS HIGH AS
SUBADDRESS LOW AS
DATA BYTE 1 AS
DATA BYTE 2 AS
...
DATA BYTE N P
10804-070
...S
I
2
C ADDRESS,
R/W = 0
AS
SUBADDRESS
HIGH
AS
SUBADDRESS
LOW
AS
DATAWORD 1,
BYTE 1
DATAWORD 1,
BYTE 2
AS
AS
DATAWORD 2,
BYTE 1
DATAWORD 2,
BYTE 2
PASAS
10804-071
DATA BYTE 1 AM DATA BYTE 2 AM... DATA BYTE N P
S
I
2
C ADDRESS,
R/W = 0
AS
SUBADDRESS
HIGH
AS
SUBADDRESS
LOW
AS
I
2
C ADDRESS,
R/W = 1
ASS
10804-072
...
DATAWORD 1,
BYTE 1
DATAWORD 1,
BYTE 2
AM AM PS
I
2
C ADDRESS,
R/W = 0
AS
SUBADDRESS
HIGH
AS
SUBADDRESS
LOW
AS
I
2
C ADDRESS,
R/W = 1
ASS
10804-073