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.

笔记本电脑电池保护板中bq20Z95DBT是电量计量芯片吗?如何用IIC与单片机实现通信?

Other Parts Discussed in Thread: BQ29330, BQ78350

笔记本电脑电池保护板中bq20Z95DBT是电量计量芯片吗?他有管理控制充放电的功能吗?保护板上好像没有其他的控制MCU了,控制是由电脑发出的?

电池3串2并,其中有1并的1组电池电压只有0.7V,其他2组都是4.0V左右,更换掉那组坏的,就可以恢复使用了吗?有没有网上所说的锁牢的情况呢?会有其他不良影响吗?

请教高手,谢谢回答!

用单片机IIC协议可以通讯吗?有外围参考电路吗?下面的文档中没有找到参考电路。

bq20z90-V1.50 + bq29330, bq20z95
Technical Reference
Literature Number: SLUU264A
November 2006–Revised August 2007

  • 可以到下面链接下载bq20z95EVM-001 SBS 1.1 Impedance Track Technology (Rev. A),里面有EVM的原理图。

    http://www.ti.com/product/BQ20Z95/technicaldocuments

    bq20Z95是电量管理和保护IC,不需要MCU控制。

  • 下载了您提供的文档,按照文档搭建好了电路,找到了bq20z95的SMB data和SMB Clock的接口,设想用单片机利用SMBus总线(IIC总线)获取和设置bq20z95的参数。但不知bq20z95的器件地址是什么。sluu264a bq20z95 Technical Reference.pdf里面的“SBS Commands”与IIC的使用有不同之处。

    参见论坛的一篇《透过STM32 MCU和bq78350之间的SMBus interface 发送SBS command》的提问和回复:

    读取SMBus通讯格式(下划线为host侧发送的数据,黄色为bq78350返回的数据)

    1、发送数据帧格式:Start + Device Address :0x16 + ManufactoryBlockAccess : 0x44 + Data Length: 0x02 + DataFlash Address:0x00 , 0x40 + Checksum: 0xAB + End

    2、发送数据帧格式:Start + Device Address: 0x16 + ManufactoryBlockAccess:0x44 + Re-Start + Device Address:0x17 + Data Length:0x22(DataFlash Address 2bytes+32bytes data) + 34bytes Data + Checksum:0x85 + End

    3、如果需要读取后续的dataflash的内容,重复发送第2步的内容.

    以下为示例读取0x4000后的64bytes:

    S  Addr:0x16   0x44   0x02   0x00   0x40   0xAB   P

    S  Addr:0x16   0x44   S  Addr:0x17   0x22   0x00   0x40   0x84   0x07   0x02   0x75   0x96   0x19   0x9C   0x65   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x00   0x40   0x00   0x00   0x00   0x00   0x85   P

    S  Addr:0x16   0x44   S  Addr:0x17   0x22   0x20   0x40   0x00   0x13   0x88   0x00   0x00   0x13   0x88   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0xFF   0x80   P

    那么,可以下载到“SBS Commands”的相关规范吗?

  • 用单片机模拟IIC与bq20z95通信:Start + Device address0x16 + Write + ACK;但却没有ack回应,不知为什么?请教,bq20z95处于某种状态时比如Sealed时,会出现没有ACK回应吗?

    现在bq20z95Vcc脚有9V输入,CHG有11V输出,整个电池组没有输出,DSG为低,safe脚为低。

    IIC时序应该没有问题,10K<通信频率<100K。

  • 这个问题很低级吗?不值得TI员工回答?英语差,手册看不太懂啊。

    用单片机模拟IIC与bq20z95通信:Start + Device address0x16 + Write + ACK;但却没有ack回应,不知为什么?请教,bq20z95处于某种状态时比如Sealed时,会出现没有ACK回应吗?

    现在bq20z95Vcc脚有9V输入,CHG有11V输出,整个电池组没有输出,DSG为低,safe脚为低。

    IIC时序应该没有问题,10K<通信频率<100K。

  • 终于读到bq20z95的反馈了,但读取内容又碰到了困难。参照一个帖子的内容:

    首先得确保模拟IIC的时序正确。你可参考这个顺序来读取BQ20Z95的数据:

    Start + Device address + Write + ACK + Command + ACK + Sr +Device address + Read + ACK + Byte #0 + ACK + Byte #1 +ACK + PEC + NACK + Stop

    依照例子,写入:S+0x16+Command:0x19(读取设计的电压)+Sr+0x17+READ:2字节+P。返回为0x5c、0x15,不知到应该读作0x5c15还是0x155c,不管如何读,两个结果23573mV、5468mV应该都不对,实际是3串电池11100mV。

    技术手册也不是很懂:

    sluu264a_bq20z95 Technical Reference.pdf

    第100页:

    C.1.4 Example

    To write the value of Term Voltage to a value of 8.7 V the following sequence is used.
    Read complete Gas Gauging-IT Config subclass (SubclassID = 80) into RAM:
    · Write Subclass ID
    – SMB Slave Address (0x16)
    – SMB CMD 0x77 with 0x0050 as data (=80 decimal)
    · Read Subclass (2 blocks are needed as its over 32 bytes long)
    – SMBSlave Address (0x16)
    – SMB CMD 0x78 receiving 32 bytes of data
    – SMB CMD 0x79 receiving 32 bytes of data
    Overwrite offset 45 of received data with 8.7 V:
    · Update offset 45 of second block with 0x21fc (=8700 decimal)
    Write the complete subclass back to the bq20z90/bq20z95:
    · Write Subclass ID
    – SMB Slave Address (0x16)
    – SMB CMD 0x77 with 0x0050 as data
    · Write Subclass
    – SMB Slave Address (0x17)
    – SMB CMD 0x78 with 32 bytes of data
    – SMB CMD 0x79 with 32 bytes of data

    这个例子,写成数据,是不是如下:S+0x16+0x77+0x00+0x50+0x16+0x78+读取32byte+0x79+读取32byte?其中要Sr吗?

    望得到YI员工或其他高手的回答。

  • 用0x0054命令,返回3243,FAS=0、SS=1,被锁定了,参考其他帖子:Sealed恢复到Unsealed的默认密码是0414,3672;但不知道这4个字节如何写进去,

    A.1.2.14 Unseal Device (UnsealKey)

    Instructs the bq20z90/bq20z95 to enable access to the SBS functions and data flash space and clear the
    [SS] flag. This 2 step command needs to be written to ManufacturerAccess in the following order: 1st word
    of the UnSealKey first followed by the 2nd word of the UnSealKey. If the command fails 4 seconds must
    pass before the command can be reissued.
    This command is only available when the bq20z90/bq20z95 is in Sealed mode.

    下不去了,求救

  • Battery Management - Gas Gauge Forum - Battery Management - TI E2E Community  

    https://e2e.ti.com/support/power_management/battery_management/f/180

    在总部论坛上得到了全部答案。

    谢谢大家。