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.

[参考译文] BQ27441

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1059541/bq27441

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

大家好、

我正在使用电量监测计 bq27441开发基于 Linux 的平台、内核和 TI 驱动程序版本的详细信息如下。

TI 器件                :bq27xxx
内核版本      : 4.9.241
TI 驱动程序版本   :"1.2.0"
电池                  :锂离子电池/3.3V/2200mAh


我已对 DTS 进行了一些必要的更改,并验证了 dmesg 中的驱动程序探测器是否成功。

以下是错误的参数输出电流;我看到的是、

蓄电池已连接(在负载已连接的放电模式下- LED)

$ cat/sys/class/power_supply/bq27441-0/uevent  

POWER_SUPPLY_NAME                         =bq27441-0
POWER_SUPPLY_STATUS                      =充电
Power_supply_present                    = 1
power_supply_volte_now             =3842000
POWER_SUPPLY_CURRENT_NOW            = 0
POWER_SUPPLY_Capacity                   =52
power_supply_capacity_level          =正常
POWER_SUPPLY_TEMP                         =276
Power_supply_technology              =锂离子电池
POWER_SUPPLY_CHARGE_FULL             =939000
POWER_SUPPLY_CHARGE_NOW              =520000
power_supply_charge _full 设计  =1000000
Power_supply_manufacturer           =德州仪器

电池未连接

$ cat/sys/class/power_supply/bq27441-0/uevent

power_supply_name        =bq27441-0
power_supply_present   = 0


 对 DTS 文件所做的更改、      

        bat: battery {
                status = "okay";
                compatible = "bq27000-battery","ti,bq27000";
                voltage-min-design-microvolt = <2800000>;        
                energy-full-design-microwatt-hours = <3270000>;  
                charge-full-design-microamp-hours  = <3270000>;  
        };

        bq27441: fuel-gauge@55 {
                status = "okay";
                compatible = "ti,bq27441";
                reg = <0x55>;
                monitored-battery = <&bat>;
        };

从日志、

如果电池不处于充电状态、但它显示 POWER_SUPPLY_STATUS 正在充电。

2. power_supply_volte_now (3842000)(3.7V),但 power_supply_capacity(52)是一半(应该是100%?)

此外、还有一段时间会获得 POWER_SUPPLY_CURRENT_NOW 的负值。

电池参数与我的电池无关。

从文档中可以看到、我必须根据电池参数来配置电量监测计驱动器。


问题:

如何配置电池参数 以及必须配置哪个参数?

任何帮助都是值得注意的。


谢谢、此致

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

    您好、Rutvij、

    请参阅 TRM 并检查与充电相关的所有参数

    6.4.2.3.13充电终止时的电压

    我还建议您检查命令并将其与位/字节相关联、然后检查是否正在读取正确的位/字节。 您可以使用 bqStudio 读取相同的值并进行比较。

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

    您好、Shirish、

    感谢您的快速回复。

    目前我没有随我一起提供的网桥硬件(bqStudio 需要)。
    因此,您也可以建议如何从 v4.9的 Device-tree/Linux 驱动程序中配置它们 ?


    谢谢、此致、

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

    您好、Rutvij、

    您能否检查正在读取哪些命令来报告这些值? 这将有所帮助。

    我认为、如果这些值中至少有2个是 FCC 和 RSOC、则可能是正确的

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

    您好、Shirish、

    我已经检查了驱动程序文件 bq27xxx_battery.c、该文件使用以下命令列表来获取读数、请检查此文件。

    [BQ27421] = {
                    [BQ27XXX_REG_CTRL] = 0x00,
                    [BQ27XXX_REG_TEMP] = 0x02,
                    [BQ27XXX_REG_INT_TEMP] = 0x1e,
                    [BQ27XXX_REG_VOLT] = 0x04,
                    [BQ27XXX_REG_AI] = 0x10,
                    [BQ27XXX_REG_FLAGS] = 0x06,
                    [BQ27XXX_REG_TTE] = INVALID_REG_ADDR,
                    [BQ27XXX_REG_TTF] = INVALID_REG_ADDR,
                    [BQ27XXX_REG_TTES] = INVALID_REG_ADDR,
                    [BQ27XXX_REG_TTECP] = INVALID_REG_ADDR,
                    [BQ27XXX_REG_NAC] = 0x08,
                    [BQ27XXX_REG_FCC] = 0x0e,
                    [BQ27XXX_REG_CYCT] = INVALID_REG_ADDR,
                    [BQ27XXX_REG_AE] = INVALID_REG_ADDR,
                    [BQ27XXX_REG_SOC] = 0x1c,
                    [BQ27XXX_REG_DCAP] = 0x3c,
                    [BQ27XXX_REG_AP] = 0x18,
            },
    

    是的、这些值中可能有2个是正确的、但不确定。

    由于我无法使用 bqStudio 检查电量监测计、因此我尝试使用"ArduinoSparkFun Library "读取所有参数。 但是、我会得到相同的结果。

    充电状态 |当前电流|充电状态 参数出错。

    我有这个 TI 电路板:bq27441 EVM。

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

    您好、Rutvij、

    监测计返回的单位与驱动器返回的单位不同。 应用了一个转换公式、在进入代码的细节时应该将其清除。

    从较高层次看、我发现 FCC 接近设计容量、因此没关系。

    POWER_SUPPLY_CHARGE_FULL             =939000
    POWER_SUPPLY_CHARGE_NOW              =520000

    520000/1000000 = 52%显示正确的充电状态。 完成学习周期后、这将扩展到 FCC。

    同样、您可以跟踪 power_supply_status 的命令并将其与命令关联、以确定它是否与 TRM 匹配。 这些产品已经过测试并已投入大规模生产很长时间、因此您可以始终假设产品工作正常并从那里继续运行。

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

    您好、Shirish、

    我已使用以下参数配置 FG:

       容量                :2000mAh
       能源                      :7600 mW
       Terminate_voltage  :3350mV    
       Tape_Rate              :200    

    现在、我得到以下响应、

    POWER_SUPPLY_NAME                        =bq27441
    POWER_SUPPLY_STATUS                      =充电
    Power_supply_present                   = 1
    power_supply_volte_now            =3821000
    POWER_SUPPLY_CURRENT_NOW           =-5000
    POWER_SUPPLY_Capacity                   =48
    power_supply_capacity_level        =正常
    POWER_SUPPLY_TEMP                         =270
    Power_supply_technology             =锂离子电池
    POWER_SUPPLY_CHARGE_FULL             =1937000
    POWER_SUPPLY_CHARGE_NOW             =970000
    power_supply_charge _full 设计   =2000000
    power_supply_manufacturer         =德州仪器

    我确实跟踪了 POWER_SUPPLY_STATUS、状态从 flags()寄存器参数(CHG)更新。

    现在,查询就是它所指示的内容?

    1) 1)电池当前是否通过外部电源充电? 如果是、则错误。

    2) 2)该 CHG 代表什么?

    此外、在 StateOfHealth (SOH)参数上、它是否表示电池的寿命?

    我想推导一些参数,如:

    1) 1)电池充满电的剩余时间是多少?

    2) 2)完全放电剩余时间是多少?

    3) 3)蓄电池健康状况。


    那么,有什么关于如何获得这些信息的建议呢?

    --
    谢谢
    Rutvij Trivedi。

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

    您好、Rutvij、

    请参阅 TRM 第4.4节 Flags():0x06和0x07

    CHG 标志并不表示电池组正在充电

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

    您好、Rutvij、

    将代码更改为读取 StateOfCharge ():0x1C 和0x1D

    这在 TRM 的第4.13节中

    您可以从 TRM 中找到所有命令并更新您的代码

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

    如果您的问题已得到解答、请单击"已解决"按钮关闭此主题。