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.

[参考译文] bq20z95:闪存读取问题

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/633862/bq20z95-flash-read-problem

器件型号:BQ20Z95
主题中讨论的其他部件:bq29330、、 BQEVSW

我必须从我的测试程序中读取整个 GG 闪存、除了读取校准类、数据子类104之外、它在大多数情况下都起作用。  

我可以读取 C 代码中的子类/页、但当我尝试解析子类参数时、我会得到的结果大多是垃圾:

我的33字节从子类104读取的原始数据是0x 15 81 6E D9 06 94 07 E0 BA 5F 82 05 08 56 22 F8 00 74 27 FA 00 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 00。  

(当我读取数据闪存时、我总是一次读取1+32字节、但这不应影响数据。  我的缓冲区足够大、足以保留数据。)

我想知道"bq20z90-v1.50 + bq29330、bq20z95技术参考"(第194、210页)中的信息 是否不完整/不准确?  

数据闪存的其余部分正常输出。

谢谢你。

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

    您好、Marius

    请参见随附的。

    e2e.ti.com/.../8838.how-EVSW-Display-the-calibration-Raw-Data-V1.03-_2800_1_2900_.pdf

    另请参阅下面随附的应用手册

    www.ti.com/.../slva148a.pdf

    希望这对您有所帮助。

    谢谢

    Onyx

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

    感谢您提供的信息、但我仍然无法正确转换数据。 在第二个参考中、我发现浮点是 Xemics 格式。 我在网上找到了一些用于进行转换的 C 代码、但结果是1.865998、而不是5.048。

    即使我发现的代码是错误的、我相信还有一些未记录在技术参考中的内容: 使用 bqEVSW 提取的 CC 增益和 CC Delta 是相同的值、但如果查看我从闪存提取的原始数据、您将看到字节1-4 (跳过字节0、这是数据的大小)和字节5-8是不同的。 它们不能转换为 bqEVSW 报告的同一个数字(5.048)。

    我想知道 bqEVSW 如何处理闪存块以获得以下内容:
    [数据(校准)]
    CC 增益= 5.048
    CC Delta = 5.048
    基准电压= 1222.50
    AFE Pack 增益= 672.91
    CC 偏移=-0.301
    电路板偏移= 17.1
    INT 温度偏移= 3.9
    EXT1温度偏移=-.6
    ext2温度偏移= 0.0

    这里是我的原始数据:
    [数据(校准)]:数据缓冲器= 0x 15 81 6E D9 06 94 07 E0 BA 5F 82 05 08 56 22 F8 00 74 27 FA 00 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 B1 00 (我读取34个字节、仅使用前21个字节)

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

    请按照 TRM ( www.ti.com/.../sluu264a.pdf )中的表 C-262所示应用偏移量,而不是按顺序读取数据。

    请告诉我这是否能解决您的问题。

    此致、
    Bryan Kahler
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我不确定我是否跟随。 我读取表 C-262中概述的校准类、数据子类(104)。 您可以在我之前的帖子中看到数据。 但是、当我解析数据时、我会得到的大部分是垃圾。 顺便说一下、我对闪存的其余部分执行同样的操作、每次一个子类、我在解析和转换每个参数的数据时没有问题、如表 C-262所示。 我遇到问题的唯一子类是校准数据。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Ghita、

    请使用此文件中提供的计算方法:

    e2e.ti.com/.../how-EVSW-Display-the-calibration-Raw-Data-V1.03-_2800_1_2900_.pdf

    但是、对于这些缩放值:

    CC 增益:9.419/x
    CC Delta:2809326/x
    参考电压:x*5
    AFE 包增益:(x*3125)/1024
    CC 偏移:(x*9.419)/64000
    电路板偏移:(x*9.419)/64
    内部温度偏移:X
    EXT1温度偏移:X
    ext2温度偏移:x

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

    这要好得多。  但还不是全部:

     CC 增益= 5.047701

     CC Delta = 5.047700

     基准电压= 122250.00

     AFE Pack 增益= 67291.26

     CC 偏移=-0.301

     电路板偏移= 17.1

     内部温度偏移= 39.0

     EXT1温度偏移= 250.0

     ext2温度偏移= 0.0

    并期望:

     CC 增益= 5.048

     CC Delta = 5.048

     基准电压= 1222.50

     AFE Pack 增益= 672.91

     CC 偏移=-0.301

     电路板偏移= 17.1

     INT 温度偏移= 3.9

     EXT1温度偏移=-.6

     ext2温度偏移= 0.0

    看起来有些比例因子并不存在或缺失。