4. LTE模组选型与硬件接口

好,咱们进入第四章。这一章聊的是LTE模组的选型和硬件接口。说白了,就是你要跟模组“对话”,得知道选哪个模组、怎么接线、怎么供电、怎么把天线焊上去。

我在项目里见过不少新手,软件调通了,结果硬件上电就烧模组。嗯,这章就是帮你避开这些坑。

4.1 主流LTE模组选型:BG96 vs SIM7000

目前市面上用得最多的两款,就是移远的Quectel BG96和芯讯通的SIM7000。我两个都用过,各有各的脾气。

对比项 Quectel BG96 SIMCom SIM7000
网络制式 LTE Cat M1 / NB-IoT / EGPRS LTE Cat M1 / NB-IoT / GPRS
定位 内置GNSS(GPS/北斗) 无内置定位,需外挂
封装 LGA 94pin LCC 68pin
功耗 PSM下约9μA PSM下约15μA
AT指令兼容性 3GPP标准 + 扩展指令 3GPP标准 + 私有指令
开发资料 非常丰富,社区活跃 相对较少,中文文档多

我个人习惯:如果项目需要定位功能,直接选BG96,省一个GPS模块的钱和空间。如果只是纯数据传输,SIM7000性价比更高。

小提示:选型时别忘了看模组的工作温度范围。工业级项目必须选-40℃~85℃的版本,消费级可以放宽。我吃过亏,有一次在北方冬天做测试,模组死活不启动,一看规格书,工作温度下限是-20℃……

4.2 AT指令集基础

AT指令,就是你和模组之间的“暗号”。你发一条,它回一条。就这么简单。

基本格式:AT+<命令>=<参数>

举个例子,查询模组型号:

AT+CGMM

模组会回复:

+CGMM: "BG96"
OK

常用的AT指令分类:

  • 基础控制:AT(测试通信)、AT+CFUN(设置功能模式)
  • 网络服务:AT+CGATT(附着网络)、AT+CSQ(查询信号强度)
  • TCP/IP:AT+QIOPEN(建立socket连接)、AT+QISEND(发送数据)
  • 定位(BG96特有):AT+QGPS(开启GNSS)、AT+QGPSLOC(获取位置)

注意:AT指令的结尾必须是回车换行(\r\n)。很多新手用串口调试助手,只发了“AT”没加回车,模组没反应,就以为模组坏了。其实它只是在等你把话说完。

我曾经在调试一个NB-IoT项目时,发现模组总是返回“ERROR”。查了半天,原来是AT指令里多了一个空格。你想想看,模组是很死板的,多一个空格它就不认。

4.3 UART与USB接口通信

模组和主控芯片通信,最常用的就是UART和USB。

4.3.1 UART接口

UART是标配。一般模组会提供两路UART:

  • 主UART:用于AT指令交互和数据传输
  • 调试UART:用于输出模组内部日志

接线很简单:主控的TX接模组的RX,主控的RX接模组的TX,GND共地。

波特率我一般设115200,稳定且够用。有些模组默认是9600,记得先改过来。

// 初始化UART的伪代码
uart_config_t uart_config = {
    .baud_rate = 115200,
    .data_bits = UART_DATA_8_BITS,
    .parity = UART_PARITY_DISABLE,
    .stop_bits = UART_STOP_BITS_1,
    .flow_ctrl = UART_HW_FLOWCTRL_DISABLE
};
uart_param_config(UART_NUM_1, &uart_config);
uart_set_pin(UART_NUM_1, TX_PIN, RX_PIN, RTS_PIN, CTS_PIN);
uart_driver_install(UART_NUM_1, BUF_SIZE, 0, 0, NULL, 0);

关键点:如果通信距离超过10cm,或者环境有强干扰,建议加上硬件流控(RTS/CTS)。我有个项目,UART线走了30cm,不加流控时偶尔丢包,加上后就稳了。

4.3.2 USB接口

USB接口主要用于固件升级和高速数据传输。BG96和SIM7000都支持USB 2.0。

USB接线更简单:D+、D-、VBUS、GND。但要注意,模组的USB VBUS一般需要5V供电,不能直接从主控的3.3V取电。

我记得有一次,客户说模组连不上电脑。我远程一看,他把USB的D+和D-接反了。嗯,这种低级错误,检查一下就能避免。

4.4 模组供电与天线设计

这两块是硬件设计的重中之重。供电不稳,模组会重启;天线没调好,信号差到怀疑人生。

4.4.1 供电设计

LTE模组在发射时,电流会瞬间飙升。BG96的峰值电流能达到2A。所以供电电路必须能扛住这个瞬态。

我的设计原则:

  • 电源芯片:选输出电流3A以上的DC-DC或LDO
  • 滤波电容:在模组电源引脚附近放一个100μF电解电容 + 一个0.1μF陶瓷电容
  • 走线宽度:电源走线至少2mm宽,减少压降

供电电路参考:

VBAT (3.8V~4.2V)
    │
    ├─[100μF]─── GND
    │
    ├─[0.1μF]─── GND
    │
    └─────── 模组VBAT引脚

警告:绝对不要用3.3V直接给模组供电!LTE模组的工作电压一般是3.4V~4.2V,3.3V太低,模组会无法注册网络。我曾经见过一个项目,工程师用3.3V LDO供电,模组能开机但死活连不上网,查了两天才发现是电压不够。

4.4.2 天线设计

天线是模组的“嘴巴”和“耳朵”。天线没设计好,信号强度直接掉20dBm。

几个要点:

  • 阻抗匹配:天线走线必须做50Ω阻抗控制
  • 天线类型:常用的是PCB板载天线、陶瓷贴片天线、外置鞭状天线
  • 净空区:天线周围不要铺铜,留出至少5mm的净空区

我一般会在天线和模组之间加一个π型匹配电路(两个电容一个电感),方便调试时调整阻抗。

模组ANT引脚 ──┬── 电容C1 ──┬── 天线
              │            │
              └── 电感L1 ──┘
              │
              └── 电容C2 ── GND

调试时用网络分析仪看S11参数,调到-10dB以下就算合格。

经验之谈:如果项目空间允许,尽量用外置天线。板载天线虽然便宜,但受外壳和周围元器件影响很大。我有个产品,板载天线在实验室测试没问题,装进金属外壳后信号直接没了。后来换成外置天线,问题解决。

4.5 本章知识体系

下面这张图,帮你把本章的核心逻辑串起来:

LTE模组选型与硬件接口知识体系 LTE模组 模组选型 AT指令集 通信接口 供电与天线 BG96 SIM7000 基础指令 网络指令 UART USB 供电设计 天线设计 选型决定上限,硬件设计决定下限 供电不稳、天线不匹配,再好的模组也白搭

嗯,这一章的内容就这些。从选型到AT指令,从UART/USB接口到供电天线,每一步都关系到项目成败。你把这些吃透了,后面联调LTE和BLE的时候,心里就有底了。