EC智能电池信息读取

 前言

        最近在做EC方面的项目,客户需求带电池的方案。EC芯片用的是ITE的IT5571。

        本人刚毕业,对EC方面很多都不懂,以下内容是我在网上找的各种资料经过自己的理解所总结。如有错误请指正谢谢!

1.智能电池组成

        智能电池的构造简单来说主要分为电芯(cell)、电池保护板(bms)、电池外壳这几部分。

        电芯仅仅用来提供电压电流。几个电芯串联起来就是电池包(package)。若一个电芯的电压为3.7V,电池包为3个电芯串联,则电池包电压为3.7X3=11.1V。

        电池保护板则负责电池的充放电管理以及和OS数据通信。

2.智能电池和EC以及OS之间通信

        智能电池是一个SMBus设备,通过SMBus总线来进行数据传输。电池信息数据到操作系统的数据流向:SMART BATTERY->EC SMBUS->EC 62/66 PORT->BIOS->OS。既然智能电池是SMBus设备,那么要和智能电池通信就要知道其相对应的设备地址。以bq29330+bq20z70电池保护板为例,查询芯片手册可知bq20z70的从设备地址为0x16。

        下图为bq20z70 datasheet中提到的SMBus设备地址:

 3.智能电池与EC连接

        下图为某智能电池的保护电路原理图。我们需要注意PRES、SMBC、SMBD这三个引脚。SMBC与SMBD和EC上的一组SMBus channel直接相连。

        PRES(System Present Flag)脚的作用是用作EC检测电池是否插入的判断脚。PRES连接EC的GPIO脚,GPIO脚配置为输入模式,初始上拉为高电平,需要提前去抖。当智能电池接入座子,则EC检测到PRES脚拉低,在代码中通过判断得知电池的存在。

              保护电路板原理图:

4.智能电池标准SBS命令

        所有的智能电池都符合Smart Battery System(SBS)规范。在此规范中统一定义了智能电池标准的查询信息命令,这些标准命令是所有电池公用的。不同的电池除了标准的SBS命令以外还会有自己独有的命令,在手册中查询Extended SBS Commands来查看相对应功能。

        下图为智能电池规范中截取的标准SBS命令:

        通过命令获取电池所需充电电流和充电电压值,写入charger的寄存器中即可实现智能电池的智能充电。        

        下图为获取电池所需充电电流和充电电压命令:

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值