This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BQ76952: Does SPI auto-increment register address

Part Number: BQ76952

Hi all,

When using SPI on the BQ76952, is the register address we want to read/write from auto incremented? For example, if we want to read cell voltage 1, we send the direct command value of 0x14 and when MISO reflects 0x14, then we have the lower byte of the cell 1 voltage. Then, we need to send 0x15 to get the upper byte of the cell 1 voltage.

My question is when we are checking the MISO line for reflected data, is 0x14 auto incremented to 0x15 so we can just do something like: 

if (rx_data_array[0] == addr); //data reflected is the command we sent.
I am just curious about this so I don't have to do a bunch of logic for if we are on the first pass or second pass and check for 0x14 then 0x15 on the MISO line. Looking at the code examples for SPI, it looks like the address is auto incremented because they do this:
if (ReceiveBuffer[0] == addr)
Thank you for the assistance.
Sincerely,
Kyle Garland
  • Hi Kyle,

    The address is not automatically incremented. There are no block reads in SPI mode. The code examples are a little conservative - for example you can write to 0x14 followed by 0x15 (while reading 0x14 data) rather than writing 0x14 twice like the example. 

    Best regards,

    Matt