BQ76952: I2C Block Read.

Part Number: BQ76952

Tool/software:

Hello Ti Team,

I’m working with an STM32U535RET6 as the host microcontroller, communicating with the BQ76952 AFE over I²C with CRC enabled. My goal is to perform a block read of all cell voltages using direct commands such as 0x14. However, after reviewing the Technical Reference Manual, I couldn’t find much detail about the block read process over I²C. Could you provide some guidance on how to carry out a block read in this case?

Best Regards,

SAI VARUN

  • Hello Sai,

    The controller will need to ACK each data byte except for the last one while continuing to clock the interface. The I2C block will automatically increment the register address after each byte.

    For calculating the CRC of the first data byte, it is similar to how a single byte read CRC is calculated, and this will be reset after each data byte and each stop. For following data bytes, the CRC is calculated only over the data byte.

    If you are trying to do a block read of all the cell voltages, you can simply read 32 bytes from 0x14, and it will read all of the cell voltages.

    I would also recommend taking a look at the Software Development Guide which may help explain this better.

    Regards,

    Rohin Nair