mcu 与电量计 BQ40Z80 通信,读取电芯电量

      最后更新:2022-02-27 05:30:03 手机定位技术交流文章

      一、电量计是什么

      电量计IC 采集电芯电压、电芯温度、电芯电流等信息,通过库仑积分和电池建模等计算电池电量、健康度等信息,通过I2C/SMBUS/HDQ 等通信端口,与外部主机通信。

      二、通信方式SMB

      SMBus 和 I2C的主要差别是与各种时序要求相关。下面列举最重要的方面:

      • SMBus 定义一个最小总线时钟频率 FSMB, 10 KHz。I2C没有明确任何最小总线时钟频率。
      • 除了维持有效的总线吞吐量,该SMBus协议参数还可作为一个简单的检测总线空闲条件(除了或代替检测每个STOP条件)和实现比特位超时的方法。
      • SMBus 定义一个数据保持时间,即从 SMBCLK 下降沿之后,SMBDAT仍然必须维持至少300ns有效。这在 I2C协议中定义的保持时间为0。* * SMBus 时钟最大频率定义为100 KHz。I2C提供多种不同速率模式操作,Standard模式最高频率达到100 KHz, Fast模式为400KHz,Fast Plus为1 MHz,而 High-speed高达到3.4MHz。
      • SMBus 定义一个时钟低电平超时 TTIMEOUT,最大为35ms。I2C并没有明确指定任何超时限制。
      • SMBus 明确 TLOW:SEXT,即SMBus 从设备的累积时钟低扩展时间。I2C没有类似的规定。
      • SMBus 明确 TLOW:MEXT,即SMBus主设备的累积时钟低扩展时间。I2C没有类似的规定。

      三、通信盒子

      TI目前提供了两款通信盒子(EV2300 ,EV2400),供不同的电量计IC与上位机通信。通信盒子上提供了SMB,I2C,HDQ三种通信接口,不同的电量计IC 可以根据自己的通信方式,选择不同的接口。
      EV2300 在接入64 位电脑系统时要单独装驱动。 点击下载
      EV2400在接入电脑时会自动装驱动, 它兼容性更广,兼容使用EV2400。

      四、BQSTUDIO

      BQSTUDIO 是 TI 官方提供的上位机软件,通过专用通信盒子,与电量计IC 相连,能够读取电量计IC 测量到的数据。打开BQSTUDIO ,如果在左下角提示No free adapters are available for use on this system,如果确定usb 线没异常,应该就是通信盒子(EV2300)的驱动没装。

      正常打开BQSTUDIO 的显示如下:
      在这里插入图片描述

      在BQSTUDIO 工具栏可以选择Advanced Comm SMB , 可以给电量计IC ,发送命令,read word,write word等等。
      在这里插入图片描述
      在这里插入图片描述

      我这里没有深入研究BQSTUDIO 的功能。我自己通过mcu 读取电量计数据时,没读取成功。这里我的目的是为了捕获通信盒子和电量计的IC 的通信过程,用以优化我代码中的bugs。

      修复代码的问题点

      这里捕抓了通信盒子和电量计的通信过程
      在这里插入图片描述

      分析了一下,发现与自己代码中的不同点在于。我代码中在第9个sck 周期,等待电量计IC 回复的时间太短。延长一下这个时间,问题解决。

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/19116.html

          热门文章

          文章分类