把逻辑分析仪与示波器选型落到通信协议状态机的触发条件、可观察状态和复查材料上,先判断问题从哪里收窄。
逻辑分析仪与示波器选型常见问题来自默认值、路径、版本或权限未形成同一条判断链。
本节用通信协议状态机对应的命令输出或状态变化确认配置是否真正生效。
在嵌入式设备通信协议逆向分析中,逻辑分析仪与示波器是捕获物理层信号的核心工具。选型不当或触发条件配置错误,往往导致关键帧丢失或解码结果混乱。本节围绕采样率、触发逻辑与协议解码配置三个关键维度,结合 Saleae 与 PulseView 两款主流工具,梳理从参数设定到多协议并行解码的完整流程
逆向分析开始前,先确认目标信号的最大频率与最小脉冲宽度。对于 1 MHz 的 SPI 时钟,逻辑分析仪采样率至少设为 4 MS/s(4 倍过采样),推荐 8 MS/s 以上;示波器带宽应不低于 5 MHz
逆向分析的第一步是捕获完整的通信帧。如果采样率不足,窄脉冲会被漏采,导致帧头或 CRC 校验字段错误;触发条件设置不当,则可能错过启动序列或异常重试包。以 I²C 总线为例,起始条件(SCL 高电平时 SDA 下降沿)是常见的触发源,但若逻辑分析仪未配置边沿触发或触发电压阈值偏差超过 0.3 V,捕获的数据可能不完整
本节的核心目标是:掌握如何根据信号特征选择采样率,配置边沿/脉冲/协议触发,并利用 Saleae 和 PulseView 的协议解码器并行解析多路信号。最终能够复现“捕获-解码-验证”的闭环,确保每次抓取都能直接用于协议状态机分析
逻辑分析仪的采样率决定了时间分辨率,存储深度决定了连续捕获时长。对于 UART(115200 bps),2 MS/s 采样率已足够;但对于高速 SPI(20 MHz),需要 100 MS/s 以上。Saleae Logic Pro 8 支持 500 MS/s,而 PulseView(搭配 FX2 逻辑分析仪)通常为 24 MS/s。选型时需根据目标协议的最高频率,按“采样率 ≥ 4 × 信号频率”估算
| 时间/步骤 | 输入 | 动作 | 输出 |
|---|---|---|---|
| UART (115200 bps) | 115.2 kHz | 1 MS/s | 2 MS/s |
| I²C (400 kHz) | 400 kHz | 2 MS/s | 4 MS/s |
| SPI (20 MHz) | 20 MHz | 80 MS/s | 100 MS/s |
| 1-Wire (15.4 kbps) | 15.4 kHz | 200 kS/s | 1 MS/s |
触发条件决定了捕获窗口的起始点。Saleae 支持边沿、脉冲宽度、协议帧起始等多种触发模式。在逆向分析中,推荐优先使用“协议触发”(如 I²C Start、SPI CS 下降沿),因为它能直接定位到通信帧边界。若协议未知,则使用“脉冲宽度触发”捕获异常窄脉冲,这通常是重试或错误标志
PulseView 的触发配置更灵活,支持“上升沿+下降沿”组合,且允许设置触发后延迟捕获(post-trigger delay),用于观察帧后的总线空闲状态。例如,分析 Modbus RTU 时,可配置“3.5 字符时间空闲后第一个下降沿”作为触发条件,精准捕获请求帧
某工业传感器使用自定义协议,帧头为 0xAA 0x55,CRC 校验采用 CRC-16-Modbus。初次捕获时,逻辑分析仪采样率设为 2 MS/s,触发条件为“任意边沿”,结果帧头被截断。调整采样率至 8 MS/s,并配置“协议触发”为“帧头匹配 0xAA 0x55”,成功捕获完整帧,CRC 校验通过
复盘逻辑分析仪与示波器选型时,可以把嵌入式设备通信协议逆向分析放在机制链路的起点,再用逻辑分析仪与示波器选型说明约束如何改变结论。如果逻辑分析仪与示波器选型与预期不一致,先比较观测条件和采样率是否同步变化,再判断当前解释是成立、变弱还是需要改写。逻辑分析仪最好留下“前提、观测、边界”三类线索,方便读者换到新协议或新模型时重新判断,而不是沿用同一句结论。本节最值得带走的不是固定句式,而是围绕知识结构建立复查路径:看见逻辑分析仪与示波器选型,找到逻辑分析仪,再校验概念联动的适用边界。第02节只保留一条主线:从逻辑分析仪与示波器选型进入,观察知识结构,最后把逻辑分析仪交给下一次复查。