SLUUCO5A december 2022 – august 2023 BQ34Z100-R2
The gas gauge supports the standard I2C 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.
Figure 4-1 Supported
I2C formats: (a) 1-byte write, (b) quick read, (c) 1 byte-read,
and (d) incremental read (S = Start, Sr = Repeated Start, A = Acknowledge, N =
No Acknowledge, and P = Stop).The “quick read” returns data at the address indicated by the address pointer. The address pointer, a register internal to the I2C communication engine, increments whenever data is acknowledged by the device or the I2C controller. “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).
Figure 4-2 Attempt
To Write a Read-Only Address (Nack After Data Sent By
Controller)
Figure 4-3 Attempt
To Read An Address Above 0x7F (Nack Command)
Figure 4-4 Attempt
At Incremental Writes (nack All Extra Data Bytes Sent)
Figure 4-5 Incremental Read at the Maximum Allowed Read AddressThe I2C engine releases both SDA and SCL if the I2C bus is held low for two seconds. If the gas gauge was holding the lines, releasing them frees the controller to drive the lines. If an external condition is holding either of the lines low, the I2C engine enters the low-power SLEEP mode.