BD99954GW/MWV——既能玩无线充电又能玩USBPD的开发板

分享到:

概览
近年来,笔记本电脑等移动设备已实现可高达100W充电,采用可使充电连接器通用化的USB PD的应用已经越来越多。另外,同时采用有线充电加无线充电(无线供电)两种充电方式的趋势也有增无减。然而,要满足USB PD这类的大范围功率需求,例如要想从5V的充电器向2节电池(=8.4V)充电,系统必须添加升压功能。另外,同时采用两种充电方式,需要再增加充电IC和外置部件,并通过微控制器来控制充电切换,这些在工程实践中复杂度与成本都会带来不小的压力。

应对这些问题,ROHM新推出了一款电池充电IC:BD99954GW/MWV。该芯片以1-4节电池为对象,利用升降压控制生成3.07-19.2V的充电电压,同时支持最先进的USB PD系统的电池充电IC。实现ROHM独创、业界首发的充电系统双输入功能,且搭载充电适配器判定功能,无需微控制器控制即可进行充电切换。另外,不仅支持USB PD标准,还支持当今最普及的USB BC1.2充电标准。可轻松实现USB充电、无线供电、AC适配器充电等充电方式,非常有助于创建更便捷的充电环境。

随着无线充电技术渐渐普及,大多数现代的充电器需要兼容有线无线两种输入源。这样的电路使用BD99954来搭建,可以省去传统设计方法中的切换电路:

1

图1 使用BD99954来设计双输入电源

BD99954GW、BD99954MWV具有以下两个特点,非常有助于创建更便捷的充电环境:

(1)业界首创支持双系统充电。双输入方式,使两种充电方式的导入更容易。而且还搭载充电适配器判定功能,无需微控制器即可进行充电切换。双输入充电系统无需搭载并调整(充电路径切换、防止电流逆流)单独处理时所需的外置部件、晶体管和电阻器,不仅安装面积更小,还有利于大大减轻设计负担。

(2)升降压控制,支持最先进的USB PD系统。利用升降压控制,从5-20V(USB PD的最大电压)中的任意电压均可生成电池充电所需的充电电压。例如,进行2节电池(=8.4V)的充电时,20V输入时可降压后进行8.4V充电,5V输入时可升压后进行8.4V充电。

另外,关于USB充电标准,不仅支持USB PD,还支持当前最普及的USB BC1.2,因此可支持从以往的USB充电到USB PD充电的多种充电方式。本文利用ROHM公司为该芯片开发的评测板: BD99954MWV Evaluation Kit对这个芯片的功能做一个评测,探索一下其使用方法与功能上的一些特色。

首先看看该BD99954开发板:

2

图2 开发板及其主要组成部分

注意,拿到的BD99954开发板为工程样品,所以有飞线的情况,实际上不影响对该芯片的功能评测。

硬件

原理图

3

图3 原理图1(主要电路)

4

图4 原理图2(USB转I2C部分)

因为分辨率的问题,原理图在页面上显示的不是很清楚,感兴趣的同学可以在文末的参考资源中找pdf格式文件进行查看。

整个原理图比较简单,没有什么好说的。主要组成部分就是两个芯片(BD99954+FT232HL)和一些无源器件。其中FT232HL是用来跟PC上的软件通信用的,所以整个开发板主要就是BD99954与无源器件。由此也可以看出BD99954集成度较高。

芯片

下面从芯片方面来分析一下此芯片,先看典型应用图:

5

图5 BD99954典型应用图

再看芯片内部框图:

6

图6 BD99954内部框图

从以上两图可见该芯片集成了电源管理电路中的一些常用单元,使最终的电路大大简化。

双输入自动切换

比如两个输入源如果要切换,以往的设计:

7

图7 以往的双输入切换需要增加额外的切换电路

如果同样的功能使用BD99954来设计,则可大大简化,上图中的切换FET与电组可以省去:

8

图8 使用BD99954设计的双输入切换

充电曲线

9

图9 充电曲线

其中System Voltage为系统工作电压,如果电池电压低于该电压那么首先要使用涓流与预充模式将电池充到该电压。之后增加充电电流进入快充恒流模式,将电池充到预设的满充电压。此时电池并未充满,此时进入快充恒压模式直至电池电压是设置的VBAT的1.15倍即停止充电。此时电池可以认为被充满。上述的这些参数都可以通过I2C总线进行设置。此外为防止电池过热,芯片还可以通过电池的温度检测端对电池进行温度监控.温度过高时电流减半,电压按照三档设置的电压进行按温度输出。

11

12

图10 恒流与恒压参数根据温度监控减小

GUI配置软件

厂家为此开发板专门配了GUI软件以方便迅速评估其功能,下载地址在文末的连接中。如何安装就不多说了,软件分三个界面:

13

图11 充放电控制界面

14

图12 直接控制寄存器界面

15

图13 扩展控制界面

功能演示1:两路电源自动切换充电与放电

充电连接:

16

图14 充电连接

放电连接与上类似,只是不接电池,由VSYS向外输出电压。

首先来观察双电源切换,断开VCC的5V输入,不接电池,仅仅在VBUS上接入20.5V的笔记本电源(经过改造),配置使其输出19.2V,软件配置如下:

17

图15 实验一配置UI

注意几点:首先将模式调整成4S,也就是4节串联模式,否则芯片不允许输出这么高电压。其次输出电压那里理论上可以配置32752mV,但是芯片最高只能输出19200mV,所以配置高了会自动被软件设置上限。最后3,4所指之处分别为VBUS,VCC的监测指示灯,绿灯表示检测到输入。图中所示为仅仅有VBUS输入。

18

图16 实验一结果

这里注意本人的这个万用表的精度欠佳,以下不另外解释。

现在将5V的VCC也接入,两个输入同时接入的情况下默认使用VBUS,这个也可以通过寄存器更改偏向使用哪个输入。

19

图17 两个输入同时接入

20

图20 此时依旧输出19200mV,意料之中

关掉VBUS,只接入VCC:

21

图21 仅仅接入VCC(5V)

此时依旧输出19200mV,注意此时为boost模式。

22

图22 VCC(5V)升压至19200mV输出

再来看看充电模式,该芯片可以对1-4级串联锂离子电池进行充电,作者分别做了实验,但是由于拍照较为麻烦,此处仅仅展示单节电池充电。

23

图23 接入电池

注意如果该电池有温度电阻,可以接入上图中的绿色军品座子已利用温度电阻来防止过热情况,但作者手边没有这样的电池,暂且不实验这个功能。
对于充电,需要配置如下几个参数:

24

图24 充电参数

1.涓充电压:小于此电压的电池要么是被保护了要么是过放了,在此电压之前需要涓流充电

2.预充电压:小于此电压需要预充

3.预充电流

4.快充电流

5.快充电压:到达此电压即可进入正常充电模式

6.涓流电流

7.终止电流,某些电池需要一定终止电流以防止漏电

8.配置好之后,按下此按钮,其转为绿色时即开始充电,同时右边的界面开始显示实际的充电曲线。

以上内容可以与上文的充电曲线一节配合参考。

功能演示2:电池反向供电

反向供电连接:

25

图25 电池向外供电

当两个外接电源都关闭掉,这时需要电池向外反向供电。先关闭掉两个输入,注意此时要保持电池接入且高于3.8V,否则整个板子没有电源就无所谓控制或者供电了。

26

图26 两个输出都断掉

反向供电的时候一定要确认两个输入都关闭了,否则就短路了,会烧坏器件的。

反向供电的配置在第二个界面,默认是关闭的,VCC,VBUS两个接口都可以配置输出。

27

图27 反向输出配置

28

图28 反向buck boost输出

功能演示3:自定义控制

根据上文所贴的原理图可知,官方的配置软件是通过USB转I2C接口来对BD99954芯片进行控制的。既然这样,如果要进行自定义的控制,用户可以另外使用主控芯片来通过I2C总线来进行。当然大多数应用不需要这种自定义通信,因为该芯片本身就具备常用检测与切换功能。本文只是展示一种可能,以供有高级自定义控制需求的用户参考。

另外提一下子,其实官方提供的GUI软件有脚本编程进行自定义控制的功能。但是可能是工程测试版本的原因,在本人电脑上一直不能成功运行。不过这也不是大问题,因为实际应用中要么完全不控制按照默认配置来工作,要么会通过外接的主控来通过I2C来控制。

29

图29 MCR运行异常

BD99954的I2C设备地址为0x09,速率为10KHz到400KHz,其读写格式、波形分别如下图:

30

图30 读word格式

31

图31 写word格式

32

图32 通信波形图

由此可见其通信跟一般的I2C器件没有什么不同,只要按照其命令格式即可通过I2C总线与之通信。该芯片命令集有三套:基本/扩展/调试,通过MAP_SET命令进行切换:

33

图33 命令集切换图

具体的命令请查阅数据手册,此处不一一列出。
这里使用Arduino Uno开发板与之通信。连接信号在J47上:

34

图34 J47上的SCL/SDA信号

35

图35 BD99954+Arduino Uno

这里以配置反向输出为7V为例,代码如下:
//Arduino Uno control the BD99954 chip.
//Author: zhanzr@foxmail.com
#include
#define BD_ADDR 0x09
//Bit 14 Trigger VRBOOST
#define VIN_CTRL_SET 0x0A
#define VRBOOST_SET 0x19
#define CHIP_ID 0x38
#define CHIP_REV 0x39
#define MAP_SET 0x3F
void setup() {
Wire.begin(); // join i2c bus (address optional for master)
pinMode(LED_BUILTIN, OUTPUT);
pinMode(7, INPUT);
Serial.begin(115200);
}
void wr16(uint8_t cmd, uint16_t d16)
{
uint8_t dl = (uint8_t)d16;
uint8_t dh = (uint8_t)(d16>>8);
Wire.beginTransmission(BD_ADDR); // transmit to device
Wire.write(cmd);
Wire.write(dl);
Wire.write(dh);
Wire.endTransmission(); // stop transmitting]


}
uint16_t rd16(uint8_t cmd)
{
uint16_t ret16 = 0;
Wire.beginTransmission(BD_ADDR); // transmit to device
Wire.write(cmd);
Wire.endTransmission(); // stop transmitting]
Wire.requestFrom(BD_ADDR, 2);
while (2 != Wire.available())
{
digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
}
uint8_t dl = Wire.read();
uint8_t dh = Wire.read();
ret16 = ((uint16_t)dh << 8) + dl;
return ret16;
}
void loop() {
uint16_t map_set = rd16(MAP_SET);
Serial.println("MAP_SET:");
Serial.println(map_set, HEX);
uint16_t tmp = rd16(CHIP_ID);
Serial.println("CHIP_ID:");
Serial.println(tmp, HEX);
tmp = rd16(CHIP_REV);
Serial.println("CHIP_REV:");
Serial.println(tmp, HEX);
tmp = rd16(VRBOOST_SET);
Serial.println("VRBOOST_SET:");
Serial.println(tmp, HEX);
wr16(VRBOOST_SET, 7000);
tmp = rd16(VRBOOST_SET);
Serial.println("VRBOOST_SET:");
Serial.println(tmp, HEX);
tmp = rd16(VIN_CTRL_SET);
Serial.println("VIN_CTRL_SET:");
Serial.println(tmp, HEX);
delay(50000);
}
输出:

36

图36 通过I2C控制开发板输出

结论总结与参考资源下载
BD99954集成度高,几乎囊括了笔记本/平板/智能手机等应用的电源管理的绝大多数功能,使工程师的设计负担大大减轻,产品稳定性也能随之提高。

继续阅读
喵喵机的热敏打印头你可以选这个!

热敏打印头打印方式有两种:热转印和热敏方式。热转印中增加了一条墨带,工作时墨带和转印纸同时转动,将施加到墨带上的油墨通过加热转移到纸上,具有优异的耐水性、耐化学性并可以在普通纸上打印,但难以安装纸张、胶带,结构复杂成本也较高。热敏则是直接使用了热敏纸,无需碳粉、墨带、油墨,纸张易安装,缺点是受温度、划痕影响成像效果。

LED灯驱动电源实例解析

罗姆开发了薄型化而且可调光的绝缘型大功率LED驱动器模块 BP5872。因为实现了薄型化与可调光,扩大了LED照明的应用。 而且,实现了市场需求很高的谐波对策,全球输入,高效率的要求,能够很容易的制成附加值高的LED照明产品。

快讯:罗姆子公司SiCrystal与ST 签订合作

罗姆集团旗下的 SiCrystal 公司与意法半导体签署一了份碳化硅(SiC)晶圆长期供应协议。SiCrystal 为一家在欧洲 SiC 晶圆市场占有率领先的龙头企业...

电源滤波器对音质提升效果有限,建议使用专用电源IC

今天我们继续来聊聊音响的音质问题。上次我们讲到,提高音质的方法有很多,其中有一个方法便是加装电源滤波器,那么,电源滤波器究竟有什么作用呢?

摩尔定律快速失效的今天,SiC能否就此起飞?

进入21世纪以来,随着计算机和自动化领域的快速发展,推动了半导体制造工艺和新材料不断创新,半导体新材料和新工艺的发展前景将会如何?且看小R为大家带来的《摩尔定律快速失效的今天,SiC能否就此起飞?》。