第1章 接口选型概述:常见接口类型与选择考量

做硬件设计这几年,我越来越觉得——接口选型是整块板子的灵魂。选对了,后面布线、调试、认证一路顺畅;选错了,改板三次都不一定能救回来。这一章我们先搭个框架,把常见的接口类型和选型时要权衡的维度理清楚。后面每一章再针对具体接口深挖。

1.1 你迟早都会遇到的接口类型

接口的分类方式很多。我个人习惯先按传输介质分成两大类:有线和无线。然后再按速率、距离、功耗细看。

有线接口

这类接口占了PCB上大部分走线。从最基础的UART到高速的PCIe,跨度很大。

  • UART —— 异步串行,点对点,全双工。速率通常在115200 bps ~ 1 Mbps。2根线(TX、RX)。我入门时第一个调通的接口就是它。
  • I2C —— 同步串行,多主多从,半双工。2根线(SDA、SCL)。速率100 kHz ~ 3.4 MHz。适合板内低速控制。
  • SPI —— 同步串行,一主多从,全双工。4根线(SCK、MOSI、MISO、SS)。速率1 ~ 50 MHz。适合传感器、显示、存储。
  • USB 2.0 / 3.0 —— 差分串行,主从架构。USB 2.0 半双工 480 Mbps,USB 3.0 全双工 5 Gbps。外设连接的主力。
  • Ethernet(RMII / RGMII) —— 差分串行,网络架构,全双工。10 / 100 / 1000 Mbps。适合联网设备。
  • PCIe —— 差分串行,点对点,全双工。每通道 2.5 / 5 / 8 GT/s。适合高速数据卡、SSD。
  • MIPI DSI / CSI —— 差分串行,点对点,用于显示和摄像头。每通道可达 1.5 Gbps。
  • HDMI / DP —— 差分串行,TMDS 编码。适合音视频传输。
  • LVDS —— 差分串行,低功耗高速。适合短距离高带宽。
  • CAN —— 差分串行,多主架构,半双工。125 kbps ~ 1 Mbps。汽车和工业的常客。
  • RS-485 / RS-232 —— RS-485 差分,多站,1200 m;RS-232 单端,点对点,15 m。工业现场的老将。

无线接口

无线接口的选型更考验系统级思维。天线、功耗、协议栈、认证,全是坑。

  • WiFi(802.11 b/g/n/ac/ax) —— 2.4 / 5 / 6 GHz,速率可达 Gbps。适合高带宽联网。
  • Bluetooth / BLE —— 2.4 GHz,短距离,低功耗。BLE 是 IoT 的主力。
  • Zigbee / Thread / Matter —— 2.4 GHz,低功耗,网状网络。智能家居的基石。
  • LoRa —— Sub-1 GHz,长距离(km 级),低速率。适合远传传感器。
  • NB-IoT / LTE Cat-M —— 蜂窝网络,广覆盖,低速率。适合大规模物联网。
  • NFC / RFID —— 13.56 MHz / 多种频段,近场通信。适合支付、标签。
  • UWB —— 3.1 ~ 10.6 GHz,高精度定位。适合室内定位。
一个小建议:别只看接口的“理论速率”。实际有效吞吐量往往只有标称值的 60% ~ 80%。协议开销、驱动延迟、总线冲突都会吃掉带宽。选型时留出至少 30% 的余量。

1.2 选型时我在想什么——七个核心维度

这些年我总结了一套“七维选型法”。每次评估接口,我都会过一遍这七个维度。不一定每个都深究,但心里要有数。

维度 核心问题 典型约束
速率与带宽 实际吞吐量够不够? 协议开销、总线共享、余量 ≥ 30%
距离与信号完整性 能传多远?PCB走线多长? 差分对、阻抗匹配、预加重、均衡
功耗预算 待机和活跃功耗多少? 电池容量、散热、电压轨
引脚数与PCB面积 占多少IO?布得下吗? BGA扇出、层数、过孔密度
协议复杂度与软件成本 驱动好不好写?协议栈成熟吗? 认证周期、开发人力、维护成本
供应链与成本 交期稳不稳?有没有第二货源? 独家料、长交期、替代方案
EMC与可靠性 辐射能过认证吗?抗干扰够吗? 共模扼流圈、屏蔽、布局隔离

举个例子。我遇到过一位工程师选USB 2.0做工业相机接口。速率算下来刚好够,但没考虑线缆长度和EMC。结果量产时发现3米以上线缆丢包严重,辐射超标。最后不得不加共模扼流圈和重新布线,折腾了两周。如果当初选USB 3.0或GigE,余量大一些,反而更省事。

核心原则:接口选型不是“能不能用”,而是“好不好用”。七个维度里,往往有两三个是决定性的。把它们找出来,重点评估。

1.3 那些年我踩过的坑——选型实战复盘

讲几个我自己经历过的教训。嗯,每一个都让我多加了几天班。希望你能绕过去。

坑一:I2C上拉电阻选小了

我曾经在一个传感器板上用了I2C,速率400 kHz。为了省功耗,我用了2 kΩ上拉。结果总线电容一大会,上升沿变缓,通信偶尔出错。折腾了三天才抓到波形。后来换成1 kΩ,问题消失。I2C的上拉电阻要根据总线电容和速率算,别凭感觉。

坑二:SPI的时钟极性没对齐

我曾经接手过一个项目,SPI通信时好时坏。查了两天发现主设备和从设备的CPOL、CPHA配置反了。硬件连得没问题,软件里配错一个bit。这让我养成了一个习惯:SPI调通之前,先拿示波器看SCK和MOSI的相位关系。眼睛看到的东西比代码靠谱。

坑三:USB Type-C的CC pin处理不当

我曾经做一个Type-C供电的项目,以为CC pin直接上拉就完事了。结果接上某些充电器直接无输出。后来仔细读了一遍USB PD规范才发现,CC pin的Rp和Rd电阻值、位置都有严格要求。Type-C看着简单,实际上坑特别多。后面会专门用一章来讲。

注意:接口选型中的“小细节”,往往是量产后的“大问题”。建议在原理图评审阶段就把这些细节列成checklist,逐条打勾。

1.4 接口选型决策框架

下面这张图是我自己总结的接口选型决策框架。从项目需求出发,先定介质方向,再缩小到具体接口候选,最后结合PCB复杂度做终选。每次选型我都会走一遍这个流程。

接口选型决策框架 接口选型决策框架 项目需求分析 传输介质选择 有线接口候选 无线接口候选 PCB复杂度评估 最终选型确认 综合评估速率、距离、功耗、成本、供应链

这个框架看起来简单,实际用的时候每个节点都需要展开评估。比如“有线接口候选”这一步,你需要把UART、I2C、SPI、USB、Ethernet等接口逐一代入需求,看哪个更匹配。后面各章我会针对每一个接口做详细的案例拆解。

一句话总结:接口选型不是单纯的“技术对比”,而是“需求 + 成本 + 风险”的平衡。没有最好的接口,只有最合适的。