万用表还是示波器?电源与传感器波形下的嵌入式调试之道
2026/9/5 18:41:55 网站建设 项目流程

在调试一块嵌入式板子时,经常有同学拿万用表去测电源输出和传感器引脚,然后问我:为什么电压是对的,系统还是不稳定?这个问题背后就是今天要聊的关键:万用表真的能代替示波器吗?我的判断很直接——不能。至少在测电源和传感器波形这件事上,答案非常明确:万用表看的是结果,示波器看的是过程。你用万用表能测出 3.3V,但看不到这个 3.3V 是稳定直流,还是 PWM 调出来的平均值;你能测出传感器电源正常,但看不到 I2C 总线上到底有没有毛刺,也看不到上电瞬间的顺序错乱。

所以这篇文章不是否定万用表,而是把两者边界说清楚。我会从实测电源、传感器波形的角度拆开讲:哪些场景能临时替代,哪些场景会被误导,只有一台万用表时怎么排查,以及如果需要上示波器,第一轮操作应该怎么做。如果你正好卡在“电压正常但系统不正常”的调试阶段,这篇应该能帮你少走一段弯路。

1. 先看本质:万用表给“一个数”,示波器给“一整段过程”

1.1 万用表到底擅长哪些测量

万用表在当前阶段依然是绝大多数电工、电子工程师和嵌入式开发者的第一把工具。它适合回答这类问题:这条线有没有电?电压大概是多少?是不是短路?传感器供电是否到位?电阻是否正常?二极管方向对不对?

这些问题的共同点是:被测对象可以被压缩成一个静态数值。比如电池电压 1.5V,电源输出 12V,一个上拉电阻 10kΩ。这些量要么不随时间变化,要么变化很慢,万用表只要取一个有效值或平均值,就能给到可用的结论。

另一个重要点是,万用表表笔的输入阻抗通常能做到 MΩ 级,对大多数普通电路影响很小。你把它并联到电源输出上,测到的电压基本可信。家里修插座、查线路、测电池,这类任务万用表是无可替代的。

但问题也出在这里。万用表的测量原理决定了它最终会“丢弃时间信息”。无论是直流档、交流档还是频率档,它输出的结果是经过内部计数、整流、采样、平均之后的一个汇总值。数字表不是实时连续刷新到极高频率的仪器,它没有用来描述“这一瞬间电压波形长什么样”的能力。

我遇到很多人抱怨“万用表数值跳来跳去”,其实不是表坏了,而是被测信号本身不是稳定的纯直流。这时候跳动的数字只是把缺陷放了个轻描淡写的提示,真正的具体波形你依然看不到。

1.2 示波器多的不只是一块屏,而是“时间轴”

示波器的核心能力,是把电压和时间的关系画出来。横轴是时间,纵轴是电压。你看到的不再是“3.3V”这个数字,而是“从0V上升到3.3V用了多久,稳定后有没有过冲,上面叠加了多少纹波,掉电时下降了多久”。

这个能力在调试电源和传感器时尤其重要。因为现代嵌入式系统里大量信号不是单纯的直流高低电平,而是“随时间变化的波形”:开关电源输出的纹波、DC-DC 的开关噪声、PWM 调速信号、I2C/SPI 的数据线、串口 TX/RX、传感器输出的模拟小信号、上电时序等等。

如果只看最终电压数值,你很可能得出“一切正常”的错误结论。而实际上,器件不能稳定工作的原因往往就藏在这些时间细节里。示波器真正解决的不是“测得更准”,而是“让人看到信号到底坏在哪”。

它还带来了万用表没有的两样东西:触发和存储。触发可以帮你等一个特定条件出现再记录,比如等待下降沿、等待超过某阈值的毛刺。存储则能让你抓下上电瞬间或偶发故障的波形,供后续分析。这是万用表在任何档位上都做不到的。

2. 测电源波形:用万用表可能会得到“看似正常的假象”

2.1 直流电压正常,不代表电源纹波和毛刺正常

我见过很多调试场景都是这样:供电端用万用表测,电压显示稳定 5.0V,可 MCU 偶尔复位,传感器输出偶尔跳变。问题最终查下来,大多是电源纹波过大、毛刺耦合到了复位引脚或参考电压。

用万用表的直流档测 5V 电源,内部显示的是信号的平均值。如果这个电源在 5V 基础上叠加了大量开关纹波,比如峰峰值达到 300mV,万用表依然可能稳定显示 5.0V。原因是纹波相对直流分量来说占比不大,综合下来数值变化不明显。你不是没有测到,而是工具把这个信息给“平滑”掉了。

要测纹波,需要示波器,并且需要用交流耦合、打开带宽限制、用短接地弹簧,而不是普通长地线夹。这时你能看到一条上下波动的曲线,有高频毛刺、有与开关频率同步的起伏。纹波峰峰值、频率、是否在负载切换时突然变大,这些才是判断电源是否合格的关键。

万用表的交流电压档也不是不能用,但显示的是 RMS 有效值,无法反映峰峰值。同一个纹波是正弦波、三角波还是窄尖峰毛刺,对应关系完全不同,凭一个有效值很难评估会不会引发逻辑误判。所以“交流档测出 50mV”并不等于“安全”。

2.2 PWM 电源、调光控制:平均值、有效值和峰值是三个概念

很多电源模块带有使能脚,有些 LED 驱动或风扇调速用的是 PWM。假设一根信号线上输出 12V 的 PWM,占空比 50%,万用表直流档可能显示大约 6V 左右。你看到 6V,能说明它是 12V 方波以 50% 占空比输出的平均结果吗?不能。

它也可能是真的 6V 直流电源。也可能是 12V 方波占空比不是 50%,只是平均值凑巧等于 6V。也可能是幅值更高或更低、占空比不同导致的结果。没有频率信息、没有高电平持续时间的值,都只是猜测。

在调试电源类信号时,如果你怀疑输出不是纯直流,可以先用万用表的频率档或占空比档碰一下。很多数字万用表带有 Hz 和 % 档,能够测到周期性方波的频率与占空比。但如果占空比不稳定、频率抖动、边沿过缓,万用表会显示乱跳,甚至无法触发。真正要确认波形质量和时序关系,还是要上示波器。

这里还要提醒一句:使用 PWM 或 PFM 调制的电源场景,负载电流也会随时间变化。电容充电、电感续流、负载瞬态响应都会让波形出现跌落和过冲,这些动态行为全部依赖时间轴,不是稳态数值能反映的。

2.3 上电时序和掉电时序,单体表根本抓不到

复杂一点的主板或控制板,经常有多个电源域:3.3V 给 IO,1.8V 给内核,2.5V 给 DDR 或传感器模拟部分。某些芯片要求 1.8V 不能先于 3.3V 上电,否则内部 ESD 结构或 I/O 控制器可能进入闩扣或异常状态。这类问题用万用表很难查。

为什么?因为上电过程发生在毫秒甚至微秒级别。万用表采样率不够,即使你把一只表笔接到 1.8V,另一只接到 3.3V,也做不到同时记录两路电压从 0V 到稳定值的变化先后。你看到的只是最终状态都是正常电压。

我用过的方式是:把示波器两个或四个通道分别接多路电源输出,触发条件设在主电源上升沿,然后观察从 0V 上升到稳定值的顺序。只要有一路电源提前启动或者上电后出现明显回沟,就能马上定位。掉电也一样,很多系统在关机时因为掉电顺序不对,会出现反复复位或传感器数据损坏。

这种问题如果只用万用表,最坏的情况是你反复怀疑芯片、固件、传感器,更换了一大堆器件后,最后才发现是上电时序造成的。工具选错了,排查方向就会跟着偏。

3. 测传感器波形:数字接口和模拟小信号都容易踩坑

3.1 PWM 输出类传感器:万用表只能给出平均结果

很多位置传感器、霍尔传感器、光电传感器、超声波测距模块,输出的是 PWM 或类似脉冲信号。例如一个测距传感器,高电平持续时间代表距离;一个轮速传感器,输出频率代表转速。这两种信息的价值在于时间和频率,而不是电压平均值。

假设传感器输出 5V 电平的 PWM,占空比 80%,万用表直流档可能显示 4V 左右。你能知道这个 4V 意味着距离变近了吗?远远不够。你需要判断的是:输出频率是否稳定,高电平宽度是否正确,边沿有无抖动,每一圈输出的脉冲数是否跳变。

如果现场只有万用表,带频率档和占空比档的话,可以先做一个粗测。测到频率稳定、占空比合理,故障可能性会降低。但要面对毫秒级抖动、偶发丢脉冲这类问题时,万用表就无能为力了。特别是轮速、转速、位置检测的场合,一个毛刺就可能让控制器误判方向或速度。

示波器观察 PWM 传感器时,我会直接看三件事:高电平幅值是否达到逻辑门限、低电平是否接近 0V、频率是否有周期抖动。如果信号沿很缓、长期处于中间电平,那更要检查传感器退耦电容、接线和上拉电阻。

3.2 I2C、SPI、UART 这类协议信号,万用表几乎只能判断“死了还是活着”

数字接口最大的特点是:信号承载的信息在“边沿”和“时序”上。I2C 由 SCL 和 SDA 两根线组成,判断通信是否正常,至少要看起始条件、地址帧、应答位是否出现。用万用表量 SDA 或 SCL 的对地电压,通常只能看到总线被拉高的状态。

如果通信偶发失败,你想知道是不是有设备地址冲突、是不是有从机没有应答、是不是时钟线上的毛刺导致状态机跑飞。这些问题万用表都回答不了。更合适的工具是示波器或逻辑分析仪。示波器可以看到协议波形,部分型号支持协议解码,能直接列出起始位、地址、读写位和应答信号。

SPI 比 I2C 信号更简单,四条线各司其职,但时序要求同样严格:时钟极性、相位、数据建立保持时间、片选信号的拉低时刻。如果示波器上看到 CS 信号还没拉低,时钟就已经开始跑,那就是代码里的片选时序问题。这种问题用万用表连切入点都找不到。

UART 也一样。平时总线空闲是高电平,发送数据时会有启动位和停止位。拿万用表测 TX 引脚,如果能看到电压被拉低,说明可能有数据在发送。但帧内容、波特率误差、校验位错误、停止位是否正常,都需要看波形或协议解析。低速串口调试很多问题最终查出来是波特率配置误差积累,这个值必须看边沿间隔才能算出来。

3.3 模拟传感器输出:噪声、漂移和偶发毛刺才见真章

温度、压力、光照、加速度等模拟传感器,通常输出一个与物理量成比例的电压或电流。对于这类信号,很多开发者会拿万用表直流电压档去测输出,然后根据电压换算物理值。短期看,这个方法可以用于静态标定;但一旦系统不稳定,问题往往出在噪声和瞬态异常上。

模拟信号的常见问题有几种。第一,输出端叠加了几十毫伏的工频干扰,导致 ADC 采样值跳动;第二,传感器供电纹波被耦合到输出,使数值周期性抖动;第三,布线或接触不良导致偶发尖峰,让控制系统误以为物理量发生突变;第四,传感器本身老化,输出漂移。

用万用表测这些问题,要么得到的是被平均后的值,要么数值不断跳但你无法确认波形形态。你要知道它是不是固定的 50Hz 干扰,有没有窄毛刺,有没有脉冲群,用示波器看一次比猜半天更高效。

我在调一个压力传感器时遇到过这样的现象:静态输出电压每次测量都差 2mV,换算成压力只是很小误差。但系统实际控制时会出现短暂误动作,后来用示波器抓才发现是屏蔽层接地不良引入的宽频噪声,偶尔会叠加出超过阈值的尖峰。这个尖峰持续不到 1 毫秒,万用表根本测不出来。但也正是这个不到 1 毫秒的问题,造成整个系统偶发错误。

4. 什么情况下才可以用万用表临时替代示波器

4.1 能明显放心的场景

先说结论:当你只需要做一个“好坏判断”时,万用表通常是够用的。比如:

  • 检查稳压模块有没有输出,是从 0V 变成了 3.3V 还是 5V。
  • 确认传感器供电端是否短路,VCC 和 GND 之间是否异常。
  • 检查一个信号线到底是高电平、低电平还是悬空。
  • 测量电池或普通 AC-DC 适配器的空载电压。
  • 查线路通断、电阻是否开短路,传感器是否损坏。

这些场景的本质是“静态状态确认”。系统没有开启复杂动态过程,信号要么稳定高,要么稳定低,要么是稳定的直流电源。在这种状态下,示波器能做的事情,万用表基本也能做到,只是刷新速度不同。

在做板卡首次上电时,我的习惯是先拿万用表做短路检查,再上电看电源电压。确认没有短路、主要电源数值正确后,再进入波形级别的验证。这其实是非常合理的组合思路,不是所有调试都必须从示波器开始。

4.2 判断能不能替代的三步法

遇到一个具体测量需求,可以按下面的流程判断到底需不需要示波器:

第一步,先问自己:我想知道的量是不是“某一个时刻的电压值”?如果是,万用表多半可以搞定。如果不是,比如想知道一个信号的频率、占空比、边沿顺序或波形形状,那万用表基本替代不了。

第二步,再问自己:这个信号如果出现异常,是慢慢变化、最终变化,还是瞬间变化?缓慢变化的电源跌落、传感器漂移,万用表能追踪;瞬间出现的毛刺、干扰、脉冲丢失,必须用示波器的触发和单次捕获功能。

第三步,还要问:故障现象是稳定复现,还是偶尔出现?稳定复现可能还可以借助万用表猜个方向,偶尔出现则建议直接上示波器抓波形。用万用表排查偶发问题,效率很低,因为你看到的永远只是平均值。

我一般建议把“能不能替代”想成“能不能给出足够判断依据”。电压对、电流对,未必代表系统健康;能证明信号波形完整、时序正确,才算真正确认问题根源。

4.3 只有万用表时的临时排查顺序

如果手头没有示波器,又必须马上排查一块电源和传感器异常的板子,我不会盲目放弃万用表,而是按下面的顺序先缩小范围:

先测电源输入端是否有正确电压。再测每一路 DC-DC 或 LDO 输出,确认电压数值在规格范围内。接着测传感器供电端,确认从电源到传感器的路径上没有明显压降。然后测信号输出端的高电平和低电平,判断输出的逻辑电平和传感器参考地是否一致。

如果这些都没问题但系统依然异常,就要注意万用表数值是否跳动很大。跳动明显往往说明波形不干净,可以试着切换到 AC 档,或用带占空比、频率档的表测信号。但这只能作为中间判断,不要据此宣布“波形正常”。

最后,如果条件允许,可以用一个简单的 LED 或小蜂鸣器电路做逻辑状态指示,观察信号是否有动作。对于低速开关量信号,可以帮助确认是否有电平翻转。不过这只适合几十赫兹以内的慢变信号,超过这个范围,人眼已经看不出什么了。

5. 如果入手示波器,怎么盯电源和传感器波形

5.1 先选对探头,而不是只看通道

示波器本身的带宽、采样率、存储深度、触发方式固然重要,但遇到电源和传感器测试,最影响测量结果的往往是探头和接地方式。

常见示波器探头有 1×、10× 档位。测电源纹波时,我建议优先用 10× 和带宽限制功能。10× 档会降低探头对电路的负载,也能减少一些额外噪声。很多示波器通道菜单里有“带宽限制 20MHz”选项,测开关电源纹波时打开它,能把信号线感应进来的高频噪声压掉一部分,看到更接近电源本身的纹波。

如果你第一次买示波器,不需要追求太高参数。测普通电源的纹波、传感器 PWM、I2C、SPI、UART,100MHz 带宽、1GS/s 采样率的入门级数字示波器基本够用。重点是测量方法要对。探头地线不要用又长又弯的地线夹去量高频噪声,这会像天线一样把周围干扰捡回来。

我常看到初学者把示波器探头挂到电源上,结果看到巨大的高频毛刺,误以为是电源坏了。实际上毛刺可能是地面夹太长、回路面积太大造成的耦合噪声。换一个短弹簧地,或者用接地环,毛刺幅度会明显下降。

5.2 测电源纹波的实操步骤

测电源纹波时,正确的顺序通常是这样的:

先把示波器通道设置为直流耦合或交流耦合,先看大概直流电平。要细致观察纹波,再切到交流耦合,把直流分量滤掉,把波形放大到适合观察的范围。设置电压档位,一般从 50mV/div 或 100mV/div 开始,看是否在显示范围内。打开 20MHz 带宽限制,降低高频噪声干扰。使用探头 10× 档,接好短接地端。把时基设置到微秒级到毫秒级,让波形稳定显示。如果需要看和开关频率相关的纹波,时基要覆盖几个开关周期。

判断标准不是看绝对数字是否“很漂亮”,而是看两点:第一,纹波是否稳定在负载变化要求范围内;第二,有没有突然出现的窄尖峰。尖峰往往比纯纹波更致命。它可能导致数字电路误触发,也会让模拟传感器 ADC 采样值跳动。

如果你的示波器没有 20MHz 硬件带宽限制或者带宽较低,也没关系,至少要在测量时了解探头和接地点的影响。测纹波时不要为了幅度大而把垂直档位卡得太小,超出屏幕的信号会被削顶,看着像没有毛刺,实际已经失真。

5.3 测传感器 PWM 和低速串行信号的实操步骤

测传感器 PWM 信号,我会先看信号幅值。把探头接到传感器输出和地,用示波器的自动设置快速找到波形,然后关闭自动设置,手动调电压和时基。观察高电平是否达到器件要求的 VIH,低电平是否低于 VIL,频率是否稳定,占空比是否随被测物理量变化。

测量 I2C、SPI、UART 时,先选择较慢时基,把所有信号线同时接到通道上。I2C 至少接 SCL 和 SDA,SPI 至少接时钟和数据线,UART 接 TX、RX。如果示波器支持协议解码,可以把类型选对,设置阈值电平,让它解析出数据和应答位。解码结果只是辅助,你还是要回到原始波形上确认边沿是否干净。

抓偶发问题时,把触发条件设为下降沿或特定脉冲宽度。例如等待一个异常的低电平毛刺,可以用脉宽触发。这样可以避免盯着屏幕看半天却什么都没抓到。发现故障波形后,保存屏幕图像或波形数据,再对比正常状态和故障状态的差异。

5.4 和万用表配合不是二选一

示波器并不是万用表的平替,两者配合使用效率最高。我会先拿万用表完成安全检查和静态电压确认,再用示波器观察动态波形。反过来,示波器看到某路电源有异常,我会再用万用表复核输出端对地阻抗和电压,排除探针接触不良或电缆问题。

某些场景下,万用表甚至比示波器更方便。比如长期测量一个电池的电压下降曲线,或者在一个狭小机箱里点对点测量,万用表的便携性和电池供电会更有优势。示波器体积大,接线复杂,常电供电也可能引入地环路,反而让测量变得麻烦。

所以最理想的调试装备组合,不是把万用表丢掉,而是把万用表当“静态快检”,把示波器当“动态深查”。两者信息互补,共同覆盖从电源到传感器、从启动到稳定运行的整个周期。

6. 常见坑点和排查链路

6.1 先别急着怀疑工具,按现象分层排查

很多朋友看到电压或波形不对,第一反应是换芯片、改代码、调参数,结果浪费大量时间。我总结的排查顺序是:先看现象,再看输入,再看探头接地,接着看参数设置,最后才怀疑器件本身。

举个例子,电源电压用万用表测出来偏低,先确认输入电压、接地参考点是否与被测板共地。万用表表笔接触不良也会造成电压偏低,这点容易忽略。同样,示波器测出来毛刺大,先检查探头是不是打到 1× 了,地线是不是夹在很远的位置,然后再判断电源是否真的有问题。

传感器信号异常也一样。先确认传感器供电是否正常,测量是否正确接地。很多传感器输出的地和控制板的地之间存在压差,会导致读数漂移。这种问题用万用表反而不容易发现,因为表笔如果接在不同参考地,测得数值本身就会失真。

6.2 几个常见的测量误区

第一个误区:用万用表的直流电压档去测 PWM 信号,然后把读数当真实电平。平均值只适合某些电压检测场景,不代表逻辑高低电平有效。比如 3.3V 的 IO 输出 50% 占空比,万用表显示约 1.65V,并不代表驱动能力不足或电平有问题。

第二个误区:用示波器探头的长地线夹测纹波,结果看到很多高频尖峰,就下结论说电源质量差。实际上很可能是地线回路太长引入的共模噪声。你应该换短接地后再测一次,如果尖峰明显减小,说明原先是测量方法的问题。

第三个误区:觉得“分辨率越高、带宽越高”一定越好。对于低速 I2C 或传感器信号,不必追求超高带宽,因为带宽过高会引入更多高频噪声,让波形看起来更差。关键是时基、触发电平、带宽限制和探头接法要符合信号类型。

第四个误区:拿万用表频率档去测非周期或含毛刺的信号。频率档通常依赖稳定过零,信号稍微脏一点,可能读出错误频率或一直跳。如果必须用万用表测频率,最好先用示波器看一眼信号质量,再决定读数可信度。

6.3 偶发故障和长期记录,还要考虑示波器和记录仪以外的工具

如果是偶发重启,比如几天出现一次,普通示波器可能等不住。这时可以借助示波器的波形录制功能,把每一次满足触发条件的波形保存下来。或者用带深存储的示波器,长时间观察关键信号。没有条件时,可以用带日志功能的设备记录供电电压、关键电平变化,再通过时间戳找出关联。

还有一种场景是传感器输出随环境缓慢漂移,几个小时才变化一次。此时反倒不需要示波器,拿一个万用表或数据记录仪持续记录更合适。观察几十小时内的电压或电阻变化,你会发现万用表在慢速测量上依然很有用。

所以回到最初的题目:万用表能不能代替示波器?我的答案是,它们不是替代关系,而是分工关系。万用表负责静态快速判断,示波器负责动态波形分析。真正要判断一个电源或传感器是不是健康,关键不是“测一次电压准不准”,而是“你是否拥有看到时间变化的能力”。如果只有两种工具选一种,万用表是保底的;但在嵌入式开发、开关电源维修、传感器信号调试这些场景里,越早上一台示波器,越早能把“看似正常但就是有问题”的疑难杂症查明白。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询