Datasheet

www.ti.com
Communications
A5
SCLK
SDATA
A6 ACKR/WA0A4
R5R6R7 R0
D7ACK D6 D5 D0 ACK
0 0 00
Slave Address Register Address DataStart Stop
Note: Slave = bq29312
A5
SCLK
SDATA
Stop
A6 ACKR/WA0 R6R7 R0 A6ACK A0 R/W ACK D7
0 1 0
D6 D0 NACK
0 0
Slave Address Register Address
Data
Start
Note: Slave = bq29312
Slave Address
Slave Drives
The Data
Master Drives
NACK and Stop
A5
SCLK
SDATA
Stop
A6 ACKR/WA0 R6R7 R0 A6ACK A0 R/W ACK D7
0 0 0
D0 NACKA5
Stop Start
Slave Address
Register
Address
Start
Note: Slave = bq29312
Slave Address
Slave Drives
The Data
Master Drives
NACK and Stop
bq29312A
SLUS629A JANUARY 2005 REVISED AUGUST 2005
The I
2
C compatible serial communications provides read and write access to the bq29312A data area. The data
is clocked via separate data (SDATA) and clock (SCLK) pins. The bq29312A acts as a slave device and does
not generate clock pulses. Communication to the bq29312A is provided from GPIO pins or an I
2
C supporting port
of a host system controller. The slave address for the bq29312A is 7 bits and the value is 0100 000 (0x20).
(MSB) I
2
C ADDRESS +R/W BIT (LSB)
(MSB) I
2
C ADDRESS (0x20) (LSB)
Write
(1)
0
0 1 0 0 0 0 0
Read 1
(1) Bit 0: 0 = write, 1= read
The bq29312A does not have the following functions compatible with the I
2
C specification.
The bq29312A is always regarded as a slave.
The bq29312A does not return a NACK for an invalid register address.
The bq29312A does not support the general code of the I
2
C specification, and therefore does not return an
ACK.
The bq29312A does not support the address auto increment, which allows continuous reading and writing.
The bq29312A allows data to be written to or read from the same location without resending the location
address.
Figure 4. I
2
C-Bus Write to bq29312A
Figure 5. I
2
C-Bus Read from bq29312A: Protocol A
Figure 6. I
2
C-Bus Read from bq29312A: Protocol B
16