1. 三兄弟同台:为什么CH340系列总让人犯选择困难
搞嵌入式开发或者玩单片机的人,手头大概率都碰过CH340这颗芯片。它便宜、好买、驱动成熟,USB转串口这个小功能被它做得明明白白。但问题也恰恰出在这里——CH340G、CH340C、CH340E这几个型号摆在一起,新手第一反应往往是“不都是CH340吗,随便选一个不就行了”。结果画完板子、打完样、焊上去才发现,要么晶振忘了加,要么封装对不上,要么供电电压不匹配,白白浪费一版PCB。
我自己就踩过这个坑。早年做一个USB转TTL的小模块,随手在立创商城搜“CH340”,看到CH340G价格最低就直接下单了,画原理图的时候也没细看手册,结果板子回来发现必须外挂一个12MHz晶振才能工作,而我的板子空间已经塞不下了。后来才知道,如果当时选CH340C或者CH340E,内部已经集成了振荡器,根本不需要外挂晶振,能省下两个电容加一个晶振的位置。
所以这篇文章的目的很直接:把CH340G、CH340C、CH340E这三个最常被拿来比较的型号,从封装、外围电路、供电电压、适用场景几个维度彻底拆开讲清楚。不管你是刚入门画第一块PCB的学生,还是在做产品选型的硬件工程师,看完之后应该能在一分钟内做出正确选择,不再对着选型表发呆。
核心关键词先摆出来:CH340G、CH340C、CH340E、USB转串口、封装。这几个词会贯穿全文,因为它们就是选型时真正决定成败的变量。
2. 先搞清楚它们到底是不是“同一颗芯片”
2.1 共同点:核心功能完全一致
CH340系列的本质是一颗USB转串口桥接芯片。它做的事情就是把USB总线上的数据翻译成UART串口信号,让电脑能通过USB口和单片机、ESP32、STM32、Arduino这类只有串口外设的芯片通信。三个型号在协议层面是完全兼容的,驱动也是同一套,Windows、Linux、macOS下都能免驱或者装一次驱动就通用。
换句话说,你写代码的时候不需要关心用的是哪个型号,串口收发逻辑一模一样。差异全部集中在硬件层面——也就是画原理图和PCB时你需要怎么接。
2.2 关键差异总览:一张表看清三个型号
先上干货,下面这张表是我根据官方数据手册和实际使用经验整理的,建议直接截图保存:
| 对比项 | CH340G | CH340C | CH340E |
|---|---|---|---|
| 封装形式 | SOP-16 | SOP-16 | MSOP-10 |
| 是否需外挂晶振 | 需要,12MHz | 不需要,内置 | 不需要,内置 |
| 外围电容需求 | 晶振配两个22pF电容 | 极少 | 极少 |
| 工作电压 | 5V(可3.3V但需处理) | 5V/3.3V可选 | 3.3V为主 |
| V3引脚 | 需接0.1uF退耦电容 | 需接0.1uF退耦电容 | 无V3引脚 |
| 引脚数量 | 16脚 | 16脚 | 10脚 |
| 典型价格 | 最低 | 略高 | 中等 |
| 适合场景 | 成本极度敏感、空间充裕 | 通用首选 | 小体积、3.3V系统 |
这张表的信息量已经很大了,但光看表还不够,下面逐项拆解背后的逻辑。
2.3 为什么会有这三个型号:厂商的产品线逻辑
从产品设计角度看,CH340G是早期版本,功能完整但需要外部元件配合。CH340C是在G的基础上把晶振集成进去,减少了外围器件数量。CH340E则是进一步缩小封装,把引脚从16个压缩到10个,专门针对空间紧张的应用。
这个演进路线其实很典型:先做功能,再做集成,最后做小型化。理解了这条线,你就能明白为什么CH340E最贵但引脚最少,CH340G最便宜但最麻烦。
3. 封装差异:不只是引脚数量的问题
3.1 SOP-16与MSOP-10的物理尺寸对比
CH340G和CH340C都是SOP-16封装,也就是16个引脚的小外形封装。SOP-16的体宽一般是3.9mm左右,引脚间距1.27mm,这个间距对于手工焊接来说非常友好,普通烙铁就能搞定,不需要热风枪。
CH340E用的是MSOP-10封装,10个引脚,引脚间距只有0.5mm。这个间距意味着什么?意味着你基本告别手工焊接了,必须用热风枪或者回流焊。而且画PCB的时候,走线宽度和间距都要相应缩小,对PCB加工精度要求更高。
我实测过,用0.5mm间距的MSOP封装手工飞线,成功率大概只有一半,稍微多一点锡就连在一起。所以如果你是自己在家打样、手工焊接,CH340E要慎重考虑。
3.2 封装选择对PCB布局的实际影响
选封装不只是选一个 footprint 那么简单。CH340G因为要外挂晶振,晶振必须尽量靠近芯片放置,走线要短,否则容易起振不良。这就意味着CH340G周围需要预留一块相对完整的区域给晶振和两个负载电容。
CH340C虽然也是SOP-16,但省掉了晶振,周围只需要几个退耦电容,布局压力小很多。CH340E的MSOP-10封装本身占板面积就小,加上不需要晶振,整体占板面积可能只有CH340G方案的三分之一。
如果你在做一个小型化的USB转串口模块,比如塞进一个USB插头外壳里,那CH340E几乎是唯一选择。但如果你是在做一个开发板,板子空间充裕,CH340G或CH340C都行。
3.3 画封装时容易犯的低级错误
这里说一个很多人踩过的坑:SOP-16和MSOP-10的封装在EDA软件里名字很像,有些第三方库命名不规范,容易拿错。我自己就见过有人把MSOP-10的封装画成了SOP-16的尺寸,结果芯片焊上去引脚全部错位。
建议的做法是:不要偷懒直接用别人分享的库,至少对照数据手册里的封装尺寸图检查一遍。重点看三个参数——引脚间距、体宽、引脚焊盘长度。这三个对了,基本就不会出大问题。
提示:立创EDA和Altium Designer里都有官方或半官方的CH340系列封装库,但版本较老,建议以数据手册为准做二次核对。
4. 晶振与外围电路:省掉的不只是两个电容
4.1 CH340G为什么必须外挂晶振
CH340G内部没有振荡器电路,它需要一个外部12MHz晶振提供时钟基准。这个晶振不是随便选一个就行,负载电容要匹配,一般选22pF左右。晶振两端各接一个电容到地,然后接到CH340G的XI和XO引脚上。
为什么是12MHz?因为USB全速设备的时钟要求是12Mbps,芯片内部需要这个基准频率来生成USB通信所需的时钟。频率偏了,USB枚举就会失败,电脑根本认不到设备。
实际布线时,晶振要尽量靠近芯片,走线尽量短且等长,下方最好不要走其他信号线。我见过有人把晶振放在板子另一头,走线绕了半个板子,结果USB时好时坏,查了半天才发现是晶振走线太长导致起振不稳定。
4.2 CH340C和CH340E的内置振荡器有多稳
CH340C和CH340E内部集成了振荡器,不需要外挂晶振。官方数据手册给出的频率精度是满足USB全速通信要求的,实际使用中我也没有遇到过因为内置振荡器导致枚举失败的情况。
但要注意一点:内置振荡器虽然省事,但对电源质量更敏感。如果电源纹波太大,可能会影响内部振荡器的稳定性。所以退耦电容不能省,0.1uF的陶瓷电容要尽量靠近VCC引脚放置。
4.3 退耦电容到底该怎么放
不管是哪个型号,退耦电容的放置原则都一样:尽量靠近芯片的电源引脚,走线尽量短。CH340G和CH340C有一个V3引脚,这个引脚需要接一个0.1uF电容到地,作用是内部3.3V稳压器的退耦。这个电容如果放远了,USB通信可能会不稳定。
CH340E没有V3引脚,因为它的供电设计不同,但VCC引脚旁边依然需要0.1uF退耦电容。我一般还会在电源入口处再放一个10uF的钽电容或者电解电容,用来滤低频纹波。
注意:退耦电容的接地端要尽量短,最好直接打过孔到地平面。如果走一段长线再接地,退耦效果会大打折扣。
5. 供电电压:3.3V和5V系统的适配问题
5.1 CH340G的供电灵活性
CH340G支持5V供电,也支持3.3V供电,但两种情况下外围电路不一样。5V供电时,VCC接5V,V3引脚接0.1uF电容到地,芯片内部稳压器会生成3.3V给USB收发器用。3.3V供电时,VCC和V3要短接在一起接3.3V,同时USB信号线上的电平也是3.3V。
这里有个细节:如果你用5V给CH340G供电,但你的单片机是3.3V的,那串口信号线(TXD、RXD)的电平就是5V,直接接到3.3V单片机可能会损坏IO口。这时候要么加电平转换电路,要么把CH340G也改成3.3V供电。
5.2 CH340C的电压选择
CH340C同样支持5V和3.3V,用法和CH340G类似。V3引脚的处理方式一样。但因为CH340C内置了振荡器,整体外围电路更简单。
实际项目中,我一般推荐用5V供电,因为USB口本身就是5V,直接取电最方便。如果目标单片机是3.3V,那就在串口线上加两个电阻分压,或者用专用的电平转换芯片。分压电阻的选型也有讲究,阻值不能太大,否则影响通信速率。
5.3 CH340E的3.3V定位
CH340E主要面向3.3V系统,供电电压范围一般是3.3V左右。它的USB信号线电平也是3.3V,可以直接和3.3V单片机对接,不需要电平转换。这对于做3.3V系统的人来说非常省事。
但如果你非要用5V给CH340E供电,那就需要仔细看数据手册的极限参数了。我个人的建议是不要这么干,老老实实用3.3V,省心。
6. 实操选型:不同场景下到底该选哪个
6.1 场景一:学生党做第一个USB转串口模块
如果你是学生,在实验室手工焊接,板子空间不限,预算有限,那CH340G是最优选。SOP-16封装好焊,价格最低,外挂晶振虽然麻烦一点,但正好可以练手。而且晶振电路是经典电路,网上参考设计一大堆,照着抄就行。
唯一要注意的是晶振要买对,12MHz,负载电容20pF或22pF的都行。买的时候看清楚是无源晶振还是有源晶振,CH340G用的是无源晶振,别买错了。
6.2 场景二:产品开发中的通用选型
如果是做产品,板子空间够,但希望减少元器件数量和调试工作量,那CH340C是首选。它省掉了晶振,BOM表少三个元件,贴片成本降低,而且不用担心晶振起振问题。价格比CH340G贵一点点,但省下来的调试时间和元件成本完全值回来。
我现在的项目里,除非客户明确要求用CH340G,否则默认选CH340C。稳定、省事、不容易出错。
6.3 场景三:小型化模块或3.3V系统
如果你在做一个小型化的USB转串口模块,比如要塞进一个USB Type-A插头的外壳里,或者你的系统是纯3.3V的,那CH340E是唯一合理的选择。MSOP-10封装占板面积小,不需要晶振,3.3V供电直接匹配。
但前提是你得有热风枪或者能找工厂贴片。手工焊接MSOP-10的难度不小,新手不建议挑战。
6.4 选型决策流程图(文字版)
为了更直观,我把选型逻辑整理成一段文字流程:
第一步,看你的系统电压。如果是3.3V系统且空间紧张,直接选CH340E。如果是5V系统或者电压不固定,进入第二步。
第二步,看板子空间和焊接条件。如果空间充裕且手工焊接,选CH340G。如果空间一般或者不想外挂晶振,选CH340C。
第三步,看成本敏感度。如果成本极度敏感且能接受外挂晶振,CH340G最便宜。如果愿意多花几分钱省事,CH340C。
基本上这三步走完,答案就出来了。
7. 常见问题与排查技巧实录
7.1 电脑认不到设备怎么办
这是最常见的问题。排查顺序如下:
先检查供电。用万用表量VCC引脚电压,5V供电时应该在4.8V到5.2V之间。如果电压偏低,检查USB线是不是太细或者太长,换一根短粗的线试试。
再检查晶振。如果是CH340G,用示波器量XI和XO引脚,应该有12MHz的正弦波。如果没有波形,检查晶振有没有焊反、电容有没有漏焊、芯片有没有虚焊。
最后检查驱动。Windows 10和Windows 11一般能自动识别,如果识别不了,去官网下载最新驱动手动安装。设备管理器里如果出现“USB2.0-Serial”或者带感叹号的设备,基本就是驱动问题。
7.2 串口能识别但收发数据乱码
乱码通常是波特率不匹配。检查你的串口助手波特率和代码里设置的波特率是否一致。CH340系列支持的波特率范围很宽,从300bps到2Mbps都行,但两端必须一致。
如果波特率一致还是乱码,检查晶振频率。CH340G如果用了错误的晶振频率,比如用了16MHz而不是12MHz,波特率就会偏差很大,导致乱码。
还有一种可能是电平不匹配。5V的CH340接到3.3V单片机,如果没做电平转换,数据可能出错。用示波器看一下TXD和RXD的波形,高电平是不是超过了3.3V。
7.3 常见问题速查表
| 现象 | 可能原因 | 排查方法 |
|---|---|---|
| 电脑完全认不到 | 供电异常、晶振不起振、驱动未装 | 量电压、看波形、装驱动 |
| 认到但带感叹号 | 驱动问题 | 手动安装驱动 |
| 串口能打开但收发乱码 | 波特率不匹配、晶振频率错误 | 核对波特率、检查晶振 |
| 通信时好时坏 | 退耦电容放置不当、晶振走线太长 | 检查PCB布局 |
| 芯片发热严重 | 电源接反、V3引脚处理错误 | 断电检查电路 |
7.4 几个容易忽略的细节
CH340G的V3引脚如果悬空不接电容,芯片可能能工作,但USB通信会不稳定,表现为偶尔断连。这个坑我踩过,当时偷懒没焊那个0.1uF电容,结果调试了一下午才发现问题。
CH340E的MSOP-10封装在画PCB时,焊盘要适当加长一点,方便回流焊时锡膏爬升。如果焊盘太短,容易出现虚焊。
USB差分线(D+和D-)尽量走等长,虽然CH340对差分线的要求没有高速USB那么严格,但等长走线能提高信号完整性,减少通信错误。
8. 写在最后:一些个人经验和建议
选型这件事,说到底是在成本、空间、调试难度之间找平衡。CH340G、CH340C、CH340E三个型号没有绝对的好坏,只有适不适合你的场景。
我个人的习惯是:手头常备CH340C,因为它是通用性最强的,SOP-16好焊,不需要晶振,5V和3.3V都能用。遇到空间特别紧张的项目才上CH340E,遇到成本压到极致的项目才用CH340G。
另外提醒一句,买芯片的时候注意渠道。CH340系列因为用量大,市面上有一些翻新片或者打磨片,价格异常便宜的要多留个心眼。正规渠道买,贵不了几毛钱,但省心很多。
最后分享一个小技巧:如果你不确定选哪个,可以先在立创EDA或者KiCad里把三个型号的封装都画出来,对比一下占板面积和引脚布局,直观感受一下差异。画一遍之后,你对这三个型号的理解会比看十遍数据手册都深。