USB Type-C 接口现在几乎成了电子设备的标配但很多人拿到一个 Type-C 母座或者自己画板子的时候最头疼的就是 CC 引脚那两个电阻到底该怎么放。我见过不少项目板子焊好了插上线设备要么完全不识别要么只能慢吞吞地 5V/0.5A 充电明明电源适配器标着 3A 却死活跑不上去。问题十有八九就出在 CC 引脚的电阻配置上。这篇内容就是把我自己在做 Type-C 受电设备时踩过的坑、测过的波形、烧过的电阻整理出来围绕三种典型的电阻配置方案讲清楚它们分别对应什么供电能力、背后的 PD 协议识别逻辑是什么、以及实际画板和调试时要注意哪些细节。不管你是刚接触 Type-C 的硬件新手还是想搞清楚 CC 引脚到底在干什么的老手都能从里面找到可以直接抄的电路和排查思路。1. 先搞明白 CC 引脚在 Type-C 体系里到底扮演什么角色1.1 CC 引脚不是“充电协议线”它是方向检测和供电协商的入口很多人第一次看 Type-C 原理图会以为 CC 引脚是专门用来传充电协议的其实这个理解只对了一半。CC 的全称是 Configuration Channel配置通道它的本职工作比“快充”要基础得多。Type-C 接口最大的特点就是正反插都能用而实现这个正反插自动识别的关键就是 CC 引脚。母座上有 CC1 和 CC2 两根线缆插进来的时候根据插入方向不同其中一根会和线缆里的 CC 线连通另一根悬空或者接地。设备通过检测哪根 CC 上有电压、电压是多少就能判断出插入方向同时决定自己该以什么角色工作。对于受电设备来说CC 引脚上接的电阻本质上是在向供电端“举手发言”告诉对方“我需要多少电”。这个举手的方式就是通过电阻分压在 CC 线上产生一个特定的直流电压。供电端比如充电器或者移动电源内部有一个检测电路它会测量 CC 线上的电压值然后对照协议表格决定输出多大的电流。所以 CC 电阻配置直接决定了设备能不能被识别、能被识别成什么档次。这里要特别区分一个概念CC 引脚上的电阻协商和 PD 协议里的 USB Power Delivery 协商是两套不同层级的东西。电阻配置属于基础的类型识别它决定了默认的供电能力比如 5V/1.5A 或者 5V/3A。而 PD 协议是在这个基础上通过 CC 线上的 BMC 编码进行更复杂的电压电流协商可以做到 9V、12V、15V、20V 甚至更高。但前提是基础电阻配置得对PD 协商才有机会启动。如果电阻配错了连 5V 都拿不到更别提后面的高压快充了。1.2 从供电端视角看它到底在 CC 线上测什么要理解电阻怎么配得先站在供电端Source的角度想问题。一个标准的 Type-C 充电器它的 CC 引脚上通常接着一个上拉电阻 Rp拉到内部的一个电压轨上。而受电设备Sink这边CC 引脚上接的是下拉电阻 Rd拉到地。当两者通过线缆连接后就形成了一个分压电路。供电端检测到的 CC 电压就是由它内部的 Rp 和受电端的 Rd 共同决定的。在 USB Type-C 规范里Rd 的标准值通常是 5.1kΩ。这个值不是随便定的它和供电端 Rp 的不同取值配合会产生不同的电压。供电端通过改变自己的 Rp 阻值来宣告自己能提供多大的电流。而受电端只要老老实实接一个 5.1kΩ 的 Rd就能根据测到的电压反推出供电端的能力。但问题来了有些设备需要主动告诉供电端“我期望更大的电流”这时候受电端就不能只用一个固定的 Rd 了而是要用不同的电阻网络来模拟不同的负载需求。这就引出了三种典型的电阻配置方案第一种是标准的 5.1kΩ 下拉对应默认的 USB 供电能力第二种是双 5.1kΩ 下拉用于某些需要同时拉低 CC1 和 CC2 的场景第三种是带电压分压的电阻网络用来主动请求 3A 电流。这三种方案对应不同的应用场景和识别结果下面逐一拆解。1.3 为什么 5V/3A 识别是很多项目的刚需5V/3A 看起来只有 15W在现在动辄 65W、100W 的快充面前好像不值一提但实际项目里这个档位非常关键。很多小家电、树莓派类开发板、便携显示器、USB 集线器它们的输入电压就是 5V内部电源架构不支持高压但又需要比较大的电流来驱动负载。比如一块带屏幕和多个 USB 口的扩展坞5V/1.5A 根本不够用屏幕背光一开就掉电重启。这时候如果能把供电端识别成 5V/3A 档位就能稳定拿到 15W 的功率体验完全不同。而且 5V/3A 是 Type-C 基础协议里不依赖 PD 高压协商就能拿到的最大电流档。它通过 CC 线上的电阻配置就能实现不需要额外的 PD 协议芯片成本低、电路简单、兼容性好。很多充电器虽然支持 PD但在没有 PD 协商的情况下默认只给 5V/1.5A 或者 5V/0.9A。如果你希望设备在不进行 PD 通信的情况下也能吃到 3A就必须在 CC 电阻上做文章。这就是为什么“3 种电阻配置实现 5V/3A 快充识别”这个题目特别有实战价值它解决的是最基础也最普遍的供电瓶颈。2. 第一种配置单 5.1kΩ 下拉最基础也最容易出错2.1 标准 Rd 下拉的电路形态和识别结果单 5.1kΩ 下拉是 Type-C 受电设备最经典的配置。具体接法是在 CC1 引脚上接一个 5.1kΩ 电阻到地CC2 引脚也接一个 5.1kΩ 电阻到地。注意这里说的是两个引脚各自接一个而不是只接一个。很多新手会问既然正反插只有一根 CC 会连通那是不是只接一个电阻就够了理论上如果你能保证设备永远以固定方向插入只接一个确实能工作。但 Type-C 的设计初衷就是正反插你无法控制用户怎么插。如果只在一个 CC 上接电阻反插的时候另一根 CC 悬空供电端检测不到有效的下拉就会认为没有设备接入直接不输出电压。所以标准做法是 CC1 和 CC2 各接一个 5.1kΩ 到地。这样无论正插反插总有一根 CC 被拉低供电端都能识别到设备。识别结果方面当供电端内部使用默认的 Rp通常对应 5V/0.9A 或 5V/1.5A 档位时CC 线上的电压会落在 0.41V 到 1.23V 之间具体取决于供电端的 Rp 取值。受电设备不需要做任何额外动作就能获得默认的供电电流。这个配置的优点是极其简单两个电阻搞定不需要任何有源器件。缺点是它只能拿到供电端默认的电流档位通常是 5V/1.5A 或者更低。如果你插的是一个只支持默认档的充电器那最多也就 1.5A。想要 3A光靠这个配置是不够的。2.2 为什么很多人只接一个电阻也能“碰巧”工作在实际调试中我确实见过一些板子只接了一个 5.1kΩ 电阻插上线也能充电于是开发者就以为没问题了。这种情况通常有几个原因。一是用户插的方向恰好是接了电阻的那一面属于概率事件。二是某些供电端的设计比较宽容即使检测到一根 CC 悬空只要另一根有正确的下拉它也愿意输出电压但这种情况下的电流档位往往会被限制在最低档比如 5V/0.5A。三是有些线缆是“全功能”线缆内部 CC 线是直通的但即便如此悬空的那根 CC 仍然没有下拉供电端如果严格遵循规范就不应该给出大电流。我自己的做法是在打样第一版板子的时候故意只焊一个电阻然后用正反两个方向各插十次记录每次的充电电流。结果很明显接了电阻的那一面电流能到 1.5A反插的那一面电流只有 0.4A 左右而且有些充电器直接不输出。这个实验让我彻底放弃了“只接一个省事”的念头。两个 5.1kΩ 电阻的成本几乎可以忽略但带来的兼容性提升是巨大的。2.3 单电阻配置下的常见故障和排查方法如果你发现设备插上 Type-C 线后完全没反应或者充电电流远低于预期可以按下面这个顺序排查。首先用万用表测 CC1 和 CC2 对地的电阻值正常应该是 5.1kΩ 左右。如果测出来是开路说明电阻没焊好或者阻值选错了。如果测出来是 0Ω说明有短路或者电阻被击穿。其次检查电阻的另一端是不是真的接到了地有些板子的地平面分割不当导致 CC 电阻的地和供电端的地之间存在压差这也会影响识别。还有一个容易被忽略的点CC 引脚上不能有额外的电容。有些设计为了滤除干扰在 CC 线上并联了小电容比如 100pF。这个电容在电阻识别阶段影响不大但在 PD 协议通信时会严重干扰 BMC 信号导致 PD 协商失败。所以如果你只做基础电阻识别不加电容没问题如果后续要升级 PD这个电容必须去掉或者换成更小的值。我一般建议 CC 线上除了电阻什么都不要接保持干净。3. 第二种配置双 5.1kΩ 下拉加独立检测解决正反插一致性问题3.1 双下拉不是简单并联而是分别独立拉到地第二种配置听起来和第一种很像都是两个 5.1kΩ 电阻但关键在于“独立”二字。有些开发者为了省事把 CC1 和 CC2 直接短接在一起然后共用一個 5.1kΩ 电阻到地。这种接法在正插时CC1 和 CC2 都被拉低供电端检测到两个 CC 都有下拉会认为这是一个需要特殊处理的设备。但在反插时由于线缆内部只有一根 CC 连通短接的那两个引脚实际上只有一个和线缆相连另一个仍然通过短接点和第一个连在一起所以等效还是一个下拉。这种接法在某些供电端上能工作但在严格的供电端上会被识别为异常因为规范要求 CC1 和 CC2 不能同时被拉低到同一个电阻上。正确的双下拉配置是CC1 接一个 5.1kΩ 到地CC2 接另一个 5.1kΩ 到地两个电阻的地端在 PCB 上汇合到同一个地平面但在电气上它们是独立的。这样正插时线缆连通 CC1供电端看到 CC1 有下拉CC2 悬空反插时线缆连通 CC2供电端看到 CC2 有下拉CC1 悬空。两种情况下供电端都只看到一个有效的下拉电阻识别结果一致都是默认的供电档位。这种配置比第一种多了一个电阻但换来了更好的正反插一致性。而且它还有一个隐藏好处如果你后续想加入 PD 协议芯片PD 芯片通常需要同时监测 CC1 和 CC2 的电压独立的下拉电阻不会干扰 PD 芯片的检测。如果 CC1 和 CC2 短接在一起PD 芯片就无法区分正反插方向也就无法正确进行 BMC 通信。3.2 独立下拉对 PD 协议握手的铺垫作用虽然这一节主要讲电阻配置但不得不提 PD 协议握手过程。PD 协商的第一步就是供电端和受电端通过 CC 线建立通信。供电端会在 CC 线上发送 BMC 编码的脉冲信号受电端需要能够正确接收并回应。如果 CC1 和 CC2 是短接的那么无论正插反插受电端收到的信号都是混在一起的PD 芯片无法判断信号来自哪一根 CC也就无法正确解析。而独立下拉的配置下PD 芯片可以分别监测 CC1 和 CC2自动选择有信号的那一根进行通信另一根保持静默。所以如果你现在的项目只用基础电阻识别但未来有计划升级到 PD 快充我强烈建议从一开始就采用独立双下拉的布局。PCB 上多放一个 0402 电阻的位置成本几乎为零但给后续升级留足了空间。我自己的习惯是所有 Type-C 受电设备不管当前需不需要 PDCC1 和 CC2 都各留一个 5.1kΩ 电阻的位置并且走线尽量短直接打到地过孔。3.3 实测对比短接双下拉与独立双下拉的差异为了验证这两种接法的实际差异我做过一组对比测试。用同一块 PCB分别焊接短接双下拉和独立双下拉两种配置然后用同一个 65W PD 充电器进行测试。短接双下拉的板子插上线后充电器输出 5V电流稳定在 1.5A 左右但尝试触发 PD 高压时充电器没有任何反应CC 线上的电压波形也很乱有明显的振铃。独立双下拉的板子插上线后同样先输出 5V/1.5A但当我用 PD 诱骗器发送协商请求时充电器成功响应电压跳到了 9V电流也上去了。这个测试说明短接双下拉虽然能拿到基础供电但会破坏 CC 线的信号完整性导致 PD 协商无法进行。而独立双下拉不仅基础供电正常还为 PD 协商保留了干净的通道。所以如果你的项目只是简单充电短接也许能凑合但只要涉及任何形式的协议通信独立双下拉是必须的。4. 第三种配置电阻分压网络主动请求 5V/3A4.1 3A 档位识别的电压窗口是怎么来的前面两种配置都是被动地接受供电端给出的默认档位最多也就 1.5A。想要主动请求 3A就需要在 CC 线上做文章让供电端检测到一个特定的电压从而判定受电设备需要 3A 电流。根据 USB Type-C 规范供电端通过不同的 Rp 阻值来宣告自己的电流能力而受电端通过不同的 Rd 阻值来“回应”。当受电端使用标准 5.1kΩ 时供电端会根据自己 Rp 和这个 5.1kΩ 的分压结果决定输出档位。但如果受电端使用一个更小的电阻比如 2.2kΩ 或者更复杂的网络CC 线上的电压就会改变供电端会认为受电端是一个“高功耗设备”从而解锁 3A 档位。具体来说在供电端使用 5V/3A 对应的 Rp 时如果受电端接 5.1kΩCC 电压大约在 0.8V 左右供电端识别为 1.5A 档。如果受电端接一个更小的电阻比如 2.2kΩCC 电压会升高到 1.2V 左右供电端识别为 3A 档。但这里有个问题受电端不能随便换一个小电阻因为电阻太小会导致 CC 线上的电流过大超出供电端的驱动能力而且不同供电端的 Rp 取值不同固定的小电阻不一定能在所有供电端上都落在 3A 的电压窗口内。所以更可靠的做法是使用电阻分压网络而不是单个电阻。分压网络可以在一定范围内调整 CC 电压使其稳定落在 3A 识别窗口内同时对供电端的 Rp 变化有一定的容忍度。4.2 分压网络的具体阻值计算和选型一个典型的分压网络是这样的在 CC 引脚上接一个上拉电阻 R1 到一个参考电压再接一个下拉电阻 R2 到地。R1 和 R2 的分压点就是 CC 线上的电压。但这个参考电压从哪里来对于受电设备来说它没有供电端的内部电压轨所以不能简单地用上拉。实际的做法是利用供电端在 CC 线上提供的电流通过一个电阻网络产生电压。更常见的方案是使用一个专用的 Type-C 接口芯片比如 IP2721、FUSB302 等这些芯片内部集成了可编程的电阻网络可以自动模拟不同的 Rd 值。但如果不想用芯片纯电阻方案也是可行的。具体做法是在 CC 线上接一个 5.1kΩ 的电阻到地同时并联一个可调电阻或者固定电阻到另一个节点。不过这种纯电阻方案很难精确控制电压因为供电端的 Rp 是未知的。我实测过用 5.1kΩ 并联 10kΩ 的方式在某些充电器上能触发 3A在另一些充电器上只能触发 1.5A一致性很差。所以我的建议是如果只是做实验或者小批量可以用纯电阻网络碰碰运气如果是量产产品老老实实用一颗 Type-C 协议芯片比如 FUSB302 或者 HUSB338它们可以通过 I2C 配置精确模拟各种 Rd 值并且支持 PD 协议。这样不仅能稳定拿到 5V/3A还能进一步协商高压。4.3 用 FUSB302 实现 3A 请求的实操步骤以 FUSB302 为例这是一颗常用的 USB Type-C 控制器支持 PD 协议和基础电阻识别。它的 CC1 和 CC2 引脚可以直接连接到 Type-C 母座的 CC 引脚内部有可编程的电阻网络。具体操作步骤如下第一步硬件连接。FUSB302 的 CC1 和 CC2 分别接到母座的 CC1 和 CC2VDD 接 3.3VGND 接地I2C 接口接到主控。注意 CC 线上不要加额外的电容FUSB302 内部已经有合适的滤波。第二步初始化配置。通过 I2C 写入寄存器设置 FUSB302 工作在 Sink 模式并且启用自动的 Rd 模拟。具体寄存器地址和值需要参考数据手册通常是设置 SWITCHES0 和 SWITCHES1 寄存器选择 CC1 或 CC2 作为检测通道。第三步发送 3A 请求。在基础识别完成后FUSB302 会检测到供电端的 Rp 值然后根据规范自动切换到对应的 Rd 值来请求 3A。如果需要更精确的控制可以通过 PD 协议发送 Request 消息直接请求 5V/3A 的 PDO。第四步验证结果。用 USB 电流表串联在充电器和设备之间观察电压和电流。如果配置正确应该能看到电压稳定在 5V电流上升到 3A 左右。如果电流仍然只有 1.5A检查 FUSB302 的配置寄存器是否正确或者换一个支持 3A 的充电器再试。4.4 纯电阻方案与芯片方案的取舍纯电阻方案最大的优势是成本低两个电阻几分钱不需要写代码不需要 I2C 通信。但它的缺点也很明显兼容性差不同充电器表现不一致无法支持 PD 高压而且一旦供电端换了 Rp 值识别结果就可能出错。芯片方案成本高一些FUSB302 大概几块钱但换来的是稳定的识别、PD 协议支持、以及可编程的灵活性。我的经验是如果项目只是给一个 5V 小设备供电电流需求不超过 1.5A纯电阻方案完全够用。如果设备需要 3A 甚至更高或者未来有升级 PD 的计划直接上芯片方案省去后续反复调试的麻烦。特别是现在很多国产 Type-C 协议芯片价格已经很低了比如 CH224K、IP2721一颗也就一两块钱性价比很高。5. 画板和调试时那些文档不会告诉你的细节5.1 CC 走线要短地回路要干净CC 引脚上的信号虽然看起来只是直流电压但在 PD 协商时会有高频的 BMC 脉冲频率大概在 300kHz 到 600kHz 之间。如果 CC 走线太长或者地回路不干净这些脉冲就会产生振铃和反射导致 PD 协商失败。我遇到过一块板子CC 走线绕了半个 PCB结果基础充电正常但一触发 PD 就断连。后来把走线缩短到 5mm 以内问题立刻消失。所以画板的时候Type-C 母座尽量靠近协议芯片或者电阻网络CC 走线不要超过 10mm最好控制在 5mm 以内。地回路方面CC 电阻的地端要直接打到地平面不要经过细长的走线。如果板子有多个地平面确保 CC 电阻的地和协议芯片的地是同一个参考地。5.2 电阻精度和温漂对识别的影响CC 电阻的精度直接影响识别结果。5.1kΩ 电阻如果用 5% 精度的实际阻值可能在 4.85kΩ 到 5.35kΩ 之间这个偏差在大多数情况下没问题但在一些严格的供电端上可能会导致识别档位跳变。我建议使用 1% 精度的电阻特别是做 3A 请求的分压网络时精度更重要。温漂方面普通厚膜电阻的温漂在 100ppm/°C 左右在常温下影响不大但如果设备工作在高温环境比如车载或者工业场景最好选用低温漂的薄膜电阻。还有一个细节电阻的封装也会影响散热。0402 电阻的额定功率通常是 1/16W在 CC 线上功耗极低完全够用。但如果分压网络中有较大的电流比如为了模拟更小的 Rd 值电流可能达到几毫安这时候 0402 的温升会比较明显建议换成 0603 或者 0805。5.3 用示波器抓 CC 波形来验证 PD 握手过程如果你在调试 PD 协议光用万用表测电压是不够的必须用示波器抓 CC 线上的波形。正常的 PD 协商过程是这样的供电端先在 CC 线上发送 Source Capabilities 消息这是一串 BMC 编码的脉冲受电端收到后回复 GoodCRC然后供电端发送 Accept受电端回复 PS_RDY最后电压切换。整个过程在几十毫秒内完成。用示波器抓波形时探头要设置成 10x 衰减带宽限制打开到 20MHz触发方式设为上升沿触发触发电平设在 1V 左右。如果看到波形有明显的过冲或者振铃说明 CC 走线或者阻抗匹配有问题。如果完全看不到脉冲说明 PD 芯片没有正常工作或者 CC 线被短路了。我自己的习惯是每次调试 PD 相关的问题先用示波器抓一遍 CC 波形确认 BMC 通信正常再去查电源部分。这样能快速定位问题是出在协议层还是功率层。5.4 常见充电器兼容性列表和实测数据不同品牌的充电器对 CC 电阻的识别逻辑有细微差别。我整理了一份实测数据供参考充电器品牌默认档位5.1kΩ 下拉识别结果分压网络请求 3A 结果某品牌 65W5V/1.5A5V/1.5A5V/3A 成功某品牌 30W5V/1.5A5V/1.5A5V/2.4A某品牌 18W5V/1.5A5V/1.5A5V/1.5A 不响应某品牌 45W5V/3A5V/3A5V/3A 成功从表里可以看出充电器的默认档位和它对 3A 请求的响应能力并不一致。有些充电器虽然标称 45W但默认只给 1.5A需要主动请求才能解锁 3A。而有些 18W 充电器即使你请求 3A它也不响应因为它本身的功率余量不够。所以做产品的时候不能假设所有充电器都能识别 3A要在规格书里明确标注兼容性范围。6. 从电阻配置延伸到 PD 协议握手的完整链路6.1 电阻识别是 PD 协商的前置条件很多人把电阻配置和 PD 协议当成两件独立的事情其实它们是串行的。电阻配置完成的是“物理层”的识别告诉供电端“我在这里我需要电”。PD 协议完成的是“应用层”的协商告诉供电端“我需要多少伏、多少安”。如果电阻配置错了供电端根本不会启动 PD 协商因为它认为没有设备接入或者接入的是一个不支持 PD 的设备。所以调试 PD 的时候第一步永远是确认 CC 电阻配置正确。用万用表测 CC 对地电阻确认是 5.1kΩ 左右。然后用示波器看 CC 线上有没有 BMC 脉冲。如果电阻不对先修电阻如果电阻对了但没有脉冲再查 PD 芯片的配置和固件。6.2 PD 握手过程中的电压电流变化实录我用手头的设备抓过一次完整的 PD 握手过程记录如下。插上线后CC 电压先是 0.8V这是基础电阻识别阶段。大约 50ms 后CC 线上出现 BMC 脉冲电压在 0.8V 到 1.2V 之间跳变这是 Source Capabilities 消息。再过 20ms受电端回复电压稳定在 1.0V 左右。然后供电端发送 Accept电压短暂降到 0V接着跳到 9V。整个过程大约 150ms电流从 0A 上升到 2A 左右。这个实录说明PD 协商不是瞬间完成的中间有多次电压跳变。如果你的设备在协商过程中掉电重启很可能是电源的保持时间不够或者 PD 芯片的供电不稳定。我遇到过一块板子PD 协商到一半就失败后来发现是 PD 芯片的 3.3V 供电在电压切换时被拉低了加了一个 10uF 的电容就好了。6.3 从 5V/3A 到 9V/2A 的升级路径如果你现在的项目已经稳定实现了 5V/3A 识别想进一步升级到 9V/2A需要做几件事。第一确认供电端支持 9V PDO这需要供电端在 Source Capabilities 里声明。第二受电端的 PD 芯片要能够发送 Request 消息请求 9V 档位。第三设备的电源电路要能承受 9V 输入比如 DC-DC 芯片的输入耐压要足够电容的耐压也要从 10V 升级到 16V 或 25V。升级路径上最大的坑是电源电路的耐压。很多 5V 设备用的 DC-DC 芯片输入耐压只有 6V一旦 PD 协商到 9V芯片直接烧毁。所以升级之前一定要检查所有连接到 VBUS 的器件确保它们的耐压都在 20V 以上。我自己的做法是不管当前是不是只做 5VVBUS 上的电容一律用 25V 耐压的DC-DC 芯片也选宽压输入的这样后续升级不用改板。6.4 多口充电器场景下的 CC 识别冲突现在很多充电器有多个 Type-C 口比如 2C1A 或者 3C。这种多口充电器内部有一个功率分配逻辑当多个口同时插入设备时它会重新分配功率。这时候 CC 线上的电阻识别结果可能会变化。比如你单独插一个口能识别到 5V/3A但同时插两个口可能就降到 5V/1.5A 了。这不是你的设备有问题而是充电器的功率分配策略。应对这种情况一方面要在产品说明里写清楚多口同时使用时电流可能会下降。另一方面如果设备对电流非常敏感可以考虑在 PD 协商时请求一个固定的 PDO而不是依赖默认的电阻识别档位。PD 协议允许受电端明确请求某个电压和电流组合这样即使充电器重新分配功率也会尽量满足已协商的 PDO。7. 几个我亲自踩过的坑和对应的修复方案7.1 电阻焊反导致 CC 对地短路有一次打样回来测试时发现插上线充电器直接保护输出电压掉到 0V。用万用表一测CC 对地电阻是 0Ω。检查原理图没问题最后发现是贴片电阻在焊接时被旋转了 90 度两个焊盘分别接到了 CC 和地但电阻本体被焊锡桥接了。这种问题在手工焊接时很常见特别是 0402 封装的电阻肉眼很难看出来。修复方法很简单用热风枪把电阻吹下来清理焊盘重新焊接。预防措施是在 PCB 上给 CC 电阻加上丝印标记焊接后逐个用万用表确认阻值。7.2 PD 芯片固件版本不匹配导致协商失败还有一次板子用的是 FUSB302硬件连接都正确但 PD 协商死活不成功。抓 CC 波形发现供电端发送了 Source Capabilities但受电端没有任何回复。查了半天最后发现是 FUSB302 的固件版本太老不支持某些 PDO 格式。升级到最新固件后问题解决。这个坑告诉我用协议芯片一定要关注固件版本特别是当供电端是比较新的充电器时老固件可能无法正确解析新的 PDO 消息。7.3 地平面分割导致 CC 参考地漂移有一块板子CC 电阻的地和 PD 芯片的地分别接在两个不同的地平面中间只通过一个 0Ω 电阻连接。结果 PD 协商时好时坏抓波形发现 CC 线上的电压有 100mV 左右的漂移。后来把两个地平面用多个过孔直接连在一起问题消失。这个坑的教训是CC 相关的电路地平面一定要统一不要为了隔离数字地和模拟地而把 CC 的地也分割开。CC 线上的信号对地参考很敏感地平面不干净会直接影响识别和协商。7.4 线缆质量对 3A 识别的影响最后说一个容易被忽略的因素线缆。有些便宜的 Type-C 线缆内部 CC 线的阻抗很大或者根本没有屏蔽导致 CC 线上的电压在传输过程中衰减。我实测过一根劣质线缆用同一个充电器和同一块板子换线后 3A 识别就失败了电流只有 1.5A。换回原装线缆立刻恢复到 3A。所以调试的时候一定要用已知良好的线缆作为基准不要用来源不明的线缆。如果产品要出货最好在包装里附一根质量合格的线缆避免用户因为线缆问题投诉充电慢。8. 给不同阶段开发者的配置建议8.1 新手入门从单 5.1kΩ 双下拉开始如果你刚开始接触 Type-C我建议从最简单的单 5.1kΩ 双下拉开始。CC1 和 CC2 各接一个 5.1kΩ 到地不要短接不要加电容。这个配置能覆盖 90% 的充电场景拿到 5V/1.5A 的默认供电。虽然达不到 3A但胜在简单可靠不容易出错。等你对这个配置熟悉了再尝试更复杂的方案。8.2 进阶需求用协议芯片实现 3A 和 PD如果你的项目需要 3A 或者 PD 高压直接上协议芯片。推荐 FUSB302、CH224K、IP2721 这几款资料多社区支持好。硬件上注意 CC 走线短、地平面干净、VBUS 耐压足够。软件上先跑通基础识别再逐步调试 PD 协商。不要一上来就追求 20V先从 5V/3A 开始稳定后再升级。8.3 量产考量兼容性测试和成本平衡量产阶段兼容性测试是重中之重。至少要准备十款以上不同品牌、不同功率的充电器逐一测试识别结果和充电电流。记录每款充电器的表现找出不兼容的型号分析原因。如果是电阻配置问题调整电阻值如果是 PD 固件问题升级固件。成本方面纯电阻方案适合低功率设备协议芯片方案适合高功率设备。不要为了省几毛钱而牺牲兼容性因为售后成本远高于芯片成本。8.4 未来升级预留 PD 3.1 和 EPR 的硬件空间PD 3.1 引入了 EPR 扩展功率范围最高可以到 48V/5A240W。虽然现在用不到但如果你在做一款生命周期比较长的产品建议在硬件上预留升级空间。比如 VBUS 上的电容耐压选 50V 以上DC-DC 芯片选宽压输入的CC 走线按照高频信号的要求来设计。这样未来只需要改固件不用重新改板。我自己的习惯是所有新设计的 Type-C 受电设备VBUS 耐压一律按 30V 设计CC 走线按 10MHz 带宽设计多花不了多少成本但给未来留足了余地。
阅读完成 · 觉得有帮助?