English
Language : 

BQ27X00-TESTER Datasheet, PDF (26/33 Pages) Texas Instruments – SINGLE CELL Li-Ion AND Li-Pol BATTERY GAS GAUGE IC FOR PORTABLE APPLICATIONS (bqJUNIOR)
bq27000, bq27200
SLUS556D – SEPTEMBER 2004 – REVISED MARCH 2006
www.ti.com
Communicating with the bq27200 (I2C interface)
The bq27200 supports the standard I2C read, incremental read, quick read, and one byte write 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)
¡¡ Host generated
bq27200 generated
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡ ¡¡¡¡ S ADDR[6:0]
0A
CMD[7:0]
(a)
¡¡¡¡¡¡ ¡¡¡¡¡ ¡¡¡¡¡¡¡ ¡¡ S ADDR[6:0]
0A
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡ ¡¡ ¡¡¡¡ S ADDR[6:0]
0A
CMD[7:0]
A
DATA[7:0]
AP
S
CMD[7:0]
A Sr
(c)
ADDR[6:0]
ADDR[6:0]
1A
(b)
1A
DATA[7:0]
DATA[7:0]
NP
A Sr ADDR[6:0]
1A
DATA[7:0]
A ...
DATA[7:0]
NP
NP
(d)
Figure 7. Supported I2C formats :
(a) 1-byte write; (b) quick read; (c) 1-byte read; (d) incremental read
The incremental read protocol is recommended for reading all 16-bit values, as this ensures that the 16-bit value
is not updated during the time interval between reading the two bytes of data (see previous section on reading
16-bit values). The quick read returns data at the address indicated by the internal address pointer. The address
pointer is incremented after each data byte is read or written. Reading an even address causes the
communication engine to simultaneously capture the data byte from the requested even address and the data
byte from the next odd address, and the address pointer is incremented twice. The data byte captured from the
next odd address is output if the communication continues, without a stop, after the host acknowledges the even
address byte.
Due to the memory map setup of the device, several boundary conditions must be enforced by the
communication engine.
¡¡¡¡¢¢¢¢¢¢¡¡ ¡¡¢¢¢¢¢¢¢¢ ¡¡¢¢¢¢¢¢¢¢¢¢¡¡ Attempt to write a read-only address (NACK after data sent by master):
S ADDR[6:0]
0A
CMD[7:0]
A
DATA[7:0]
NP
¡¡¡¡¢¢¢¢¢¢¡¡ ¡¡¢¢¢¢¢¢¢¢ ¡¡ Attempt to read an address above 0x7F (NACK command):
S ADDR[6:0]
0A
CMD[7:0]
NP
¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡¡¡¡¡¡¡ ¡¡¡¡¡¡¡¡¡¡ ¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡ Attempt at incremental writes (NACK all extra data bytes sent):
S ADDR[6:0] 0 A
CMD[7:0]
A DATA[7:0]
A DATA[7:0]
N ... N P
¡¡¢¢¢¢¢¢¡¡¡¡¢¢¢¢¢¢¢¢¡¡¡¡¢¢¢¢¢¢ Incremental read at the maximum allowed read address:
¡¡ ¡¡¡¡
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
Data from
addr 0x7F
Data from
addr 0x00
The I2C engine releases both SDA and SCL if the I2C bus is held low for T(BUSERR). If the bq27200 was holding
the lines, releasing them frees the master to drive the lines. If an external condition is holding either of the lines
low, the I2C engine enters the low-power sleep mode if the measured charge and discharge activity level are less
than the DMF threshold.
26
Submit Documentation Feedback