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.

BQ76940: BQ76940 CC reading issue

Part Number: BQ76940

Hi,

The following is the procedure to read CC conversion values in the oneshot mode, but the oneshot set does not seem to be executed.

Execute "Resistors. SysCtrl2. SysCtrl2Bit. CC_ONESHOT = 1;After the operation, SYS_CTRL2 is read and the value is 0x01.

That is,  CC_ONESHOT bit wasn't set.

Question: Under what condition can this happen?

------------------------------------------------------------------------------------------------------------------------

I2C_Write(SYS_STAT,0x80);                                         //clear CC_READY bit


Registers.SysCtrl2.SysCtrl2Bit.CC_ONESHOT=1;  //set one shot

I2C_Write(SYS_CTRL2,Registers.SysCtrl2.SysCtrl2Byte);  //ONESHOT mode


while ((I2C_Read(SYS_STAT)&0X80)==0X00)  //wait CC_READY to be set

{ all_led_on();}

 i=(I2C_Read(CC_HI_ADDRESS)<<8)+I2C_Read(CC_LO_ADDRESS); 

Thank you!

  • Hi Lenna,
    Thank you for your interest in our products. A BMS expert has been assigned to your question.

    Regards,
    David
  • Lenna,

    So when you read back from SYS_CTRL2 you see 0x1 i.e. 0000 0001 there should be other stuff in there as CC_EN should be set to 0 but your DSG and CHG should be 1 unless you are getting a fault.

    Make sure you are clearing your CC_READY bit each time, and also the CC_ONESHOT will be cleared (back to 0) after each read as this is a manual reading by the CC.

    Thanks

    Miguel