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.

[参考译文] BQ79616-Q1:了解 BQ79616的串行读取 BusBarValues 需要帮助

Guru**** 2539500 points
Other Parts Discussed in Thread: TMS570LS1224, BQ79616

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1216795/bq79616-q1-need-help-for-understanding-serial-read-busbarvalues-of-bq79616

器件型号:BQ79616-Q1
主题中讨论的其他器件:TMS570LS1224BQ79616

您好!

我正在进行大量实验、以使整个 BMS 系统运行。  

您可以在此处看到我的设置:
https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1199797/bq79600evm-sample-code-do-no-wakeup-to-bq79616-stack/4532095

我将使用 TMS570LS1224来运行 UART 示例代码。
I alread 扩展它以通过 CAN 总线发送值并计算平衡情况的电平。

现在我需要添加一个真正的电流传感器。 我在 BQ79600之后 使用 BQ79616-的 BBP BBN 引脚将其连接到第一个电路板、 Q1

通过 BQAutoEval 1.0.04、扩展该视图以同时显示汇流条 ADC 读数、该值是正确的。  通过传感器的实际电流为+-3A => +-30mV 在 GUI 上读出

现在、我需要帮助来了解并实现通过软件自动读取的正确代码。

我尝试了两种不同的情形:
a.)添加一个新的寄存器请求: ReadReg (0、busbar_HI、response_frameBusbar、2、0、 FRMWRT_STK_R);
   其中 responsevariable 定义为:byte response_frameBusbar[(2+6)*TOTALBOARDS];//totalboards =6 //(BQ79600 + 5xBQ79616)

b)通过额外的两个寄存器扩展了 UART 示例的现有读取例程、因为 Busbar 值直接位于 CELL1映射之后(请参阅寄存器映射)

我还了解到、汇流条 ADC 与电芯测量不同:

--------

变体 A 和 B 均不会停转、为汇流条测量提供愚蠢的读数。

我不知道、GUI 的功能与 UART 示例代码不同。
代码可能必须对  Aux ADC 路径进行完整的 MUX、CB 滤波和 SAR ADC 设置。 ?

我需要一些帮助来了解接下来要做什么。 我认为 Aux_ADC 的配置不像 GUI 那样。
是否可能看到 在初始配置时 GUI 发出的推荐?

非常感谢您提供后续步骤和此类帮助、

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

    当 wrtiting 这个帖子, 我有一些想法如何和在哪里配置。 但仍然无法正常工作。 I 使用情况 B 通过额外的 AUX ADC 设置读取这些值:

    您可以看到、电芯电压校正时使用了错误的 ADC 值(由于编写了愚蠢的调试代码)、但 BB 值应该正确、因为使用了30.52µs /数字校正、您可以在 Provision 文章的代码第228行中看到。

    但3A 电流仍然没有30mV……

    还有进一步的想法吗?

    我现在没有新的想法了。

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

    我真的需要对 GUI 在初始化时的行为进行一些解释。

    MUX 设置中的多路复用器现在可能仍然是问题吗?

    请帮助并讲解这种情况  

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

    尊敬的 Roland:

    在 GUI 中、显示寄存器读取"BUSBAR_HI/LO"的值乘以"0.00003052"。  

    此外、从您分享的屏幕截图中 可以看到、您只是将"AUX_MODE"设置为"11"、但您是否要设置"AUX_GO"位、如果不是、您可以尝试这样做。  

    此致、

    拉维

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

    尊敬的 Ravi:

    感谢您的建议。 您是对的、此代码片段中未设置 AUX_GO。 但是、当我设置它时、行为也没有变化。

    我花了一点钱与不同的设置,并得出结论,这一个必须是正确的。 但它也无法正常工作:

    只是愚蠢的宽变值...


    您能否了解一下 GUI 的含义、以及为什么? 也许多路复用器或 AFE 增益或其他意外的配置设置...

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

    Ravi 您好、

    我通读了数据表 BQ79616、发现唯一的提示就是必须激活 LPF 才能将 BBP-BBN 测量值存入寄存器  

    如果 LFP 未被激活、数值将被存储  

    我仍然从寄存器588和589中获得愚蠢的值...

    您是否已经知道一种可能的方法、以查看 GUI 发送/使用的配置。

    非常感谢大家的辛勤付出、

    罗兰

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

    Ravi 您好、

    您是否有机会了解 GUI 使用哪些设置/发送到 BQ79600?

    我不会成功获得有效值...

    或者、您是否知道通过单次读取直接读取地址?

    很多纹理和此致、

    罗兰

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

    尊敬的 Roland:

    对延迟回复深表歉意。

    从您共享的映像来看,似乎您正在将 ADC_CTRL3设置为0x04,这意味着您正在设置'ADC_GO'位,但您正在将'ADC_MODE'设置为'AUX ADC not running ',您能尝试将该值设置为0x06吗?

    您可以通过读取寄存器映射窗口中的寄存器来检查 GUI 中配置的值。 此外、您还可以采集  

    此外、您还可以捕获 GUI 发送和接收的命令在"Tools ->"Log Pane"中、您应该在筛选器中启用"debug"、如下所示。

    此致、

    拉维

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

    Ravi 您好、

    我也尝试了很多次  ADC_CTRL3 = 0x06、不成功。 因此、我按照您的说明操作 GUI 并读出寄存器的值。

    GUI 上显示了30mV =3A 的正确值:

    In Hex 00302V == 0x03DD

    带调试的读取:

    现在设置:

    当我设置所有这11个配置寄存器的值时、ADC 结果仍然不是03DD 或在0.03mV 的范围内

    对于此代码、  

     #

    我获得了有效的 ADC 单元值、但没有有效的总线值:

    仍然有一些不了解的配置,这使我无法获得有效的 BusBarValues。7

    您知道有人开发了 GUI 或示例代码吗?

    此致、

    罗兰

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

    尊敬的 Roland:

    您能否写出和检查用于转换寄存器中汇流条电压的公式? 如果查看数据表、则转换 lsb 系数将会不同 、Vlsb = 30.52 uV/lsb (与常规主 ADC 和辅助 ADC 电压读数相比)  190.73.

    此致、

    泰勒

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

    尊敬的 Tylor:

    如果你看看第237和238行在上一篇文章,比你可以看到,我已经尝试了两个公式。
    我知道、电芯 ADC 样本和汇流条样本存在差异。 如果有一天读数正确的话,我会在事后正确地处理这个问题。

    再看一下红色圈出的值、它们的范围从12.5xx 到3.27xxx、因此没有稳定的值。  

    有了 GUI、就有了一个看起来很稳定的读数。 因此、我不低于标准、为什么我不能读出与 UART 示例类似的汇流条值(由两个寄存器扩展...)

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

    Roland,

    您实际将什么连接到 BBP/BBN?与万用表相比、该连接可以测量到什么? 请记住、这用于汇流条、而不是像 bq79656那样进行电流测量。 请确保 在读回值之前、也要在 ADC_CONF2中设置 LPF_BB[2:0]、并在 ADC_CTRL1中设置 LPF_BB _EN。

    此致、

    泰勒

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

    Taylor、您好!

    我连接了一个具有10R 负载电阻的 LA55-p 电流传感器。 因此、通过传感器的3安电流为30mV。 万用表显示为30mV。 此外、GUI 显示为30、2mV (见上文)
    https://www.farnell.com/datasheets/1449960.pdf

    ADC_CONF1和 ADC_CONF2由0x00进行初始化、如 GUI 屏幕截图中所示。 因此、使用标准滤波

    我还尝试发送这全部11个寄存器、没有变化、仍然具有范围的值

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

    我发现在理解如何使用 BBP BBN 方面存在差异。

    我注意到、主系统和辅助系统可以对 BBP-BBN

    GUI 似乎可以使用主 ADC 对 BBP 和 BBN 进行采样、而我试图使用 AUX ADC 进行强制采样。

    那么、我的问题可能是一些多路复用器或多路复用器同步时序问题...

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

    Roland,

    是的,这是一个很好的捕获。 通常、测量应按照您尝试的方式由主 ADC 完成。 对于辅助测量、您需要锁定到汇流条以使用 AUX CELL 寄存器查看正确的测量、否则、这是不同通道的公差测量。

    此致、

    泰勒