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.

[参考译文] BQ27742-G1:校准温度、电压和电流

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/641850/bq27742-g1-calibrate-temperature-voltage-and-current

器件型号:BQ27742-G1
主题中讨论的其他器件:BQSTUDIO

我正在尝试校准 BQ27742器件上的某些值、并与校准的单位相混淆。  我使用 SLUA640B 和 SLUUAX0C 作为参考文档。

我从器件中读取的值不清楚它们的单位是什么、文档中没有为这些扩展数据值中的任何一个指定单位。  用于更新闪存的目标位置只是将"数字"作为其单位。   下面是我所读的内容:

 AN_CURRENT_LSB  84

AN_VCELL_LSB      35.

AN_TEMP_LSB       156.

 要校准电压、电流或温度、我必须从一个已知值开始。  我假定 V、mA 和 C、但以这些单位提供已知值不会产生"良好"的计算值。  例如、使用3.7V 的已知电压、算法 vOffset = knownVoltage - avgRawData 以-31.3结束。  负值在范围内、但我认为我的假设是错误的。  请告诉我校准过程需要哪些单位。

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

    这些扩展数据命令允许从 ADC 读取存储的原始数据。

    要读取数据、请发送命令0x7B 用于 AN_CURRENT_MSB (最高有效字节)、发送命令0x7A 用于 AN_CURRENT_LSB (超前有效字节)。

    电流值将基于感应电阻器上的压降和感应电阻器的欧姆值。

    请注意:对于电流、数据是有符号整数(2字节)、而电压是无符号整数(2字节)。

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

    Bryan、

    我读取的值在其 MSB 中有零、因此我没有将它们包括在内。  您的回答未回答我关于我读取的值和"已知"值与校准电流、电压或温度之间的关系的问题。  给定我读取的值、校准算法中应提供的"已知"值。  我不是特定值、而是使算法提供有效结果的单位。

    谢谢、

    标记

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    标记
    请参阅 EVM 用户指南、了解如何使用 bqstudio、EV2300和您的电路板执行校准。

    如果您尝试编写代码以执行校准、请参阅以下应用手册。

    www.ti.com/.../slua640

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

    我正在尝试编写代码来执行校准。 正如我在最初的帖子中所述、我使用 SLUA640B 作为一个参考。 在这里、我使用算法来校准电流、电压和温度。 我不知道已知值的单位是多少、考虑到我从监测计中读取的值、我的假设没有意义。

    标记
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Mark、
    已知电压是施加的电池电压、以 mV 为单位、已知电流是施加在监测计感应电阻器上的电流、以 mA 为单位。
    谢谢
    Onyx
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Onyx、

    感谢您的回答、我相信这就是我要寻找的信息。  您是否还有用于温度校准的单位?

    标记

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    bqStudio 使用 DEG C 进行温度校准。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    达米安

    度 C 校准毫无意义。 我从 AN_TEMP_LSB 读取的值为156。 任何有效的已知温度最终都将出现 tOffset 的负值、这似乎不正确。

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

    那么、您指的是读取温度寄存器0x06和0x07? 它的单位为0.1K

    请参阅 TRM 第49页
    www.ti.com/.../sluuax0c.pdf

    4.1.4温度():0x06和0x07
    此只读函数返回电池温度的无符号整数值、单位为电量监测计测量的0.1°K、用于电量监测算法。 它根据 Pack Configuration 中[TEMPS]位的设置报告 InternalTemperature()或外部热敏电阻温度。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    达米安

    我指的是 AN_TEMP_LSB (0x1E)。  0.1 K 对该值没有意义。

    标记

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    应为0x7E、而不是0x1E
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Mark、您好!

    这些是直接来自 ADC 的数据值。 单位为 LSB (最低有效位)。 这些值需要将映射转换为物理单元。

    请测试您的偏移。 如流程图所示、输入已知值、记录该值、然后修改偏移、直到器件报告所需值。

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

    您是否解决了此问题?

    扩展命令0x7A、0x7C 和0x7E 是两个字节值。 它们返回原始的未补偿 ADC 计数/值。 您需要读取 LSB 和 MSB。 您提供的值确实没有意义、因此您的读取肯定有问题。

    在3.7V 的情况下、您应该读取一个2字节值0x0E74、十进制为3700mV。

    如果您未应用电流、则应读取2字节值0x0059、十进制为89mA。

    如果温度为24.6C、则应读取2字节值0x0BA2、十进制为2978 (0.1K)=> 297.8K 或297.8-273.2 = 24.6C
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢、这非常有帮助。