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:电池电压最少计数

Guru**** 2558960 points
Other Parts Discussed in Thread: BQ76940

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/796795/bq76940-least-count-of-cell-voltage

器件型号:BQ76940

您好!  

我将 BQ7694003与 atmega328p (8位 MCU、8位 ADC)配合使用。 当我使用主机读取 VCX 寄存器时、我没有得到很高的分辨率读取。 我以连续读取的方式读取寄存器、将 ADC 值存储在16位变量中、然后将其转换为电压读数。  

我获得了3881、3967、4065、4158mV 等电池电压读数。 我的问题是,为什么不能识别中间电池电压值? 为什么 bq76940 ADC 不能为我提供3900、3901、3902等价值  

我已经交叉验证了 ADC 电压转换、看起来不错。 使用16位数字。  

从技术上讲、ADC 的计数最少是(5-0)/(2^14)对吧? 我获得的电压读数相差80-95mV   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Pranit、
    感谢您的提问。
    我们的团队将在他们返回办公室时回答问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Pranit、
    bq76940电压 ADC 具有大约382uV LSB。 对于电池电压、如数据表的第7.3.1.1.2节所述、存储一个增益和偏移、以减少电池在正常电压范围内的误差。 如图6-2所示、输出中可能存在不连续性、但不应存在类似90-95mV 的较大阶跃。 如果您使用过 EVM 及其评估软件、通常会看到电池电压读数根据电源电压和环境从噪声中改变一个计数或2。
    您可以检查 I2C 事务、以确保寄存器读取是顺序的、并且总线上的值是最终到达变量的值。 如果变量中的低字节被忽略、则电压将增加256个计数或256 x 382uV、标称增益= 98mV。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我使用的是8位 MCU。 我将在单个 i2c 事务中的两次连续读取中读取14位 VCX 寄存器。 我将每个字节存储在8位变量中。 读取两个字节后、我将把它们合并为一个字节并存储在一个16位变量中。 我认为这不会导致 MCU 错过 VCX 寄存器的低字节。 我仍将研究 i2c 信号和 VCX 寄存器的单个字节。

    主席先生,你还能提出什么建议?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Pranit、
    如果您不在同一事务中读取两个字节、则会在字节边界处遇到问题。 假设将电压悬停在0x2000、0x1FFF 处。 如果在单独的事务中读取单个字节、重新汇编该值后、您可能会看到0x1FFF、0x1F00、0x2000或0x20FF。
    80mV 除以256将为312uV、您可以检查增益是否正确读取。 如果部件损坏、您可以尝试另一个部件。 否则没有其他建议。