Figure 22. control port timing, i·c mode, 1 i²c write 4.14.2.2 i²c read, Figure 22.control port timing, i²c mode – Cirrus Logic CS4365 User Manual
Page 31: Figure 22, Cs4365, 1 i²c write, 2 i²c read
DS670F2
31
CS4365
4.14.2.1 I²C Write
To write to the device, follow the procedure below while adhering to the control port Switching Specifica-
tions in
1. Initiate a START condition to the I²C bus followed by the address byte. The upper 6 bits must be
001100. The seventh bit must match the setting of the AD0 pin, and the eighth must be 0. The eighth
bit of the address byte is the R/W bit.
2. Wait for an acknowledge (ACK) from the part, then write to the memory address pointer, MAP. This
byte points to the register to be written.
3. Wait for an acknowledge (ACK) from the part, then write the desired data to the register pointed to by
the MAP.
4. If the INCR bit (see
) is set to 1, repeat the previous step until all the desired registers
are written, then initiate a STOP condition to the bus.
5. If the INCR bit is set to 0 and further I²C writes to other registers are desired, it is necessary to initiate
a repeated START condition and follow the procedure detailed from step 1. If no further writes to other
registers are desired, initiate a STOP condition to the bus.
4.14.2.2 I²C Read
To read from the device, follow the procedure below while adhering to the control port Switching Specifi-
cations.
1. Initiate a START condition to the I²C bus followed by the address byte. The upper 6 bits must be
001100. The seventh bit must match the setting of the AD0 pin, and the eighth must be 1. The eighth
bit of the address byte is the R/W bit.
2. After transmitting an acknowledge (ACK), the device will then transmit the contents of the register
pointed to by the MAP. The MAP register will contain the address of the last register written to the
MAP, or the default address (see
) if an I²C read is the first operation performed on the
device.
3. Once the device has transmitted the contents of the register pointed to by the MAP, issue an ACK.
4. If the INCR bit is set to 1, the device will continue to transmit the contents of successive registers. Con-
tinue providing a clock and issue an ACK after each byte until all the desired registers are read, then
initiate a STOP condition to the bus.
5. If the INCR bit is set to 0 and further I²C reads from other registers are desired, it is necessary to initiate
a repeated START condition and follow the procedure detailed from steps 1 and 2 from the I²C Write
instructions followed by step 1 of the I²C Read section. If no further reads from other registers are de-
sired, initiate a STOP condition to the bus.
S D A
S C L
001100
ADDR
AD 0
R/W
S ta rt
ACK
D AT A
1-8
ACK
DA TA
1-8
ACK
Stop
N ote: If o peration is a w rite, th is byte contain s the M em o ry A ddress P o inter, M A P .
N ote 1
Figure 22. Control Port Timing, I²C Mode