模组选型与硬件接口:别让选型毁了你的项目
做 LTE 模组联调,第一步不是焊板子,也不是写 AT 指令。第一步是——选对模组。
我见过太多项目,硬件都画好了,结果发现模组停产了,或者功耗压不住,或者天线根本放不下。嗯,选型这一步走偏,后面全是坑。
主流 LTE 模组厂商对比
目前市面上主流的 LTE 模组厂商,掰着手指头数也就那么几家。我按自己的使用经验,给你排个序。
| 厂商 | 代表系列 | 核心优势 | 我踩过的坑 |
|---|---|---|---|
| 移远 Quectel | EC20 / EC25 / BG96 | 生态最全,文档规范,AT 指令兼容性好 | EC20 的 USB 驱动在 Linux 内核 4.4 以下有 bug,折腾了两天 |
| 广和通 Fibocom | L610 / L716 | 国内运营商入库做得好,性价比高 | L610 的 PCM 接口时序和主流 codec 对不上,得改配置 |
| 中兴物联 ZTE | ME3630 / MF210 | 工业级稳定性,宽温范围 | ME3630 的 GPIO 电平是 1.8V,直接连 3.3V 的 MCU 会烧 |
| SIMCom | SIM7600 / SIM7000 | 全球频段覆盖广,认证齐全 | SIM7600 的 UART 流控默认关闭,丢包查了一周 |
选型三要素:
- 频段匹配——你的目标运营商用 Band 1/3/8 还是 Band 5/12/13?别买回来发现没信号。
- 封装兼容——LCC 封装还是 LGA?引脚间距 1.1mm 还是 0.8mm?PCB 能不能走线?
- 供货周期——我去年吃过亏,某款模组交期 16 周,项目直接延期。
模组硬件接口详解
模组选好了,接下来就是硬件接口。说白了,就是模组和你的 MCU 怎么「说话」。我按重要程度一个一个讲。
USB 接口
USB 是 LTE 模组最常用的数据通道。为什么?因为速度快。USB 2.0 理论 480Mbps,实际跑个 50-80Mbps 没问题,够 4G 用了。
我个人习惯用 USB 做 AT 指令通道 + 数据透传。模组上电后,枚举出来通常是三个虚拟串口:AT 口、Modem 口、Debug 口。
// Linux 下查看模组 USB 枚举
$ lsusb
Bus 001 Device 003: ID 2c7c 0125 // Quectel EC25
$ dmesg | grep tty
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0 // AT
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1 // Modem
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB2 // Debug
注意:USB 走线必须做差分对,阻抗 90Ω ±10%。我见过有人把 D+ 和 D- 拉成一样长,结果高速模式下疯狂丢包。还有,USB 的 VBUS 不要直接从模组取电,容易把模组的 LDO 烧掉。
UART 接口
UART 是「保底」接口。USB 挂了、驱动没装、或者你只是简单发几条 AT 指令,UART 永远可靠。
但 UART 有坑。模组的 UART 电平通常是 1.8V,而你的 MCU 可能是 3.3V 或 5V。直接连?烧。
我的做法:加电平转换芯片,比如 TXS0102 或 74LVC2T45。别用电阻分压,波特率高了波形会畸变。我曾经在 921600 波特率下用分压,结果误码率 30%。
UART 的流控(RTS/CTS)要不要接?我的建议是:如果数据量不大,可以不接。但如果做 OTA 升级或大文件传输,必须接。不接的话,模组发数据太快,MCU 收不过来,直接丢包。
PCM / I2S 接口
PCM 接口是给语音用的。如果你做的是 VoLTE 电话、对讲机、或者语音识别,这个接口必须用。
PCM 有四种模式:短帧同步、长帧同步、主模式、从模式。模组通常默认是短帧同步 + 主模式。但你的音频 codec 可能不是。
我记得有一次调试广和通 L610 的 PCM,codec 死活没声音。查了三天,发现是 PCM 时钟极性反了。模组在时钟上升沿采样,codec 在下降沿采样。加一个反相器搞定。
// PCM 接口典型配置(伪代码)
pcm_config.mode = PCM_MODE_MASTER; // 模组做主
pcm_config.sync = PCM_SYNC_SHORT; // 短帧同步
pcm_config.frame_size = 256; // 8kHz * 32bit
pcm_config.slot = 2; // 双声道
pcm_config.data_polarity = PCM_DATA_RISING; // 上升沿采样
GPIO 接口
模组的 GPIO 不多,通常 4-8 个,但很金贵。我一般这样分配:
- PWRKEY——开机引脚,必须接。拉低 1-2 秒开机。
- RESET——硬件复位,死机时救命用的。
- STATUS——网络状态指示,可以接 LED 或 MCU 中断。
- DTR——休眠唤醒,低功耗场景必备。
GPIO 电平陷阱:模组 GPIO 大多是 1.8V,少数是 2.8V。千万别直接接 3.3V 的 MCU。我见过有人把 SIM7600 的 GPIO 接 3.3V,结果模组直接冒烟。电平转换,别省。
天线选型与布局
天线是 LTE 模组最容易出问题的地方。信号不好,90% 是天线的锅。
天线类型怎么选?
| 天线类型 | 适用场景 | 增益 | 我的建议 |
|---|---|---|---|
| PCB 板载天线 | 小体积产品,成本敏感 | 0-2 dBi | 只适合信号好的环境,效率低 |
| 陶瓷贴片天线 | 智能家居、穿戴设备 | 1-3 dBi | 带宽窄,对地平面敏感 |
| FPC 软板天线 | 工业设备、车载 | 2-4 dBi | 性价比高,我项目里用得最多 |
| 外置棒状天线 | 基站、CPE、户外设备 | 3-6 dBi | 信号最好,但体积大 |
天线布局的黄金法则
天线布局这件事,说白了就是「远离干扰、留足空间」。我总结了几条硬规矩:
- 净空区——天线周围至少 5mm 不要铺铜,10mm 更安全。我见过有人把天线放在金属外壳里,信号直接 -20dBm。
- 远离高频噪声源——天线别挨着 DC-DC、晶振、USB 线。这些都会耦合噪声,拉低灵敏度。
- 阻抗匹配——天线馈线走 50Ω 微带线。线宽根据板厚和介电常数算,别凭感觉画。
- 接地——天线底部的接地焊盘必须充分接地,打一排过孔到地平面。
我的调试习惯:板子回来后,先用网络分析仪看天线的 S11 参数。S11 小于 -10dB 才算合格。如果不行,调 π 型匹配网络。别指望软件能补偿硬件缺陷。
本章知识体系
下面这张图,把模组选型到天线布局的整个链路串起来了。你照着这个流程走,基本不会漏。