S ADDR[6:0] 0 A CMD[7:0]
A Sr
ADDR[6:0]
1 A
DATA[7:0]
A
...
DATA[7:0]
N P
Address
0x7F
DataFrom
addr0x7F
DataFrom
addr0x00
S
ADDR[6:0]
0 A
CMD[7:0]
A
A
N
P
DATA[7:0]
DATA[7:0]
...
N
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 P
S ADDR[6:0] 0 A CMD[7:0] A DATA[7:0] A P S ADDR[6:0] 1 A DATA[7:0] N P
S
ADDR[6:0]
0 A
CMD[7:0]
A Sr
ADDR[6:0] 1 A DATA[7:0]
N P
S ADDR[6:0] 0 A CMD[7:0]
A Sr
ADDR[6:0]
1 A
DATA[7:0]
A
. . .
DATA[7:0]
N P
(d) incremental read
c) 1-byte read
(a) 1-byte write
(b) quick read
Host Generated Fuel Gauge Generated
(
48
SLUUBH1C–August 2016–Revised March 2018
Submit Documentation Feedback
Copyright © 2016–2018, Texas Instruments Incorporated
Communications
Chapter 14
SLUUBH1C–August 2016–Revised March 2018
Communications
14.1 I
2
C Interface
The gas 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.
The supported I
2
C formats are (a) 1-byte write, (b) quick read, (c) 1-byte read, and (d) incremental read.
Diagram Key: S = Start, Sr = Repeated Start, A = Acknowledge, N = No Acknowledge, and P = Stop
Figure 14-1. 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
device 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 2-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 0x7F (NACK command):
Attempt at incremental writes (NACK all extra data bytes sent):
Incremental read at the maximum allowed read address:
The I
2
C engine releases both SDA and SCL if the I
2
C bus is held low for Bus Low Time. If the gas gauge
were holding the lines, releasing them frees the master to drive the lines.
Examples of generic I
2
C transactions can be found in the Using I
2
C Communication with the bq275xx
Series of Fuel Gauges Application Report (SLUA467).