自带屏显电流表,ALLMAYBE PD45充电器开箱拆解
许多年前一个设备一个充电器的年代大家还有印象么,诺基亚一个笔记本一个旧iphone一个新iphone又一个华为一个联想一个,厂家为了利益自成一派的决策最终折腾的都是用户。逐渐的2016年USB-C物理接口开始大范围普及开来,但厂家不死心的在这个物理接口上继续老套路,虽然都是USB-C插口但握手的协议各不相同,QC、AFC、SCP、FCP还是十分蛋痛。2017年iphone 8/iphone X加入PD阵营让USB-C PD火速普及开来,PD协议包含了之前各自为政的N种快充协议,在这个大前提下不少笔记本与旗舰手机都放下成见投入到PD怀抱上,用户终于等到只用一个PD充电器就能充全家设备的便利环境。
然而,持币待购的消费者面对市场众多USB PD充电器商品海,都会面临选择难题,一个是因为USB PD新规格新技术懂的人少,第二是USB PD充电器同质化高,有亮点的产品并不多。今天小编推介给大家一款非常有特色的USB PD充电器,他就是多协议支持、集成屏显电流表的“ALLMAYBE PD45”USB PD充电器。
一、产品介绍篇
“ALLMAYBE”可能大家并不熟识,其实他是深圳爱克斯达(XTAR)电子有限公司旗下的品牌,XTAR相信不少发烧友都听过或者买过他们的手电筒、锂电池充电器等产品,质量过硬用户之间的口碑建立的不错,这次XTAR通过ALLMAYBE品牌拓展产品线相信也会保持一如既往的质量。
这款USB PD充电器最大的特色在于他在充电器上集成了一块液晶屏幕,可以显示当前输出电压电流值累计容量等信息,也就是大家俗称的“电流表”,不再需要额外购买USB电流表,普通用户也能对当前设备的充电状态一目了然。
充电器正面上方是屏幕控制按钮,长按可关闭屏幕杜绝夜间光污染,快速双击则是将累计容量数据重置清零,按钮与壳体结合紧致无虚位,按压回弹手感不错。中间镜面金属片上镭雕了充电器型号“PD45”,下面是双面盲插USB-C输出口支持多种电压输出。
为了携带更加方便ALLMAYBE使用折叠式插脚,旅途时把插脚收纳起来易于携带,单指按压即可收纳取出,阻尼感恰到好处,插脚与充电器本体配合无晃动,装配工艺严谨。
充电器底部名牌参数部分,型号:PD45、输入:100-240V~50/60Hz 1.0A Max全球电压、Type-C输出:5V3A / 9V3A / 12V3A / 15V3A 20V2.25A,最下面可以看到深圳爱克斯达XTAR公司字样。
壳体顶部是这个充电器最大亮点之一,集成了一块18.5mm * 21.5mm液晶屏幕,可以显示充电器当前各种输出参数。
实际使用场景展示,小编选择了支持PD快充的紫米10号移动电源作为测试对象,从ALLMAYBE PD45充电器屏幕上可以了解到,紫米10号移动电源目前正在运行在15V PDO快速充电模式,不管是发烧友还是新手小白都可以简单地掌握充电器当前输出参数。
屏幕内的“Overload”可以显示当前带载情况是否超过额定负荷,第二行15.24V是当前输出电压,立马就可以知道紫米10号移动电源正在运行在15V PDO上,第三行2.78A是输出电流,最下面一行是累计输出能量1.29Wh,双击充电器正面按钮可以重置清零这个能量参数。
使用 POWER-Z FL001 Super 测试仪对ALLMAYBE PD45输出模式进行快充协议轮询,可以看到该充电器支持的协议非常丰富,包括苹果apple2.4A、高通QC2.0 9V/12V/20V、高通QC3.0、华为FCP、三星AFC,在PD充电器市场上ALLMAYBE PD45是支持协议最多的产品之一。
使用 POWER-Z FL001 Super 测试仪对ALLMAYBE PD45输出模式进行PDO报文探测,一共有5个PDO,分别是:5V3A / 9V3A / 12V3A / 15V3A / 20V2.3A,符合铭牌标称参数。
此外,ALLMAYBE PD45充电器因为自带电流表所以还可以马上就判断一根线材的好坏,地摊上购买的一根山寨苹果线去充ipad,录的电流2.03A功率稍低。
另一根地摊线电流2.11A,功率一样是稍低。
拿出苹果原厂数据线,从屏幕上可以看到电流达到2.32A,ipad终于满载充电了。通过这电流表屏幕,就算小白用户也可以简单地对比手上线材好坏,非常实用。
二、拆解篇
ALLMAYBE PD45通过超声波焊接合盖,焊接牢固度较高,小心锤打后用撬棒把底盖分离后就可以把PCB抽出。
屏幕并非与PCB封装到一起,而是先装配到壳体上,再通过排线连接到PCB,这样可以更加贴合壳体避免漏光。
220V高压插脚使用超软的耐高温硅胶线与PCB过孔焊接,焊点浸润度高无多余毛刺,壳体背板上可以看到超声波焊接痕迹,焊接的还是很牢固的。
充电器内部结构较为紧密,黄铜散热片与MOS管通过螺丝固定,散热片从侧面延伸到顶部,放磁铁在旁边无磁吸反应。
PCB插脚器件面俯视图。
220V输入端保险丝、NTC浪涌抑制电阻、X电容、两级共模电感。
六颗艾华AiSHi 400V15μF滤波电解电容,满足45W输出。
立式插脚按钮提供屏幕按压模式变化,旁边是屏幕排线座。
士兰微SILAN SVF10N65F MOS管,650V10A。
立式插脚USB-C小板,万裕ULR 25V1000μF固态电容。
贴片件俯视图。
两颗整流桥。
MPS HFC0500 初级。
无标单片机是屏幕驱动。
同步整流管 SFG10R10G, 右下角力生美LN5S03 同步整流控制器。
VBUS开关。
英集芯IP2712是国内首个取得USB PD认证的芯片,IP2712是一款集成USB TYPE-C输出协议、USB PD(PD2.0/PD3.0)输出协议、QC3.0/2.0快充输出协议、苹果三星自动识别、SCP、FCP、MTK PE等多协议,多功能的电源管理SOC,为适配器和车充等Type-C输出应用提供多协议解决方案。并且可以按照使用环境灵活自行配置。
IP2712规格书。
三、总结
allmaybe充电器独树一帜,在充电器内建电压电流表,实时显示充电器输出状态,使用户能够直观的了解到充电器输出的电压电流及充电状态,大大的方便了用户确认充电状态。同时内部元件均采用一线大品牌,可靠性的保证;开关管采用高价铜散热片,有效导热,降低充电器温度;输出采用同步整流配合固态电容,高效整流的同时为您的爱机提供更好的呵护;5/9/12/15/20多档电压输出,完全满足市面上USB-C PD设备使用,支持apple2.4A\QC\FCP\AFC等协议,真正做到一机在手全部设备都能充,值得推荐。
相关阅读:
PD快充时代来临,你需要这个神器
最强PD充电宝:全汉20000mAh移动电源,支持QC3.0和65W双向USB PD
看单片机如何控制PWM信号实现直流电机转速控制
设计中采用了专门的芯片组成了PWM信号的发生系统并且对PWM信号的原理、产生方法以及如何通过软件编程对PWM信号占空比进行调节从而控制其输入信号波形等均作了详细的阐述。另外本系统中使用了红外对管对直流电机的转速进行测量,经过整形电路后将测量值送到单片机,并且最终作为反馈值输入到单片机进行PID运算从而实现了对直流电机速度的控制。在软件方面,文章中详细介绍了PID运算程序初始化程序等的编写思路和具体的程序实现。
1 单片机最小系统:单片机最小系统由51单片机,晶振电路,复位电路,电源组成。大家都比较熟悉,这里不再赘述。
2 四位数码管显示:在应用系统中,设计要求不同,使用的LED显示器的位数也不同,因此就生产了位数,尺寸,型号不同的LED显示器供选择,在本设计中,选择4位一体的数码型LED显示器,简称“4-LED”。本系统中前三位显示电压的整数位,最后一位显示转速的小数位。4-LED显示器引脚如图2所示,是一个共阴极接法的4位LED数码显示管,其中a,b,c,e,f,g为4位LED各段的公共输出端,1、2、3、4分别是每一位的位数选端,dp是小数点引出端,4位一体LED数码显示管的内部结构是由4个单独的LED组成,每个LED的段输出引脚在内部都并联后,引出到器件的外部。
3 电机驱动电路:电机驱动电中是采用ULN2003来驱动。ULN2003是高耐压、大电流达林顿陈列,由七个硅NPN达林顿管组成。该电路的特点:ULN2003的每一对达林顿都串联一个2.7K的基极电阻,在5V的工作电压下它能与TTL和CMOS电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据,输入5VTTL电平,输出可达500mA/50V。ULN2003的引脚图,其中IN1~IN7为输入控制端;OUT1~OUT7为输出端;8脚为芯片的接地端;9脚为公共端,该脚是内部7个续流二极管负极的公共端,各二极管的正极分别接各达林顿管的集电极。用于感性负载时,该脚接负载电源正极,实现续流作用。如果该脚接地,实际上就是达林顿管的集电极对地接通。
当P1.0中为高电平时,其内部三极管导通,使电机转动。当P1.0为低电平时,内部三极管截止,电路断开,电机停止转动。所以在程序中可以利用P1.0口输出PWM波来控制电机的转速。
4 红外测速电路:发射管工作时发出红外线,当接收管收到红外信号时,其电阻变小(本设计相当于从无穷大变到1k左右)。利用其电阻变化,改变接收管分压情况。挡片是利用圆盘上剪四个孔,当挡片随电机转动时,接收管两端电平发生变化,产生脉冲。
5 整形电路:本设计的整形电路是用555定时器接成的施密特触发器。
6 源程序:
#include reg52.h
#define uchar unsigned char
#define uint unsigned int
uchar code table[10]={0x3f,0x06,0x5b,
0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //共阴数码管显示码(0-9)
sbit xiaoshudian=P0^7;
sbit wei1=P2^4; //数码管位选定义
sbit wei2=P2^5;
sbit wei3=P2^6;
sbit wei4=P2^7;
sbit beep=P2^3; //蜂鸣器控制端
sbit motor = P1^0; //电机控制
sbit s1_jiasu = P1^4; //加速按键
sbit s2_jiansu= P1^5; //减速按键
sbit s3_jiting=P1^6; //停止/开始按键
uint pulse_count; //INT0接收到的脉冲数
uint num=0; //num相当于占空比调节的精度
uchar speed[3]; //四位速度值存储
float bianhuasudu; //当前速度(理论计算值)
float reallyspeed; //实际测得的速度
float vv_min=0.0;vv_max=250.0;
float vi_Ref=60.0; //给定值
float vi_PreError,vi_PreDerror;
uint pwm=100; //相当于占空比标志变量
int sample_time=0; //采样标志
float v_kp=1.2,v_ki=0.6,v_kd=0.2; //比例,积分,微分常数
void delay (uint z)
{
uint x,y;
for(x=z;x0;x--)
for (y=20;y0;y--);
}
void time_init()
{
ET1=1; //允许定时器T1中断
ET0=1; //允许定时器T0中断
TMOD = 0x15; //定时器0计数,模式1;定时器1定时,模式1
TH1 = (65536-100)/256; //定时器1值,负责PID中断 ,0.1ms定时
TL1 = (65536-100)%6;
TR0 = 1; //开定时器
TR1 = 1;
IP=0X08; //定时器1为高优级
EA=1; //开总中断
}
void keyscan()
{
float j;
if(s1_jiasu==0) //加速
{
delay(20);
if(s1_jiasu==0)
vi_Ref+=10;
j=vi_Ref;
}
while(s1_jiasu==0);
if(s2_jiansu==0) //减速
{
delay(20);
if(s2_jiansu==0)
vi_Ref-=10;
j=vi_Ref;
}
while(s2_jiansu==0);
if(s3_jiting==0)
{
delay(20);
motor=0;
P1=0X00;
P3=0X00;
P0=0x00;
}
while(s3_jiting==0);
}
float v_PIDCalc(float vi_Ref,float vi_SpeedBack)
{
register float error1,d_error,dd_error;
error1=vi_Ref-vi_SpeedBack; //偏差的计算
d_error=error1-vi_PreError; //误差的偏差
dd_error=d_error-vi_PreDerror; //误差变化率
vi_PreError=error1; //存储当前偏差
vi_PreDerror=d_error;
bianhuasudu=(v_kp*d_error+v_ki*vi_PreError+v_kd*dd_error);
return (bianhuasudu);
}
void v_Display()
{
uint sudu;
sudu=(int)(reallyspeed*10); //乘以10之后强制转化成整型
speed[3]=sudu/1000; //百位
speed[2]=(sudu00)/100; //十位
speed[1]=(sudu0)/10; //个位
speed[0]=sudu; //小数点后一位
wei1=0; //第一位打开
P0=table[speed[3]];
delay(5);
wei1=1; //第一位关闭
wei2=0;
P0=table[speed[2]];
delay(5);
wei2=1;
wei3=0;
P0=table[speed[1]];
xiaoshudian=1;
delay(5);
wei3=1;
wei4=0;
P0=table[speed[0]];
delay(5);
wei4=1;
}
void BEEP()
{
if((reallyspeed)=vi_Ref+5||(reallyspeed
{
beep=~beep;
delay(4);
}
}
void main()
{
time_init();
motor=0;
while(1)
{
v_Display();
BEEP();
}
if(s3_jiting==0) //对按键3进行扫描,增强急停效果
{
delay(20);
motor=0;
P1=0X00;
P3=0X00;
P0=0x00;
}
while(s3_jiting==0);
}
void timer0() interrupt 1
{
}
void timer1() interrupt 3
{
TH1 = (65536-100)/256; //1ms定时
TL1 = (65536-100)%6;
sample_time++;
if(sample_time==5000) //采样时间0.1ms*5000=0.5s
{
TR0=0; //关闭定时器0
sample_time=0;
pulse_count=TH0*255+TL0; //保存当前脉冲数
keyscan(); //扫描按键
reallyspeed=pulse_count/(4*0.6); //计算速度
pwm=pwm+v_PIDCalc(vi_Ref,reallyspeed);
if(pwm
if(pwm100)pwm=100;
TH0=TL0=0;
TR0=1; //开启定时器0
}
num++;
if(num==pwm) //此处的num值,就是占空比
{
motor=0;
}
if(num==100) //100相当于占空比调节的精度
{
num=0;
motor=1;
}
}
相关问答
c51的数据类型""idata,code,xdata,pdata""各对应at89 s 51 单片机 的哪些存储空间?idata对应于内部RAM00H~FFHcode对应于程序存储器的0000H~1FFFH(8K)如果扩展可寻址64K。使用MOVCxdata对应于外部RAM0000H~FFFFH(需要...
急求 单片机 几道试题答案,哪位高手来帮下忙,谢谢1、(1)设A=6C...[最佳回答]1、(1)设A=6CH,CY=1,执行RRC后,A=(0B6H),CY=(0).(2)、执行下列程序段后,(A)=(62H)Cy=(1)(Y是下标啊)CLRCMOVAA,#B1H...
【 单片机 中IT1,IE1,TI,RI,TF1用英语怎么说,全称,这样记忆起...[最佳回答]IT:InterruptofTimerIE:InterruptofExternalTI:TransmitInterruptRI:ReceiveInterruptTF1:TimerFlag...
P0 F 在 单片机 中是什么意思?STC51单片机中PCON寄存器的GF1和GF0是两个通用工作标志位,是系统没用到的,留给用户随便使用。举例如下:MOVA,NUM0CLRCSUBBA,NUM1MOVGF1,CMOV...
AT89 S 51 单片机 中特殊功能寄存器(SFR)使用片内RAM的部份字节地址为什么对,用了哪些地址啊?AT89S51单片机中特殊功能寄存器(SFR)使用片内RAM的部份字节地址。这句话是对使用了80H~FFH这128个RAM的字节地址,但因为并没有128个SFR,所以,SFR的地址是不...
单片机 上ROM RAM EEPROM FLASH 有什么关系和不同?-ZOL问答fghfhgjuy关系为:它们都是单片机系统的存储器区别主要是他们的用途不同:现在的单片机,RAM主要是做运行时数据存储器,FLASH主要是程序存储器,EEPROM主要是用以...
AT89 S 51 单片机 中特殊功能寄存器(SFR)使用片内RAM的部份字节地址为什么对,用了哪些地址啊?00~7FH与你说的一样,是数据存储器,你也说了80H~FFH是SFR的映射,什么是SFR,就是特殊功能寄存器,在51里就代表如P0,P1,P2,P3,SBUF等等这些与硬件直接相关的...0...
求高手讲解一下:要使 单片机 正常工作,需要具备哪几个条件?现在单片机这个大家庭中成员实在太多,每个成员的秉性都不太一样,就拿必须要有的工作电源来说,各个类别的单片机都不一样,比如C51系列的单片机其标准工作电压...
单片机 内部数据储存地址中的00H和0FH,FFH代表什么意思…… F 和0是什么?单片机内部数据储存地址,数据等等,都是以二进制或者4位二进制组成1位十六进制数,00H~FFH相当于十进制的0~255。如二进制十...单片机内...
单片机 中0FFH是什么意思?0FFH是十六进制表示方法,可以代表地址,也可以表示数值,他的二进制是形式11111111B。0FFH是十六进制表示方法,可以代表地址,也可以表示数值,他的二进制是形式1...