2. 硬件选型:USB转串口芯片对比与抗干扰设计

做串口烧录,硬件选型是第一步,也是很多人容易忽略的一步。我见过不少工程师,代码写得漂亮,结果卡在硬件不稳定上,折腾好几天。说白了,选对芯片、做好电平匹配、搞定抗干扰,你的烧录成功率就已经赢了一半。

2.1 主流USB转串口芯片对比

市面上常见的USB转串口芯片就那么几款:CH340、CP2102、FT232。我这些年项目里基本都用过,各有各的脾气。

芯片型号 厂商 最高波特率 典型价格 驱动兼容性 稳定性评价
CH340 南京沁恒 2Mbps 2-5元 Windows/Linux/macOS 中等,批量烧录偶有丢包
CP2102 Silicon Labs 1Mbps 8-15元 Windows/Linux/macOS 良好,长时间烧录稳定
FT232 FTDI 3Mbps 20-40元 Windows/Linux/macOS 优秀,工业级首选

CH340:性价比高,国内用得最多。我早期做消费类产品时常用它,2Mbps的波特率对大部分MCU烧录够用了。但要注意,CH340的驱动在macOS上偶尔会出问题,尤其是新系统升级后。另外,它的内部时钟精度一般,长时间高波特率传输时,偶尔会丢一两个字节。

CP2102:Silicon Labs的老牌芯片。我个人比较喜欢它,驱动稳定,Windows下即插即用。最高1Mbps,虽然比CH340低,但实际传输质量更好。我在一个量产项目中用过CP2102,连续烧录8小时没出过一次错。

FT232:价格最贵,但也是我最放心的。FTDI的驱动生态非常成熟,而且芯片内置了EEPROM,可以自定义VID/PID和描述符。最高3Mbps,适合需要高速烧录的场景。我有个军工项目,客户指定必须用FT232,因为它的抗干扰能力和长期供货稳定性确实没得说。

我的建议:

  • 个人开发、小批量:CH340够用,便宜又好买
  • 量产项目、中等规模:CP2102,稳定性和价格平衡
  • 工业级、高可靠性:FT232,别省那几十块钱

2.2 电平匹配——烧录失败的隐形杀手

电平匹配这个问题,我踩过坑。有一次调试一块3.3V的STM32,用了个5V的USB转串口模块,结果死活连不上。查了半天,原来是TX引脚电平不匹配,直接把MCU的IO口烧了。

现在的MCU工作电压五花八门:1.8V、2.5V、3.3V、5V都有。而USB转串口芯片的输出电平通常是固定的:

  • CH340G:5V逻辑电平(CH340C有3.3V版本)
  • CP2102:3.3V逻辑电平
  • FT232:可通过VCCIO引脚配置,支持1.8V-5V

怎么匹配?我一般用这几种方法:

  1. 直接匹配:选电平一致的芯片。比如3.3V系统用CP2102,省事。
  2. 电阻分压:5V转3.3V时,TX串一个2.2kΩ电阻,RX串一个3.3kΩ电阻到地。简单但信号质量一般。
  3. 电平转换芯片:比如TXS0102、74LVC245。我量产项目里都用这个,可靠。
  4. MOS管电路:两个N沟道MOS管加两个电阻,成本低,适合小批量。

小技巧:如果你用CH340驱动3.3V的MCU,可以在CH340的TX引脚上串一个1kΩ电阻限流,RX引脚上拉一个10kΩ电阻到3.3V。这样虽然不完美,但大多数情况下能正常工作。

2.3 抗干扰设计——别让噪声毁了你的烧录

串口烧录最怕什么?干扰。尤其是工业现场,电机、变频器一开,烧录就失败。我有个朋友在工厂做产线,用的CH340模块,烧录成功率只有70%。后来我帮他改了电路,成功率提到了99%以上。

抗干扰设计,核心就三点:

2.3.1 隔离

最彻底的办法是加隔离。我常用的方案是ADuM1201或ISO7221数字隔离芯片,把USB侧和目标板侧完全隔开。隔离后,地环路干扰就没了。成本大概增加5-10元,但换来的是稳定。

2.3.2 滤波

串口线上串一个小磁珠,或者加一个10pF-100pF的电容到地。电容不能太大,否则会拉低信号边沿,影响波特率。我一般用22pF,效果不错。

2.3.3 布线

PCB布线时,串口线尽量短,远离时钟线、电源线。如果必须走长线,用双绞线或者屏蔽线。我有个项目,串口线走了30cm,结果波特率一上115200就出错。后来换成屏蔽线,问题解决。

注意:千万不要把串口线和AC220V电源线绑在一起走。我见过有人这么干,结果烧录器直接冒烟了。

2.4 知识体系总览

下面这张图,是我自己总结的硬件选型决策流程。你照着走,基本不会出错。

USB转串口芯片选型与抗干扰设计决策流程 USB转串口芯片选型与抗干扰设计决策流程 确定目标MCU电压 电压是否匹配? 是 直接选用匹配芯片 否 添加电平转换电路 抗干扰设计:隔离+滤波+布线 烧录验证通过 电平不匹配时 优先用MOS管电路 成本低且可靠 工业环境建议 加数字隔离芯片 彻底切断地环路

2.5 实战避坑指南

最后,分享几个我亲身踩过的坑:

  • 我曾经用CH340做批量烧录,结果发现烧录10片有2片校验失败。排查后发现是USB线太长,信号衰减。换成50cm以内的线,问题解决。
  • 我曾经在CP2102的TX和RX上忘了加ESD保护,结果产线上静电打坏了好几片。后来加了TVS管,再没出过问题。
  • 我曾经用FT232做高速烧录,波特率设到3Mbps,结果发现目标板上的晶振精度不够,导致同步失败。最后把目标板的晶振从±50ppm换成了±10ppm,搞定。

嗯,硬件选型这块,说白了就是多花点心思在前期。选对了芯片,做好了电平匹配和抗干扰,后面烧录的时候你就只管喝茶看进度条就行了。