前面在电源部分简单分析了type c的电源,只有在VBUS_CHARGE输入时才会在任何情况工作,它支持5-20V电压。而VBUS是需要通过负载开关控制的。因为没有找到PT5100的资料,不能控制VBUS和VBUS_CHARGE的的切换,所以就先测试了一下高压时的工作情况。
电源部分原理图
在评估板上,VBUS_CHARGE通过SY8204输出5V,然后通过U4输出3.3V。测试时,为了方便改变VBUS_CHARGE上电压,通过评估板右上角的TP2将VBUS_CHARGE接入,而VBUS_CHARGE是由可调电源1503提供,可以通过1503改变VBUS_CHARGE的输入电压。然后用万用表监视3V3的输出。正常情况下,3V3上监测到电压是3.07V左右。因为没有找到电子负载,不能测试输出功率,所以没有接入负载。
此外在单片机LPC11U35写入一个小测试程序,根据系统电压改变LED频率,在改变VBUS_CHARGE电压时可以明显看到LED频率的变化。
测试环境
当VBUS_CHARGE降低到3.4V时,输出明显下降。
VBUS_CHARGE输入继续降低,低到3.3V后,输出立刻变为0.62V,系统停止工作。SY8204芯片数据手册标明的最低电压是4.5V,当然这和没有接负载有关,如果接上一个大负载(比如给移动电源充电),可能就不能到这么低了。
升高电压到9V,输出很稳定
1503的最高输出电压是15V,在15V时仍然没有问题(这也是应该的)。
因为type c支持20V的电压,所以评估板应该还可以输入更高电压,20V不会有任何问题。评估板的其他元件,钽电容是25V耐压的,NX20P5090工作范围是2.5-20V(最高29V),MOSFET PMG35的VDS是30V,SY8204的最高输入电压是30V。
附电压监视程序
#include "mbed.h"
DigitalOut myled(P0_13);
AnalogIn VUSB_ADC(P0_11);
AnalogIn VUSB_CHG(P0_12);
int main() {
while(1) {
myled = !myled;
wait(1 - VUSB_CHG);
}
}