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.

[参考译文] BQ35100:BQ35100:浮点转换

Guru**** 2522770 points
Other Parts Discussed in Thread: BQSTUDIO, BQ35100

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1221153/bq35100-bq35100-floating-point-conversion

器件型号:BQ35100
主题中讨论的其他器件:BQSTUDIO

迪亚尔斯、

我想确保我在 TRM (SLUUBH1C)中对转换流程图的实现是正确的、

请指导我如何确认实施。

我已经尝试如 Bqstudio 所示使该函数的输入、

例如、在本例中、CCGain 为97.906m Ω

因为 Bqstudio 会在显示该值之前进行计算。

" BQ34Z100-G1:浮点转换问题 "4.768除以(浮点转换的结果)

SO 4.768/97.906 = 0.04869977325189467448368843584663

0.04869977325189467448368843584663是我的输入 、但该函数的十六进制输出与存储在 Bq35100中的输出不同。

可在下表中找到

地址 0x4000 0x4001 0x4002 0x4003
数据 0x7c 0x47 0x79 0xa7

我的输出是

地址 0x4000 0x4001 0x4002 0x4003
数据 0x7c 0x49 0x88 0x5f
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    0x7C49885F 为0.04920232

    0x7C4779A7为0.0487

    这意味着函数的十六进制输出不正确。

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

    我已将函数的输入更改为0.0487、输出为0x7c4779a6 off 1。

    • 在 Bqstudio 中显示0x7C49885F 为769.032、0x7C4779A7为97.906如何? 因为从您的计算来看、并没有巨大的差异。
    • BQstudio 是否显示以下内容的结果 4.7680222 /(浮点转换)?
    • 您如何将十六进制转换回十进制?
    • 有时、使用 Bqstudio 写入 CCgain (地址0x4000)时、显示的值即使在选择了"Read All"时也没有更改 、但使用"Advanced Comm"读取时十六进制数据已更改、这是为什么会发生?

    此致

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

    0x7C49885F = 0.04920232、因此 bqStudio 应显示4.768/0.04920232 = 96.906。

    bqStudio 使用4.768/x。

    我使用内部 TI 电子表格进行转换。 此方法与 TI.com 上发布的应用手册中的方法相同。

    请显示高级通信结果和 bqStudio 未更新值的屏幕截图。

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

    尊敬的 Dominik:

    请更正我在转换步骤方面的错误:

    0x7C4779A7

    • 获取第一个字节并将其转换为十进制、0x7C -> 124
    • 然后找到指数、124 128 - 24 =-28。
    • 将0x80添加到第二个字节、0x47+0x80 = 0xC7。 <<-在这一步、如果第二个字节为0x93、那么0x93+0x80 = 0x110、 我是否应该使其为0x10?
    • 将0xC779A7转换为十进制、0xC779A7 -> 13072807。
    • 结果为13072807 * 2^(-28)= 0.0487

    请显示高级通信结果和 bqStudio 未更新值的屏幕截图。

    • 图1:

    • 在这里、我 将 CC增 益更 改为"98" 在图2中:

    • 在 CCgain 地址上写入"0x7C49885F"、结果应为96.906:

    显示769.032我是错的、抱歉。

    此致

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    • 您能否解释一下这些十六进制值为什么不同?

    • 另外、将以下公式中的"ccdelta by1193046"相乘代表什么? 它是某种二进制操作吗?

    因为我在代码中将 ccDelta 和 ccGain 用作类型 double。

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

    以 m Ω 为单位的 CC 差值= 5.677445e6/x、其中 x 为浮点数。 这就是十六进制值不同的原因。

    您必须对 CC Delta 和 CC Gain 进行编程。

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

    谢谢。

    请查看我对此的回复:

    -  

    请使用内部 TI 电子表格进行转换。 此方法与 TI.com 上发布的应用手册中的方法相同。

    请显示高级通信结果和 bqStudio 未更新值的屏幕截图。

    [/报价]

    此处:

    -

    尊敬的 Dominik:

    请更正我在转换步骤方面的错误:

    [/报价]

    此致、

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

    我使用此电子表格: e2e.ti.com/.../Float.xlsm

    您可以使用此电子表格来检查您自己的实现。

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

    谢谢。

    请您检查数字此 BqStudio 没有在这里显示确切的数字:

    • 图1:

    • 在这里、我 将 CC增 益更 改为"98" 在图2中:

    [/报价]

    此致

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

    您好 Marwan:

    确保更改值后执行"全部读取"操作、这些值不会在数据存储器页中自动更新。

    此致、

    怀亚特·凯勒

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

    尊敬的 Wyatt:

    即使完成所有读取操作、也会发生这种情况。

    谢谢

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

    您好 Marwan:

    BQStudio 将对一些值进行舍入、因此预计读数会存在一些小差异、 如果您已完成写入和回读并确认它们在高级通信中是不同的、但在数据存储器中是相同的、我需要在我旁边再次检查这一点。

    此致、

    怀亚特·凯勒