我第一次设计Type-C充电电路的时候,照着参考电路图抄,用的6P座子,VBUS接5V,GND接地,能充电就行。CC1、CC2不知道干嘛的,就这样悬空着。
最总还是不放心,翻了Type-C座子的datasheet,只给了封装尺寸和引脚定义,没提CC脚要接什么;又翻了充电管理芯片的datasheet,也没提CC脚。两份手册都没说要接,那应该就是不用接,可能本身就是悬空的。
觉得没问题,也就没多想。
把打板文件发给制版厂,几天后PCB空板回来自己点锡膏手工贴元件。不到两个小时贴出几块样板。贴完第一件事就是功能测试:插上A-to-C线,红灯亮,充电中;测VBUS电压,5V正常;测电池端电压,4.2V截止正常;充满转蓝灯,正常。控制板几项功能挨个过了一遍,都没问题。
自己贴的板,自己测的,每项都过了,心里有底了。跟老板说可以先安排试产,投了50片,回来全检了一遍——还是用的那根A-to-C线——良率100%,一片坏的都没有。试产都过了,那就没什么好担心的了,直接下大货订单,几千片下去,批量生产。
成品发到国外客户手上,客户用C-to-C的充电线一插——没反应。再换一根线——还是没反应。又换了个充电头——依然没反应。几根线几个头试了个遍,就是不亮。
客户直接发了投诉邮件到老板邮箱,措辞很严厉。老板看完,脸色比邮件内容还黑,把我叫到办公室,把门一关。那一天,我体会到了什么叫电闪雷鸣。
\”实验室测着好好的啊?\”我小声嘀咕。
\”你用什么线测的?\”老板压着火。
“A……A转C的线。”
老板深吸一口气,掏出一根C-to-C线拍在桌上:“你现在,立刻,马上,去实验室用这根线测。”
我去测了。插上去,充电指示灯毫无反应。
查了整整一下午资料,把Type-C规范和各种技术文档翻了个遍,才发现问题:CC1和CC2脚必须各接一个5.1K下拉电阻到GND。
我翻开自己画的原理图——CC1和CC2两个脚,干干净净,啥也没接。是我设计的时候就漏了这两颗电阻。从源头就没有,所以每一块板子都没有,无一幸免。
两颗电阻,成本不到一毛钱。引起大批量不良成品出国,引起国外客户投诉,那阵子我最怕老板喊我名字——一喊就知道又要去办公室挨训了。
最后客户把整批成品退回来,我们返工换控制板。原理图加上CC1、CC2的5.1K下拉电阻,PCB重新走线加焊盘,重新打板、贴片,新控制板换掉成品里原来的板,重新组装测试后再发回给客户。换下来的旧控制板没扔,几千片呢,都是钱,慢慢刮焊盘补电阻,补好的内部消化或者留作他用。
刮焊盘这活,说起来简单:CC脚焊盘本身就是露铜的,不用刮;只需用刻刀在旁边的地铜皮上刮开一小块阻焊层露铜,然后在CC脚焊盘和地铜皮露铜点之间焊一颗0402的5.1K电阻,CC1和CC2各一颗。但做起来费眼睛,0402电阻又小,镊子夹着容易滑掉,两个刮点离得近,焊的时候还容易连锡。有空就补几片,慢慢消化,这活干了好一阵子。
老板训了我一顿但没炒我。他不怎么懂硬件,但客户投诉、批量返工意味着赔钱、丢客户。训完甩了一句:\”这次损失公司承担,你写个复盘报告,以后发板前自己多检查几遍。\”大概是看我态度还行,问题自己定位到了,返工方案也拿出来了,就给了个改过自新的机会。
从那以后,CC脚的5.1K下拉电阻成为我Type-C电路设计中的必查项,原理图完成后会逐项确认:CC1、CC2是否各接一颗5.1K下拉至GND,阻值与精度是否符合规范要求。
这篇就把我踩过的坑和搞懂的原理记录下来,希望新手别再为一毛钱的电阻付出整批返工的代价。更重要的是——别在设计阶段就把东西漏了,那是最贵的错误。还有,测试的时候别忘了换根线试试。
CC引脚:Type-C的\”配置通道\”
先明确两个贯穿全文的角色:
- Source(供电端):往外送电的一方,比如充电头、适配器、电脑USB口
- Sink(受电端):往里吸电的一方,比如手机、耳机、你做的充电板
后面反复提到的Source就是供电方,Sink就是用电方,记住这两个词,后面就不会晕了。
完整的Type-C接口定义了24个引脚(实际产品常用简化座子,如6P只引出VBUS、GND、CC1、CC2),其中两个脚叫CC1和CC2,全称Configuration Channel,翻译过来叫\”配置通道\”。
听名字挺高大上,其实核心功能就一个——连接检测与角色识别。
Type-C是个\”以貌取人\”的协议,它不看你是谁,它看你CC脚上接了什么电阻。这就像设备揣着一张身份证——CC脚上接什么电阻,身份证上就写着什么身份。门卫(Source)看一眼身份证,决定给不给电:
- 接5.1K下拉 = “我是受电端(Sink),请供电”
- 接56K上拉 = “我是供电端(Source),可提供标准USB电流(500mA/900mA)”
- 接800Ω~1200Ω (Ra) = “我是主动式线缆(带E-Marker芯片),需要VCONN供电”
- 啥都不接 = “无设备连接”
没带身份证?门卫直接拦在外面,这就是我当初CC脚悬空的下场。
CC脚主要干三件事:
说白了,CC脚就是Type-C的\”握手线\”,一插上去先通过电阻\”对暗号\”,对上了才给电。
三个关键电阻:Rd / Rp / Ra
Type-C规范定义了三种标准电阻,每种代表一种设备角色,就像三种不同的身份证:
| Rd | 5.1 kΩ | Sink受电端(手机、耳机、你的设备) | CC脚 → GND(下拉) |
| Rp | 56k / 22k / 10k | Source供电端(充电头、电脑) | CC脚 → 电源(上拉) |
| Ra | 800~1200 Ω | 主动式线缆(带E-Marker芯片) | CC脚 → GND(下拉) |
我踩坑的那个5.1K,就是Rd,Sink端的标准下拉电阻,相当于\”充电设备\”的身份证。
Rp为什么有三个值?
因为供电端需要告知对端自己的默认供电能力,就像身份证上还印着\”可接待人数\”:
| 56 kΩ | 500mA (USB 2.0) / 900mA (USB 3.0) | 标准USB供电能力 |
| 22 kΩ | 1.5A | 中等供电能力 |
| 10 kΩ | 3.0A | 高供电能力(Type-C 3A) |
规律很简单:Rp阻值越小,声明的默认供电能力越强。但实际供电能力还需通过PD协议协商确认。
工作原理:分压检测
当Source和Sink通过Type-C线连接时,Source内部的检测电路和Sink端的Rd构成检测回路:
Source端(充电头) Sink端(你的设备)
┌─── Rp(56K) ─── vCC(内部) ┌─── CC引脚
│ (或恒流源) │
└─── CC引脚 ────────────────────┴─── Rd(5.1K) ─── GND
↑
检测阶段VBUS关断(纯Source设备)
Source内部有专用CC检测电路,就像门卫看身份证——量一下CC脚的电压,对得上才放行。
关键点:
- 纯Source设备(如充电头):检测阶段VBUS关断,Rp的上拉电源是内部vCC(独立检测电源,约5V)
- OTG/Host设备(如手机作为Host):VBUS可能已有电,Rp可能上拉到VBUS
- 分压检测完成后,Source才开启VBUS输出(纯Source设备)
分压公式(Rp上拉到vCC时):
VCC=VvCC×RdRp+RdV_{CC} = V_{vCC} \\times \\frac{R_d}{R_p + R_d}V






