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.

[参考译文] BQ35100EVM-795:BQ35100EVM-795

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

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1121119/bq35100evm-795-bq35100evm-795

器件型号:BQ35100EVM-795
主题中讨论的其他器件:BQ35100EV2400BQSTUDIO

尊敬的女士,先生,

我有一个电池供电门锁设计、使用 FANSO ER14505M 3、6V LISOCL2主电池。 我喜欢使用 BQ35100测量正确的电池状态。

我安装了 BqStudio 软件并通过 EV2400将评估板连接到 PC。

我从器件上进行了一些读取。

首先、我实现了芯片存储器中的默认 Chem_in 为0x0606。 我的电池不正确。 我的电池容量是2200mAh、制造商是 FANSO、类型是 ER14505M。 653型的不同之处在于100mAh。  

我使用 BQstudio 进行了化学编程、设置为0x0653。 该数字接近我使用的电池。 化学更新文件为966。

那么、如果我想使用我的应用而不是 BQstudio 对电池化学成分进行编程、该怎么做呢。 我想将芯片安装到 PCB 上、我的应用程序将检查化学 ID 并在必要时更改这些数据表。

我研究并记录了化学更新过程中的完整 I2C 通信、并意识到有4pcs 30字节长度的块写入和4pcs 控制和块写入。

我检查了块中的地址、并在 TRM 中查找了这些地址。 我没有找到它们。

值得注意的地址为0x4075、0x4093、0x40b1、0x40cf,它们用于化学更新。  

您会告诉我、在哪里可以找到可读形式的正确电池数据表?  对于 合适的电池、我应该向 Bq35100编程什么?  如果不需要 I2C 通信、我不想总是进行反向工程。

我认为这些表会放入我的应用程序源代码中。 我们将使用多节 LISOCL2型电池、这是可以想象的。 在产品寿命期间、我们以 AA 形式使用了3种以上的 LISOCL2电池、具有不同的 mAh 以及连续和峰值电流。

如果需要、我喜欢通过我的应用程序在运行中实现改变电池化学成分的能力。

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

    您好!

    如果要将化学成分直接编程到监测计、应执行以下步骤  

    为此、数据将位于0x4075、因为这是 ChemID 的存储位置。

    在即时切换方面、您需要在 MCU 上实施例程、以检测所使用的电池类型并相应地更改写入地址0x4075的值。 写入 ChemID 时、将自动导入所写入 ChemID 的 Ra 和 OCV 表的默认值。 重要的是不要将这些值作为每个化学成分的默认值、并且不会表示在运行学习周期并获得黄金映像文件时获得的值。 这意味着这些值将是准确的、但不像粘在一种化学物质中导入了一个了解电池在特定应用中的行为方式的黄金映像那样准确。

    谢谢、此致、

    杰克逊

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

    您好、Jackson、

    如您所述、我只需要重写4075和4076存储器单元上的 chem_id 16位整数以及自动导入的 Ra 和 OCV 表。 从哪里开始?  

    为什么不对我在 BqStudio IDE 化学更新过程中记录的这些值进行编程?  

    特殊地址0x4075、0x4093、0x40b1、0x40cf 上有哪些重要事项?   

    这些地址上的数据(4 x 30字节)在化学更新期间进行修改。  

    我知道我的 PIC18 MCU 具有3个120字节的数据闪存空间、用于3个不同的电池化学数据。

    我希望将最准确的数据用于我的应用

    感谢您提供广告软件

    Laszlo  

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

    您好 Laszlo、

    当您将 ChemID 写入4075时、它会将该 ChemID 的默认 OCV 表导入到数据存储器中。监测计已存储此信息、它只是将 chem 数据导入到数据闪存中、以便将其作为正在使用的数据。 0x4075是 ChemID 的起始地址。 当监测计更新 ChemID、然后更新所有 OCV 表值时、它一次只写入32个字节、这就是您看到0x4093和其他值的原因。 它们对应于 OCV 表中的每32个字节的数据。

    如果您将在给定时间使用的3种化学物质中的任何一种写入0x4075、它将自动更新 OCV 表、如上所述、用于三种类型的呼叫中的每种类型。

    此致、

    杰克逊

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

    你好、Jackson

    之前、我使用 Bqstudio 将化学成分编程为0623

    我检查了它

    我尝试将新的 chem ID (0x0653)写入内存地址(0x4075)、但我的试用未成功。

    我与 BQstudio 一起使用的过程
    1、
    写入3e 75 40 06 53
    uint8_t *** =(uint8_t)(0x1000 -(0x75+0x40+0x06+0x53));
    写入60 F1
    写入61 06

    出什么问题了?

    如何才能实现良好的运行?

    提前感谢

    Laszlo

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

    尝试以下操作:

    写入3E 75 40

    写入40 06 53

    写入60 F1

    写入61 06

    请告诉我这是否可行。

    此致、

    杰克逊

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

    我尝试了

    这没有什么帮助,有什么想法吗?

    之后、如果我设法重新定义芯片中的化学 ID、我应该在应用中对芯片采取什么后续步骤?

    我对校准的看法

    根据 SLUUBH7、有5种校准类型

    1、CCoffset
    2、电路板偏移
    3、温度偏移
    4、电压偏移
    5、电流偏移

    我认为第1点和第2点可以在我的应用中完成、但如何在没有热处理室的情况下执行温度偏移校准? 如何在没有精确电源的情况下执行电压校准? 能否使用新的无源3.6V 电池执行电压校准? 我只能使用内置的150 Ω 分流电阻器以近似的精度执行电流校准、该电阻器可以打开和关闭。 我只知道我的 MCU + BQ35100电路的功耗。

    那么、德州仪器应用开发工程师是如何做到的? 在我的应用中实现什么是绝对必要的? 可以排除什么? 是否所有 MCU 都必须在重启时或仅在特殊设置阶段执行此操作?
    对我来说、一个非常重要的问题是、我可以使用 BQ35100来决定商店的新 LISOCL2电池是连接到我的设备、还是连接到商店的新的无源电池、还是使用过的电池?

    我浏览芯片数据表的时间越长、我的问题就越多。 如果可以、我希望尽可能使用 Bq35100的功能。

    提前感谢您

    Laszlo

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

    您好 Laszlo、

    我认为您需要在读取之前的末尾重新发出第一个3E:75 40命令。 这将刷新存储在该寄存器中的值、以便您可以查看更新。 话虽如此、我咨询了我团队的一名成员、以这种方式编写 ChemID 并不理想、因为它实际上并不更新监测所需的所有参数。 正确执行此操作的唯一方法是通过 BQStudio 中的 Chemistry 插件。

    有关校准相关问题、我将对此进行调查、并在周一结束时返回给您。

    谢谢、如果在最终读数帮助之前再次发出我提到的命令、请告诉我。

    谢谢、此致、

    杰克逊

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

    您好 Laszlo、

    要获得精确的校准值、您需要一个精确的电源/温度室。 一种可能的替代方法是对多个单元进行校准测试并获得平均值、但这不会像使用适当的设备那样产生良好的结果。  

    监测计将无法检测到新电池。这应该由主机 MCU 完成。 然后、您可以向监测计发送新的电池命令。 不能使用部分使用的电池、因为它具有不同的电阻比例因子、这会导致 EOS 模式下的 SOH 数据不可用。

    谢谢、

    杰克逊

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

    您好、Jackson、

    很抱歉,我是在假日。

    在我再次读取0x4075地址的整数值之前,我已经尝试写入 Chem ID 的地址,但它没有帮助。

    我想我将对化学品更新过程的整个方法进行编程、这是我通过示波器捕获的结果

    Laszlo

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

    您好、Jackson、

    当我销售物联网设备时、我会为该设备包装一个完全新的、格式化的 LISOCL2电池组、该电池组具有我知道的化学成分。 我的微程序从闪存中设置5个化学表。 在启动过程中、我要求他们按下器件上的"插入新电池"按钮、这会导致我的 MCU 通知 BQ35100新电池命令。 但是、如果稍后执行该服务的人员不按照我的说明操作、也不会使用我指定的化学成分装入全新的电池、而是使用过的电池、并以相同或不相同的方式按下新电池按钮。 如果 BQ35100无法区分旧电池和新电池、该怎么办? 我将如何处理这种情况? 如果您在设备中放入不同化学成分但未格式化的电池、会发生什么情况?
    对于这些情况、TI 工程师有何建议?

    Laszlo

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

    您好 Laszlo、

    我将需要进入实验室、尝试使用 ChemID 来调试该问题。 我会尽快回复您有关该信息的信息。

    就用户放入已用电池而言、这将影响 EOS 确定、因为需要在电池充满时进行初始阻抗计算。

    如果在器件中放置了器件未配置的不同化学成分、则也会有很大的误差。 这是因为每个化学物质的 OCV 曲线和内部阻抗都存在很大差异、并且与错误的 ChemID 如何告知监测计计算其参数相比、电池的行为方式甚至略有差异、都可能对监测性能产生复合负面影响。

    理想情况下、用户将始终放入新电池、并按下按钮以发送具有正确 ChemID 的新电池命令。

    此致、

    杰克逊

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

    您好 Laszlo、

    我认为、如果不使用 BQStudio、使用示波器对捕获的内容进行编程是成功对 ChemID 进行编程的最佳方法。 如前所述、Chemistry 插件使用各种其他命令为监测计正确更新该值及其关联参数、因此我认为不进行化学更新、因为我们目前正在尝试进行这种更新是可行的。

    此致、

    杰克逊

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

    您好、Jackson、

    您能不能告诉我在化学更新中看到的内存地址定义

    我研究了下一个单元格的值。 正确吗?

    uint16_t Chem_ID =@ 0x4075

    uint16_t OCV_TABLE [32]= AT @ 0x4077

    uint16_t RA_tables[15]=@ 0x4175

    0x40cb 至0x40ce 的地址是什么?

    我看到化学更新将30字节写入 0x40b1、30字节写入 ax40cf、30字节写入0x40ed、30字节写入0x410b、30字节写入0x4129、  16字节至0x4147。

    这些地址上有什么?

    提前感谢

    Laszlo

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

    您好 Laszlo、

    这些地址包含仅在 TI 内部使用的用于监测的私有参数。 这些寄存器不是您应该担心的寄存器、因为它们将在监测计的整个生命周期内自动更新。

    此致、

    杰克逊

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

    您好、Jackson、

    感谢您的帮助、当我有新问题时、我还会再来的

    此致

    Laszlo

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

    听起来不错的 Laszlo、

    我将关闭此主题、以便可以在他们自己的专用主题中解决任何其他问题。 这样、任何有相同问题的人都可以更轻松地在将来找到答案。

    如需了解更多信息、请随时开始新主题。

    此致、

    杰克逊

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

    您好、Jackson、

    我使用了 Bq35100和 BQstudio。

    我不小心密封了器件。 我还记得全新的芯片处于完全访问模式的非密封状态。 我尝试将芯片切换回原始状态,但它不成功。 我后来意识到,在切换到非密封 FA 模式之前,必须先切换芯片非密封模式。 还可以、但结果并不是永久性的、因为第一次复位会使芯片再次回到密封模式。
    您能为这种情况提供任何解决方案吗? 我该怎么做?

    我不仅测试了 Reset()将芯片置于密封模式,而且测试了 New_Batter()命令。

    我可以通过什么方式使未密封的 FA 永久保持?

    此致  

    Laszlo

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

    您好 Laszlo、

    请使用您的任何新问题制作新主题、如果一个主题有多个问题和答案、则使用论坛尝试查找有用信息的其他人会感到困惑。

    我将关闭该线程。

    此致、

    Wyatt Keller