SLUSDQ4 April 2019 BQ79606A-Q1
A read command for the stack devices (it does not include the base or bridge device) generates a number of response frames depending on the number of devices in the stack, whose length depends on the requested number of register bytes read. For example, using the same cell voltage register example as above, but now addressing a stack of 3 devices, the response to this command is 3 separate response frames, each with a length of 18 bytes (12 data bytes + 6 protocol bytes). The stack device read command frame must contain the register address to start at (address field) and the number of bytes to return (number of registers to read). The DATA_SIZE field in the initialization byte for the read command is always 0b000 as the maximum number of readable bytes is 128 (1 byte worth of addresses). The command frame for a burst read of all of the cell voltages is configured as in Table 15.
During the response, each device (address N) in the stack waits until the device above (address N+1) it responds before appending its message to the full response frame. The CRC is validated while receiving the responses. If a CRC error occurs in the response frame from address N+1, device N does NOT append its message and an invalid CRC fault is generated.
A stack read/ is the same as the broadcast read except that it applies only for stack devices (excludes the base and the bridge).
|Initialization Byte||0xA0||Always 0xA0|
|Device ID Address||--||No address byte is sent in stack read|
|Register Address||0x0215||Start with address 0x215 (VCELL1H)|
|Data||0x0B||Send 12 bytes worth of data back (register contents from 0x215 to 0x220) from each device in the stack.|