Datasheet
S
ADDR[6:0]
0 A
CMD[7:0] DATA[7:0]
A
A
P
ADDR[6:0]
S 1
A
DATA[7:0]
N P
Hostgenerated
Fuelgaugegenerated
S
ADDR[6:0]
0
A
CMD[7:0]
A
Sr
ADDR[6:0]
1
A
DATA[7:0]
N P
(a)1-bytewrite
(b)quickread
S
ADDR[6:0]
0
A
CMD[7:0]
A
Sr
ADDR[6:0]
1
A
A
DATA[7:0]
DATA[7:0]
...
(c)1byteread
(d)Incrementalread
N P
S ADDR[6:0] 0 A CMD[7:0] A DATA[7:0] N P
S ADDR[6:0] 0 A
CMD[7:0]
N P
S
ADDR[6:0]
0
A
CMD[7:0]
A
DATA[7:0]
A
N
N
DATA[7:0]
P
...
S
ADDR[6:0]
0
A
CMD[7:0]
A
ADDR[6:0]
A
DATA[7:0]
Sr
1
A
Address
0x7F
Datafrom
addr0x7F
Datafrom
addr0x00
N P
DATA[7:0]
bq27510-G2
www.ti.com
SLUS948 –AUGUST 2010
COMMUNICATIONS
I
2
C INTERFACE
The fuel gauge supports the standard I
2
C read, incremental read, one-byte write quick read, and functions. The
7-bit device address (ADDR) is the most significant 7 bits of the hex address and is fixed as 1010101. The 8-bit
device address is therefore 0xaa or 0xab for write or read, respectively.
(S = Start, Sr = Repeated Start, A = Acknowledge, N = No Acknowledge, and P = Stop)
Figure 5. Supported I
2
C Formats
The "quick read" returns data at the address indicated by the address pointer. The address pointer, a register
internal to the I
2
C communication engine, increments whenever data is acknowledged by the bq27510-G2 or the
I
2
C master. "Quick writes" function in the same manner and are a convenient means of sending multiple bytes to
consecutive command locations (such as two-byte commands that require two bytes of data).
Attempt to write a read-only address (NACK after data sent by master):
Attempt to read an address above 0x6B (NACK command):
Attempt at incremental writes (NACK all extra data bytes sent):
Incremental read at the maximum allowed read address:
Copyright © 2010, Texas Instruments Incorporated Submit Documentation Feedback 31