触发系统精讲:边沿触发、脉宽触发、逻辑触发、串行总线触发(I2C/SPI/UART)、触发释抑与触发耦合

触发系统,说白了就是示波器的「快门」。没有它,你看到的只是一堆乱跑的波形。我刚开始用示波器那会儿,总觉得触发可有可无,直到有一次抓一个毛刺,折腾了一下午……嗯,从那以后我再也不敢小看触发设置了。

这一节,咱们把触发系统彻底讲透。从最基础的边沿触发,到复杂的串行总线触发,再到两个容易被忽略的「幕后功臣」——触发释抑和触发耦合。你想想看,搞懂了这些,抓复杂波形就像用单反拍运动物体一样,指哪打哪。

2.1 边沿触发:最基础也最常用

边沿触发是示波器的默认触发模式。它检测信号从低到高(上升沿)或从高到低(下降沿)的变化,并在电平跨过你设定的阈值时触发。

核心参数:

  • 触发源:CH1、CH2、EXT(外部触发)等
  • 触发沿:上升沿、下降沿、双沿
  • 触发电平:信号跨过此电平时触发

我个人习惯,调试数字电路时先用上升沿触发看时钟信号,确认频率和占空比没问题,再切到数据线上看。这里有个坑——触发电平设得太高或太低,示波器可能根本不触发。我建议先设到信号幅度的50%左右,再微调。

场景 推荐触发沿 触发电平建议
时钟信号测量 上升沿 信号幅度的50%
数据总线分析 上升沿或下降沿 信号幅度的50%
毛刺捕获 双沿 略高于噪声底
电源纹波测量 上升沿 直流分量+纹波幅度的50%

小技巧:如果信号有噪声,触发电平附近容易误触发。可以打开「高频抑制」或「噪声抑制」滤波,让触发更稳定。

2.2 脉宽触发:捕获异常脉冲的利器

边沿触发只能看「有没有跳变」,但脉宽触发能看「跳变持续了多久」。它让你设定一个时间窗口,只触发那些脉宽符合条件(大于、小于、等于、在范围内)的脉冲。

我在项目中遇到过一个问题:一个数字信号偶尔出现一个极窄的毛刺,用边沿触发根本抓不住,因为毛刺的幅度和正常信号一样。后来换成脉宽触发,设定「脉宽小于100ns时触发」,毛刺立刻现形。

注意:脉宽触发对示波器的采样率和存储深度有要求。要捕获窄脉冲,采样率必须足够高(至少是脉冲宽度的5倍以上),否则可能漏掉。

脉宽触发的典型应用场景:

  • 捕获偶发的窄毛刺(设定「小于」某个时间)
  • 检测信号占空比异常(设定「大于」或「在范围内」)
  • 验证PWM信号的脉宽精度

2.3 逻辑触发:多通道的「与或非」

当你需要同时看多个信号的关系时,边沿触发就不够用了。逻辑触发允许你定义多个通道的组合条件——比如「CH1为高且CH2为低时触发」,或者「CH1上升沿且CH2为高时触发」。

逻辑触发有两种常见模式:

  • 状态触发:在某个时刻,各通道的电平组合满足预设条件时触发
  • 边沿+状态混合触发:在某个通道出现指定边沿的同时,其他通道满足电平条件

我记得有一次调试SPI总线,CS(片选)信号拉低后,SCK(时钟)应该立即开始。但偶尔CS拉低后SCK会延迟几个微秒。用逻辑触发设定「CH1(CS)下降沿且CH2(SCK)为低时触发」,一下就抓到了那个延迟的瞬间。

逻辑触发设置步骤:

  1. 选择触发类型为「逻辑」或「模式」
  2. 为每个通道设定期望的电平(H、L、X=忽略)
  3. 选择触发条件:进入模式、退出模式、持续时间等
  4. 调整触发电平(每个通道独立设置)

2.4 串行总线触发:I2C/SPI/UART

现代嵌入式系统里,串行总线无处不在。手动数波形来解码?太慢了。示波器的串行总线触发功能,能直接识别总线协议,让你在特定数据包、地址或数据上触发。

I2C 触发

I2C 总线有两条线:SCL(时钟)和 SDA(数据)。触发条件可以设为:

  • 起始条件(SCL高时SDA下降沿)
  • 停止条件(SCL高时SDA上升沿)
  • 特定从机地址(7位或10位)
  • 特定数据字节
  • ACK/NACK 条件

我个人习惯,调试I2C时先用「起始条件」触发,看看整个通信过程是否正常。如果怀疑某个从机没响应,就设成「NACK触发」,一抓一个准。

SPI 触发

SPI 有四个信号:SCLK、MOSI、MISO、CS(片选)。触发条件包括:

  • CS 边沿触发(片选有效时开始捕获)
  • 特定数据模式(在 MOSI 或 MISO 上匹配特定字节)
  • 帧超时触发(CS无效后等待指定时间)

避坑指南:SPI 的时钟极性和相位(CPOL/CPHA)设置不对,解码会全错。我曾经在这上面浪费了半天——波形看着对,但解码出来的数据全是乱的。后来才意识到是示波器的 SPI 解码参数没配好。

UART 触发

UART 只有一根数据线(TX 或 RX),靠起始位(低电平)和停止位(高电平)来同步。触发条件包括:

  • 起始位触发
  • 特定数据字节(如 0x55、0xAA)
  • 奇偶校验错误触发
  • 帧错误触发(停止位丢失)

UART 的波特率设置必须和被测设备一致,否则触发和解码都会出错。我建议先用边沿触发看一个字节的宽度,手动算一下波特率,再设到示波器里。

2.5 触发释抑:别让示波器「太兴奋」

触发释抑(Holdoff)是个容易被忽略但极其重要的参数。它告诉示波器:触发一次后,在指定时间内不要再触发。

为什么要这么做?考虑一个场景:你抓一串脉冲串,脉冲串内部有很多个脉冲,但你只想看整个脉冲串的起始位置。如果不设释抑,示波器可能会在脉冲串内部的每个脉冲上都触发,画面乱成一团。

释抑时间设置原则:

  • 对于周期性脉冲串:释抑时间 ≈ 脉冲串周期 - 脉冲串宽度
  • 对于不规则信号:释抑时间 > 信号中最长的重复模式
  • 不确定时:从大到小试,直到波形稳定

我记得有一次测一个雷达脉冲串,脉冲宽度1μs,脉冲串周期1ms。不设释抑时,示波器在1ms内触发了上百次,画面全是重叠的脉冲。设了释抑时间900μs后,每个脉冲串只触发一次,波形清晰多了。

2.6 触发耦合:滤掉你不想要的成分

触发耦合决定了触发路径上如何处理信号的直流和交流成分。常见的选项有:

耦合方式 作用 适用场景
DC 耦合 直流和交流成分都通过 大多数数字信号、低频信号
AC 耦合 隔直,只通过交流成分 电源纹波测量、有直流偏置的交流信号
高频抑制 滤除高频噪声(约50kHz以上) 有高频噪声的数字信号
低频抑制 滤除低频干扰(约50kHz以下) 有低频哼声或漂移的信号

我建议,测数字信号时先用DC耦合,如果触发不稳定再切到高频抑制。测电源纹波时一定要用AC耦合,否则直流分量会吃掉你的动态范围。

注意:AC耦合会引入一个高通滤波器,低频成分会被衰减。对于频率很低的信号(比如几十赫兹),AC耦合可能导致触发不稳定甚至无法触发。

2.7 知识体系总览

下面这张图把触发系统的各个模块和它们的关系梳理清楚了。你可以把它当作一个快速参考。

触发系统知识体系 触发源选择 触发类型 触发耦合 边沿触发 脉宽触发 逻辑触发 串行总线触发 I2C SPI UART 触发释抑 (Holdoff) DC / AC 耦合 高频 / 低频抑制 💡 使用建议 • 数字信号调试:先选边沿触发,不稳定时切到脉宽或逻辑触发 • 串行总线分析:直接用总线触发,配合解码功能 • 复杂波形捕获:善用触发释抑 + 触发耦合组合,减少误触发

触发系统就像示波器的「大脑」。选对了触发方式,复杂波形也能轻松捕获;选错了,再好的示波器也白搭。我建议你花点时间,把每种触发方式都亲手试一遍,尤其是那些平时不常用的——说不定哪天就能救你一命。