ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

16Pin Type-C+PD诱骗器:从充电头提取12V/20V的DIY供电全攻略

16Pin Type-C+PD诱骗器:从充电头提取12V/20V的DIY供电全攻略 16Pin Type-C接口最近快被我把玩出花了。不是因为它能传USB4或者接显示器而是因为它能给DIY供电提供一条从5V到20V甚至更高电压的捷径。大家平时接触到的Type-C绝大多数时候只是用来给手机充电、给移动硬盘传数据插上去默认就是5V。但如果你愿意往引脚层面多看两眼这个小小的接口完全可以当做一个可变电压的直流电源接口用协商出9V、12V、20V再配合降压稳压电路就能给各种自制设备供电。这篇文章就是把我这段时间折腾16Pin Type-C母座、PD诱骗器、降压模块和无刷电机驱动电路的完整过程整理出来。适合电子DIY入门的朋友也适合那些手里一堆Type-C充电头、却找不到“12V适配器”的人。我会从引脚定义讲起拆一遍PD协议协商的底层逻辑然后给出一套能直接抄作业的接线方案最后结合12V转5V、24V转5V、5V转3.3V、5V转-5V以及5V无刷电机驱动这几个常用电路把“从手机充电头取高压”这件事彻底说透。1. 为什么是16Pin它不是“少了8根线的残缺口”而是轻量电源方案的桥头堡1.1 24Pin全功能口和16Pin轻量口的区别Type-C物理规范里其实有24个引脚USB4、DisplayPort、雷电、USB PD这些功能都是靠这些引脚组合实现的。但你去淘宝搜Type-C母座会发现大量“16Pin”“8Pin”“6Pin”的版本。16Pin就是把一些高速差分对和辅助引脚省掉只保留常见的电源、配置和基础数据引脚。对于DIY供电这件事来说16Pin不但够用而且比24Pin好焊太多间距宽松不容易连锡。24Pin全功能口适合做扩展坞、视频采集、高速数据转接这类产品因为要用到完整的USB4/DP通道。而我们的目标是从充电头里“要电压”真正必须接通的只有VBUS、GND、CC1、CC2最多再加D/D-做QC协议触发。16Pin母座正好覆盖这些而且大多数厂家还会把电源引脚做得更粗壮适合流过大电流。下面这张表可以帮你快速判断自己手里的Type-C母座该用在什么场景接口形态引脚数典型载板适合场景主要坑点全功能Type-C24Pin开发板、扩展坞USB4/DP/PD全协议焊盘密、走线复杂轻量Type-C16Pin电源转接板、供电模块PD供电USB2.0数据引脚定义各厂家不同基础Type-C8Pin/6Pin充电线、小模块纯充电/数据通常不引出CC简易Type-C4Pin玩具、低成本产品仅供电无CC无法协商高压我自己的项目几乎都不需要USB3.0以上的高速通信所以16Pin是我测试供电方案时最常用的规格。它不是全功能口的“缩水版”更像是一个专门为供电场景优化的物理接口。1.2 16Pin母座上必须看懂的引脚分组不同厂家生产的16Pin Type-C母座引脚排列并不统一这是很多人第一次拿到样品就翻车的原因。以我常用的双排16Pin母座为例A排和B排各8个焊盘常见定义大概是电源正极VBUS一般有4个引脚在供电时需要并联使用电源地GND一般也有4个引脚同样需要并联配置通道CC1、CC2这是Type-C最关键的两个引脚负责插入方向识别和PD协商数据引脚D、D-对应USB2.0协议辅助/扩展引脚SBU或高速差分对多数情况下做供电用不到注意我说的是“大概”。有些板子会把A5和B5都标成CC1/CC2有些会把A6/A7标成D/D-还有的干脆把SBU引成了两个空脚。买回来后第一件事不是焊而是找卖家要规格书或者用万用表通断档把VBUS、GND、CC1、CC2挨个找出来。这个步骤省不得我见过有人把CC和VBUS接反一上电就把PD诱骗板烧了。1.3 怎么快速判断手里的16Pin板子能不能用来取电拿到一块16Pin Type-C母座不要急着焊先用万用表做三件事找VBUS。充电头没插入时VBUS对GND应该是开路的插入手机头后如果没进行PD协商VBUS只有5V但母座到模块的VBUS焊盘必须和某个Type-C触点导通。找CC。CC1、CC2对GND在Sink设备里会通过5.1kΩ电阻下拉但裸母座没有这个电阻所以用万用表量不到。你要做的只是确认CC1、CC2各自通到哪个焊盘别把两个引脚短接到一起。看丝印。很多16Pin小板会把VBUS、GND、CC1、CC2直接印在背面如果和规格书对不上拿万用表再复核一次。说白了16Pin母座能不能用于DIY供电不取决于它有多少个引脚而取决于CC1/CC2是否被引出来。如果只是8Pin纯供电座没有CC那它天生就只有5V后面讲的PD协商玩法全都用不上。2. 默认5V和“谈出来的20V”PD协商到底帮我们省了多少事2.1 插上那一刻发生了什么一个Type-C充电头插上设备时不是直接输出20V的。默认状态下源端Source通过CC引脚上的上拉电阻或电流源检测设备设备端Sink则通过CC引脚上的5.1kΩ下拉电阻表示“我是设备”。源端检测到这个下拉电阻后先输出一个安全的5V然后通过CC引脚上的数字通信协议询问你需要多大电压这个“询问”和“回应”的过程就叫USB PD协商。PD协议跑在CC1或CC2引脚上采用BMC编码而不是像老式USB那样靠D/D-的电压检测。这也是为什么很多老款Micro USB线改成Type-C母座之后依然只能输出5V——因为CC引脚根本没有被接通充电头无法识别出这是一个支持PD的设备。你可以把CC引脚理解成两个人之间的对讲机。源端说“我这里有5V/3A、9V/3A、12V/3A、20V/3.25A这几个套餐”设备端说“我要20V那个”源端确认并把VBUS从5V抬到20V。整个过程大概几十到几百毫秒手机充电时那个“闪电快充”图标就是协商成功后的结果。2.2 PDO与RDO充电器不是“直接给20V”而是被请求后才给PD协议里有两个关键概念PDO和RDO。PDOPower Data Object源端能提供的一组电压/电流能力相当于“菜单”。RDORequest Data Object设备端发起的请求相当于“点单”。一个常见的65W PD充电头的PDO菜单大概是这样的PDO编号电压最大电流典型用途PDO15V3A普通设备充电PDO29V3A手机快充PDO312V3A路由器、显示器供电PDO415V3A部分笔记本PDO520V3.25A笔记本、大功率设备注意这个菜单是“可以提供的上限”不是“随时都在输出的电压”。设备不发RDO源端就一直停在5V。这正是DIY供电里最容易误解的一点你不能指望把Type-C母座直接接到一个LED灯条上就拿到20V必须先有PD Sink芯片去“点单”。另外PD3.1规范里还增加了28V、36V、48V这些EPR扩展电压档位最高能到240W。这意味着Type-C作为供电接口的上限远不止5V。不过对大多数DIY玩家来说最常用的还是20V以内这几个档位因为设备约束少测试工具也多。2.3 DIY取电的两条路线自己做PD取电有两条路可以走。第一条路线用PD Sink控制器芯片比如CH224K、LDR6328S、FUSB302。这些芯片内部跑PD协议外部通过电阻、拨码开关或I2C配置目标电压。CH224K是我用得最多的因为它便宜、外围简单支持PD2.0/PD3.0还能通过CFG1、CFG2引脚的电阻组合选择5V、9V、12V、15V、20V。焊接两颗0805电阻就能固定目标电压非常省事。第二条路线买现成的“PD诱骗模块”也叫PD触发模块。实际上它里面就是一颗PD Sink芯片加几个跳线有的还预留了type-c公头直接插在充电头上输出两根线就是你要的电压。对于不熟悉芯片的朋友这个方案最稳因为模块上已经画好了CC下拉电路和配置电阻你只用选电压档位就行。我个人的建议是第一次玩先用成品诱骗模块确认整个链路跑通了再去折腾CH224K芯片本身。一来成品模块便宜二来出了问题容易排查三来你能更直观地理解CC引脚和PD协商的过程。2.4 为什么不能把CC1和CC2直接短接很多刚入门的朋友看到Type-C正反插都能用会想当然地认为“反正两个CC最终要接到同一个地方短接不就行了”。这不对。Type-C的插头里CC1和CC2分别对应正反两个方向。源端检测到哪一边被连接哪一边就作为配置通道。如果你在Sink端把CC1和CC2直接短接再用一颗下拉电阻到地源端会同时看到两个方向的连接状态CC逻辑会变得混乱轻则协商不稳定重则完全无法输出高压。正确做法是让CC1和CC2分别走独立的5.1kΩ下拉电阻到地或者直接交给PD Sink芯片处理芯片的CC1、CC2引脚各自独立。这一点在焊接16Pin母座时尤其要注意别为了省两颗电阻把两个引脚飞线并在一起。另外如果你的充电头是老式的QC快充头不支持PD协议还想从Type-C口取9V/12V那就得走D/D-上的QC触发逻辑常见做法是用QC诱骗芯片或者把D/D-接在固定电压上。但这和PD是两套完全不同的协议别混为一谈。3. 一套能上工作台的供电模块16Pin母座PD诱骗器的接线实操3.1 元器件清单我搭这套模块时用的东西如下价格都不高也都很容易买到16Pin Type-C母座小板带焊盘和定位柱方便固定在洞洞板上CH224K PD诱骗模块或成品PD诱骗器支持20V/3A以上一个支持PD的充电头最好选65W氮化镓PDO里有20V档位万用表、电烙铁、0.5mm左右烙铁头、助焊剂硅胶线红色VBUS、黑色GND、白色CC1、绿色CC2方便区分可调降压模块或固定降压模块后续接负载时用放电测试仪或电子负载验证大电流下的压降这套东西加起来不到五十块钱但能让你从一个普通充电头里稳定取电比专门买一台线性电源便宜太多。3.2 接线逻辑核心接线其实就四组VBUS接VBUS。16Pin母座上的所有VBUS焊盘并联后接到PD诱骗模块的VBUS输入。GND接GND。所有GND焊盘并联同样接到PD诱骗模块的GND。CC1、CC2各自独立。分别接到PD诱骗模块的CC1、CC2引脚不能短接。D/D-看情况。如果你只想用PDD/D-可以不接如果你还想兼容QC再把D/D-接到诱骗模块对应的DP/DM端。如果你用的是“Type-C公头PD诱骗器”那母座这一端可以直接省略诱骗器插在充电头上公头尾部的VBUS、GND、CC引线就是输出端。但如果你想做一个“设备端电源输入接口”让外部的Type-C充电线插到你的设备上那16Pin母座诱骗模块的组合更合适。3.3 焊接和上电顺序焊接顺序很影响成功率我的习惯是先固定母座。把16Pin母座插在洞洞板或转接板上用胶带或夹具固定好避免焊接时错位。焊电源引脚。优先焊VBUS和GND因为引脚少、位置也明确。用充足的焊锡和助焊剂别让两个焊盘连锡。焊CC引脚。CC1、CC2是细引脚焊接时先少上锡再用烙铁头带动焊锡形成圆润的焊点。做通断检查。用万用表确认VBUS与GND没有短路CC1、CC2没有和VBUS短路。接PD诱骗模块。用硅胶线连接线长尽量短尤其是大电流回路长线会带来额外压降。上电测试。先把诱骗模块的电压档位调到5V接入充电头用万用表确认输出5V再调到9V、12V、20V逐级测试。上电顺序也很关键先给诱骗模块上电等VBUS稳定输出目标电压后再接入负载。如果你先把负载接上再插充电头有些PD充电头会因为启动瞬间电流过大而直接进入保护模式。3.4 常见问题排查我在这套方案上踩过的坑不少列几个最常见的电压一直停在5V。先检查充电头是否真的支持PD很多“快充头”是私有协议PDO里根本没有20V档位。再检查CC1、CC2是否接反或者短接最后换一根确认支持PD的Type-C线。插上后没有任何输出。大概率是VBUS或GND没焊好先看母座上有没有5V再看诱骗模块输入端有没有5V。调高目标电压后输出电压忽高忽低。可能是CC线接触不良或者诱骗模块的配置电阻虚焊重新补焊后测试。用转接线后无法协商。很多USB-A转Type-C的线根本没引出CC或者只用于充电这种线没法做PD协商直接换双Type-C线。4. 电压要落地12V转5V、24V转5V、5V转3.3V、5V转-5V、5V无刷电机驱动五套方案从Type-C口拿到的20V并不能直接喂给所有设备。传感器要3.3VMCU要3.3V或5V运放可能要正负5V无刷电机的驱动逻辑又需要稳定的5V电源。所以真正决定DIY项目好不好用的是高压降到低压、正压转负压、以及电机驱动这一整套电源链路。4.1 12V转5V稳压电路实际上是在做Buck降压如果你从PD诱骗模块取到12V要转成5V给USB设备、风扇或单片机供电最常见的就是Buck降压电路。以MP1584模块为例它的输入范围是4.5V到28V输出电流3A左右足够带绝大多数5V负载。原理上Buck电路靠高边开关管高速开关再用电感和电容把方波平滑成直流。输出电压由反馈电阻网络决定公式是Vout Vref × (1 R1 / R2)MP1584的参考电压Vref是0.6V如果要输出5V常用电阻组合是R140.2kΩ、R25.49kΩ。算一下0.6 × (1 40.2 / 5.49) ≈ 0.6 × 8.322 ≈ 4.99V刚好。如果你直接用成品模块电位器就能调不用自己算电阻。输入电容我习惯用22μF/25V电解电容并联一颗0.1μF陶瓷电容输出电容用22μF/10V电感用10μH/3A。这个组合在12V输入、5V/2A输出时纹波一般能控制在30mV左右给MCU供电没问题。4.2 24V转5V电路大压差下的Buck选型这里顺便回应一个被问了很多次的问题24伏电瓶能不能给5V 2.1A的设备供电答案是可以但必须先接一个24V转5V的降压电路绝不能把24V直接灌进5V设备。24V转5V和12V转5V原理相同但因为压差更大、输入电压更高选型上有两个关键点。芯片输入耐压必须足够。如果用MP1584输入最高28V24V电瓶充满时可能到25.2V还能接受但余量很紧张。我更推荐用XL4015输入8V到36V输出最大5AVref是1.25V5V输出时电阻组合可选R17.5kΩ、R22.5kΩ即1.25 × (1 7.5 / 2.5) 5V。LM2596也行输入最高40V但开关频率低电感体积大效率不如新一代Buck芯片。另一个容易被忽略的点是电感饱和电流和续流二极管电流。24V降到5V时占空比大约是5/24≈21%这意味着MOS管导通时间短续流二极管导通时间占了79%。续流二极管的平均电流必须能扛住整个负载电流所以不能用普通1N4007要用SS54、SK56这类肖特基二极管否则发热会非常严重。4.3 5V转3.3V稳压电路LDO和DC-DC怎么选很多MCU和传感器都要3.3V供电从5V转3.3V的稳压芯片叫LDO低压差线性稳压器。最经典的型号是AMS1117-3.3输入5V输出3.3V最大电流1A左右。电路很简单输入接10μF电容输出接10μF电容再加上0.1μF旁路电容就能稳定工作。但要注意LDO是把多出来的电压以热量形式消耗掉的。5V降到3.3V压差1.7V如果负载电流是500mA芯片上的功耗就是1.7×0.50.85W。AMS1117在这种功耗下已经明显发烫了所以大电流场合我一般不建议用AMS1117要么换成开关降压芯片要么用压差更低的ME6211。ME6211这类低压差LDO压差只有100mV左右输入4.2V就能稳出3.3V适合电池或5V降压后给低功耗设备供电。如果你需要更大的电流比如给WiFi模块供电直接用MP1584或SY8120这类开关降压芯片把5V降到3.3V会更合适效率高而且不会发热。从5V转3.3V的芯片选择可以按电流粗略分三档需求电流推荐方案优点缺点100mAME6211、XC6206体积小、压差低电流不大800mAAMS1117-3.3便宜、经典大电流发热1AMP1584、SY8120效率高、输出稳外围略复杂4.4 5V转-5V负电压产生电路电荷泵就能搞定有些运放电路、传感器或者音频电路需要负电源比如-5V。如果手头已经有5V正电压最简单的办法就是用电荷泵反压芯片比如ICL7660、MAX660、TPS60403。这类芯片不需要电感只需要两个电容就能把正5V变成-5V。以ICL7660为例典型的负压电路接法是5V输入接VGND接地在CAP和CAP-之间接一个10μF自举电容在OUT和GND之间接一个10μF输出电容OUT就是-5V输出。它的原理是先把输入电容充到5V再切换极性把电荷转移到输出电容上从而实现电压翻转。不过要注意ICL7660的输出电流不大一般几十毫安到上百毫安适合给运放供电但别想着带负载很重的设备。如果需要更大电流的-5V可以看TPS60403最大输出电流能做到200mA左右。如果你要的是“可调负压”那就得上Buck-Boost反极性电路用MC34063或者专用负压芯片电路复杂度会高不少。4.5 5V无刷电机驱动电路从直接接到三半桥很多人以为5V无刷电机就是两根线直接接上去就转那通常是因为买到的无刷电机自带驱动板比如电脑散热风扇。真正的“裸”无刷电机外壳下面没有驱动电路必须外部提供换相逻辑才能转。给小功率5V无刷电机做驱动有两个方向。一个是直接用集成驱动芯片比如DRV11873。这颗芯片是专门为三相无感无刷电机设计的供电电压2.7V到5.5V外围只需要几个电容和电阻输出端直接接电机三相线就能让电机转起来。适合驱动小型散热风扇、模型小电机这类负载。另一个方向是MCU三半桥方案。用STM32或者普通单片机读取电机霍尔信号按照六步换相表控制三个半桥的MOS管通断。5V系统里栅极驱动可以选EG2104这类半桥驱动芯片MOS管选逻辑电平驱动的NMOS比如AO3400、SI2302。这个方案灵活但调试量也大适合想深入学习无刷电机控制的人。无论用哪种方案都要记住一点电机启动瞬间或堵转时电流会远大于额定电流。无刷电机驱动电路的5V电源轨上至少要并联一个大容量电解电容比如470μF/10V用来吸收堵转电流尖峰否则PD充电头很容易被拉保护。5. 一次完整实测65W PD充电头供出5V/3.3V/-5V还带动一个无刷风扇5.1 实际电路拓扑我把上面几个模块拼成了一台“万能5V系统电源”用CH224K诱骗模块从65W氮化镓充电头拿20V/3A再用XL4015降压到5V。5V分三路一路直接给5V无刷风扇一路经AMS1117-3.3给MCU供电最后一路经ICL7660反压成-5V给运放供电。电路拓扑如下PD充电头 ↓ CH224K诱骗模块20V/3A ↓ XL4015降压模块5V/3A ├──→ 5V无刷风扇DRV11873驱动 ├──→ AMS1117-3.3 → 3.3VMCU └──→ ICL7660 → -5V运放这个链路很典型PD负责“取高压”Buck负责“降压”LDO负责“精稳压”电荷泵负责“翻极性”。每一步都有明确分工不会把任何一颗芯片压到极限。5.2 实测数据我用最普通的3A双Type-C线和一根5A E-Marker线各测了一轮负载是12V转5V模块后面带一个无刷风扇风扇在1.8A时接近峰值。读数如下测试点空载风扇0.8A风扇1.8A诱骗输出VBUS19.98V19.95V19.90V5V输出5.01V4.98V4.91V3.3V输出3.31V3.30V3.29V-5V输出-5.02V-5.01V-5.03V5V纹波25mV40mV78mV5V在大电流下掉到4.91V主要是XL4015模块没有远端补偿加上线材和端子压降造成的。如果你把5V的采样线反馈点直接接到负载端1.8A时可以回到4.97V左右这就是模块上“远程反馈”的用途。不过对MCU和风扇来说4.91V完全够用。5.3 踩坑记录这次实测里最有价值的是线材对比。普通3A线在3A负载下20V侧压降能达到0.5V左右5A E-Marker线只有0.08V。如果你做的是大功率供电线材压降会直接决定负载侧电压够不够。我测过一根杂牌线3A时20V降到18.9VXL4015模块输入不足5V输出就开始抖动。E-Marker不是玄学它除了标称5A电流能力外线芯的电阻也确实更好。第二个坑是轻载不启动。PD诱骗模块刚上电时如果后面几乎没有负载有些65W充电头会“犹豫”一下才输出电压看起来像是故障。解决办法是先接一个几百欧姆的假负载或者直接把风扇接上再上电让VBUS有稳定负载。第三个坑是电感啸叫。降压模块在20V转5V这种大压差、轻负载工况下峰值电流很小环路容易进入脉冲模式电感就会发出吱吱声。可以在输出端并联一个稍大的陶瓷电容或者把模块的补偿参数调一下声音一般能压下去。5.4 安全边界说到底Type-C在高功率快充下可以传输100W甚至更高的功率这不是玩具。40V以内的电压虽然不至于电击致死但短路电流完全可以把烙铁头烧红也可能点燃线材。我每次测试都会在VBUS正极线上串一个自恢复保险丝或限流模块初始电流限制在3A以内。母座焊好后所有带电焊盘都用热缩管或704硅胶包起来避免手碰到。另外一个容易被忽略的点是PD电流档位。充电头PDO写了20V/3ADC-DC降压模块最大输出5A这并不代表你能从20V侧抽出5A。整个链路的最大电流能力由“PDO最小电流”决定而不是由后级模块决定。想要更大的功率必须换支持更高电流的充电头和线缆。最后说一个我私人的使用习惯现在桌上已经不放一堆不同电压的电源适配器了需要12V就诱骗12V需要5V就诱骗20V再Buck降下来需要3.3V就再加一颗LDO。16Pin Type-C加上PD诱骗器这套组合本质上就是一台“电压自由提取器”。你只要记住把CC1、CC2分开接把PDO菜单当成功率上限调整电压后先测再带载基本就不会翻车。
返回列表