☰
LM393电压比较器实用指南:从滞回电路到光控与窗口比较器
2026/10/6 4:26:48 网站建设 项目流程

前阵子帮朋友检修一块自动感光控制板,故障现象很怪:白天输出正常,一到黄昏,负载继电器就开始嗒嗒嗒乱跳,频率还不低。拆开一看,感光部分用的是一颗 DIP-8 封装的 LM393,周边零零散散几个电阻电容。我第一反应是滞回没做好,顺手把反馈电阻调上去,世界立刻安静了。

这颗 LM393 电压比较器,我从刚入门玩电子到现在十几年,几乎每个涉及模拟量判断的项目里都能看到它。没什么花哨功能,但就是稳定、便宜、好用,几乎成了电子爱好者和工程师心照不宣的默认选项。本文就借着这颗芯片,把电压比较器的原理、几种典型电路、以及那些原理图上看不出来的坑,一次讲清楚。

适合谁看?如果你正准备做电池低压报警、光控开关、窗口检测这类需要"判断电压大小"的电路,或者你手里正好有一颗 LM393 不知道怎么用,这篇内容基本可以让你直接抄作业,顺便把背后的道理也搞明白。

1. 认识LM393:为什么这颗"比大小"的芯片成了常青树

1.1 一颗芯片里,其实藏了两个独立的比较器

LM393 最经典的是 DIP-8 封装,引脚排列很有规律:1脚输出A、2脚反相输入A、3脚同相输入A、4脚接地、5脚同相输入B、6脚反相输入B、7脚输出B、8脚接正电源。也就是说,这一颗芯片里集成了两个互相独立的电压比较器,它们共用电源和地,但输入输出完全互不干扰。

这在很多场景下特别划算。比如做窗口比较器,天然就需要两个比较器,用 LM393 一颗就够,不用占两片芯片的位置。再比如同时监测两路电池电压、两路传感器信号,也都是顺手的事。LM339 则是四比较器版本,封装更大,引脚更多,但在只需求两路的情况下,LM393 的体积优势就体现出来了。

比较器的本质,用一句话说就是:比大小。它有两个输入引脚,一个叫同相输入(标着 +),一个叫反相输入(标着 -),输出只有两种状态——高电平或者低电平。当同相端电压高于反相端,输出翻转;反过来,同相端电压低于反相端,输出又翻回去。这和我们熟悉的运算放大器有点像,但有本质区别。

1.2 比较器和运放,差的不只是名字

初学者最容易犯的一个错误,是拿运算放大器当比较器用。我见过不少人用 LM358 搭比较电路,结果发现输出翻转慢吞吞,甚至电路自己振荡起来。问题不在 LM358 本身,而在运放和比较器的设计目标完全不同。

运放是设计用来做线性放大的,它工作在闭环状态,输出和输入之间要连反馈网络,让输出电压精确落在某一中间值。为了稳定,运放内部通常做了频率补偿,这个补偿电容大大限制了它的响应速度。比较器则相反,它天生就是开环工作,内部放弃了大电容补偿,换来的是极快的翻转速度,输出直接怼到高电平或低电平。

我实测过 LM393 的翻转速度,在 5V 供电、100mV 过驱条件下,响应时间大约在 1.3 微秒左右。这不算顶级,但应付绝大多数传感器阈值判断、开关控制场景绰绰有余。而普通运放在同样的开环状态下,翻转时间经常是几十微秒,某些型号甚至会更糟,而且供电电压越接近输入失调区域,状态越模糊。

还有一点更隐蔽:很多运放的同相输入端存在一个"相位反转"问题。当输入共模电压超过允许范围时,输出会出现反逻辑,瞬间从高变低或从低变高,这在阈值判断电路里是灾难性的。LM393 这类专用比较器在设计上就做了输入保护和钳位电路,抗相位反转能力要好得多。

所以结论很直接:做阈值判断、方波整形、电平比较,老老实实用专用比较器,别拿运放凑合。

1.3 关键参数速读,心里有数才能选对电阻

用 LM393 之前,几个关键参数建议先背下来,它们直接影响外面电阻电容怎么选:

参数典型值说明
工作电压范围2V ~ 36V(单电源)双电源还可±1V~±18V,灵活性极强
输入失调电压典型 2mV,最大 5mV影响比较阈值的绝对精度
输入偏置电流典型 25nA,最大 250nA决定分压电阻能不能取大
共模输入范围0 ~ VCC-1.5V输入别超过这个范围,否则判不准
输出结构集电极开路必须外接上拉电阻才能输出高电平

这里开始就是第一个容易出问题的地方:LM393 的输出是集电极开路。什么意思?输出管的集电极直接引出来,没有内部上拉到电源。当输出低电平时,内部管子导通,输出引脚对地接近短路;但输出高电平时,内部管子截止,引脚是悬空的,必须靠外部电阻把它拉高到 VCC。

这个特性既是个坑,也是个优点。不会用的人常常觉得"我电源都接了,为什么输出量不到高电平",就是因为漏了上拉电阻。会用的人则可以利用集电极开路把两个比较器的输出直接并联,做"线与"逻辑,这在后面的窗口比较器里是个大福利。

2. 最基础的比较电路:先搭一个"电压裁判"

2.1 电路结构:被测电压上场,参考电压坐镇

LM393 最基本的用法,是构建一个单门限电压比较器。原理图上看,核心就是两个输入端的电压比拼。通常我们把一个已知的、固定的电压接到反相输入端,叫参考电压或者阈值电压;把被测的、会变化的电压接到同相输入端。这样做的结果就是:被测电压高于参考电压时,输出高电平;低于参考电压时,输出低电平。

参考电压最常见、最省钱的产生方式,是用两个电阻分压。比如用两个 10kΩ 电阻,从 VCC(5V)对地分压,中间抽头就是 2.5V。这个 2.5V 接到反相输入端(2脚),被测电压接到同相输入端(3脚),输出端(1脚)接一只 10kΩ 上拉电阻到 VCC,一个最基础的电压比较器就诞生了。

这里要补一句:为什么分压电阻取 10kΩ,而不是 100Ω 或者 1MΩ?100Ω 分压功耗太大,5V 电压下两个电阻就是 25mW 白白的发热;1MΩ 又太大了,LM393 输入偏置电流虽然只有几十纳安,但当这个电流流过 1MΩ 电阻时会产生几十毫伏的压降,直接影响阈值精度。10kΩ 这个量级是功耗和精度之间的好平衡点。

2.2 翻转逻辑:到底谁给谁判输赢

很多新手接线时容易把同相和反相搞反。这里有个百试不爽的记忆方法:同相端电压高,输出就高。也就是说,当 3脚电压(同相)高于 2脚电压(反相),1脚输出高电平;当 3脚低于 2脚,1脚输出低电平。反过来,如果被测电压接在反相端、参考电压接在同相端,逻辑就完全反过来了:被测电压高于参考时反而输出低电平。

这就要根据实际需求选择。比如做一个"光暗就开灯"的电路,光敏电阻的电压会随着光强变化,你需要确定"光变暗到哪一挡时输出翻转"。如果你希望输出高电平代表"暗",那让光敏分压后的电压随光变暗而升高,接到同相端即可;如果希望输出高电平代表"亮",那就把分压关系反过来接。

基础比较器的翻转过程很简单:输入电压慢慢上升,接近参考电压时,输出并不会渐变,而是会在越过阈值的那一瞬间快速跳变。这个快跳变正是比较器的魅力,也是为什么它特别适合驱动后级数字电路或继电器控制。

2.3 基准电压怎么选电阻:别让偏置电流偷偷改你的阈值

上一节提到分压电阻值的选择,我们再深入算一笔账。假设用两个电阻 R1 和 R2 串联在 VCC 和 GND 之间,中间节点电压就是 VREF = VCC × R2 / (R1 + R2)。

如果 VCC = 5V,想要 VREF = 2.5V,那么 R1 = R2 即可。这时候流过电阻的电流 I = 5V / (R1+R2)。当 R1 + R2 = 20kΩ 时,电流是 0.25mA,功耗约 1.25mW;当 R1 + R2 = 200kΩ 时,电流降到 25μA,功耗也小了一个数量级,这时候 25nA 的偏置电流在分压电阻上产生的偏差大约是 25nA × 100kΩ = 2.5mV,和 LM393 自身的失调电压一个级别,还能接受。

但如果你把分压电阻干到 2MΩ,偏置电流产生的偏差就可能达到 25mV 甚至更多,对于某些要求精确判断的电路,比如 0.1V 精度的电池电压检测,这就完全不能容忍了。

所以在要求不高的场合,分压电阻选 10kΩ 到 100kΩ 之间最稳妥。要求低功耗的场合,可以适当加大电阻,但务必把偏置电流的影响先估算一遍。

3. 光控灯实战:没加滞回之前,它乱跳了一整天

3.1 光电转换部分:光敏电阻把光强变成电压

LM393 最经典的实战应用之一,就是光控灯。核心思路是先把光强变化转换成电压变化,然后用比较器做判断。光电转换最常用的元件就是光敏电阻(比如经典的 GL5528,亮阻约 10kΩ,暗阻约 1MΩ)。

接法有两种,取决于你想要"亮通"还是"暗通"。把光敏电阻放到上面、固定电阻放到下面,分压点电压就会随着光线变强而升高:光越强,光敏电阻阻值越低,分压点越接近 VCC。这种接法配合同相输入端,得到的是"光线亮了,输出翻高"。如果你希望"天黑了输出翻高",那就把光敏电阻和固定电阻对调位置,再配合逻辑判断即可。

我一般建议在光敏电阻两端并联一只 100nF 电容,用来滤掉环境光的快速波动和电网干扰。这个电容不算关键,但对稳定性有好处,成本几乎为零,值得养成习惯。

3.2 让人崩溃的现象:黄昏时继电器疯狂吸合

光控电路搭好以后,很多人会碰上一个非常典型的现象:环境光在阈值附近缓慢变化时,继电器或 LED 输出不停地反复翻转,咔哒咔哒响个不停。我朋友的感光控制板就是这个毛病,天一擦黑,继电器跟打点计时器一样。

原因其实很简单。光敏电阻的阻值和光强并不是线性关系,而且自然光在黄昏时是平滑过渡的,环境光穿过阈值的那段时间可能持续十几分钟甚至更长。在这段时间里,微弱的光线波动、风吹动树叶产生的阴影、电源电压的微小起伏,都会让分压点电压在阈值附近反复穿越。

不用慌,这不是芯片坏了,也不是干扰大到离谱,只是电路缺少了一个叫"滞回"的机制。滞回,俗称回差,是解决一切阈值附近抖动问题的标准方案。

3.3 滞回原理:一个电阻带来一个"死区"

滞回的思路很简单:让上升翻转的阈值和下降翻转的阈值不一样,中间形成一个"死区"。这样,信号必须在变化方向上超过对应阈值才能触发翻转,而一旦翻过去了,哪怕电压又往回波动一小段,也不会立刻翻回来,必须反向越过另一个更远的阈值才行。

在 LM393 电路里,实现滞回通常是往同相输入端加一个正反馈电阻。以"被测电压接同相端、参考电压接反相端"为例:在输出端(1脚)和同相输入端(3脚)之间接一个反馈电阻 Rf,同时让输入信号通过一个电阻 Rin 接到同相端。这样输出电平会直接通过 Rf 影响同相端的电压,从而改变翻转阈值。

翻转阈值的推导过程也不复杂,设反相端参考电压为 VREF,输出高电平为 VOH(约等于经过上拉后的 VCC),输出低电平为 VOL(约等于 0V)。在同相端等于反相端的临界状态下列电流方程:

输出低电平时的上升触发阈值:VTH_UP = VREF + VREF × Rin / Rf

输出高电平时的下降触发阈值:VTH_DOWN = VREF − (VCC − VREF) × Rin / Rf

滞回宽度就是两个阈值之差:VWIDTH = VCC × Rin / Rf

举个实际数字。设参考电压 VREF = 3V,电源 VCC = 5V,Rin = 10kΩ,Rf = 100kΩ。那么上升翻转阈值是 3 + 3×0.1 = 3.3V,下降翻转阈值是 3 − (5−3)×0.1 = 2.8V,滞回宽度 0.5V。同一个传感器信号,悬在 3.1V 这种临界位置时,再不也不会导致输出来回跳,因为一旦翻上去,要跌到 2.8V 以下才会翻回来。

这里有个非常容易踩的坑:Rf 不能太小。Rf 和 Rin 的比值直接决定滞回宽度,如果 Rf 只有 10kΩ、Rin 也是 10kΩ,那么滞回宽度就是 5V,这会让下降翻转阈值直接变成负数。输出翻高以后,输入得跌到零下才能触发翻低,相当于电路彻底锁死,再也回不来了。经验取值是让 Rf / Rin 在 10 到 100 之间,对应的滞回宽度是 VCC 的 1% 到 10%,再配合实际传感器的噪声幅度微调即可。

3.4 完整电路与调试心得

综合起来,一个完整的光控灯电路就是这样:

光敏电阻和一只固定的 10kΩ 电阻从 VCC 到 GND 分压,分压点接 LM393 的 3脚(同相输入)。2脚接一个由两只 10kΩ 电阻分压产生的参考电压。输出 1脚接 10kΩ 上拉电阻到 VCC,同时通过一个 100kΩ 反馈电阻连回 3脚。输出再去驱动后级开关电路,比如三极管或继电器驱动模块。

我调这类电路时有个习惯:先把参考电压故意调低一点,让输出稳定在一个确定的低电平状态,然后拿手慢慢遮住光敏电阻,观察输出在哪个光照程度翻转;再用强光照一下,看它什么时候翻回来。如果两次翻转时机的光照差异让你觉得不合适,就调整 Rf 的大小,而不是去反复调参考电压,这样调试思路更清晰。

另外提醒一句,光敏电阻的光谱响应偏向可见光,如果你的使用场景涉及红外或强紫外环境,它的阻值表现会和你眼睛看到的不一致。到时候别惊讶,这不是电路错,是传感器本身的特性。

4. 低压报警电路:阈值准不准,全看基准怎么建

4.1 参考电压的三种搭建方式,各有利弊

如果说光控灯是"模拟量比较"的入门练习,那电池低压报警电路就是真正考验阈值精度的实战。核心需求是:当电池电压掉到某个值以下时,输出翻转,点亮 LED 或响起蜂鸣器,提醒你该充电了。

这里的关键矛盾在于,电池电压本身的摆幅很大,比如 12V 铅酸电池从充满的 13.8V 到放空保护的 10.5V,跨度有 3V 多。如果直接用电阻分压去和另一个电阻分压比较,两个分压比都随电源电压变化,阈值判断会非常模糊。所以正确做法是:被测电池电压经过分压衰减后,去和一个尽量稳定的参考电压比较。

搭建稳定的参考电压有三种常见方式:

方案电压精度复杂度适用场景
电阻分压低,随电源波动最低对精度无要求的场合
稳压二极管中等,约±5%低简单报警电路
TL431(2.5V基准)高,可达±1%中对阈值精度有要求

我个人最常用 TL431。它实际上是一个可调精密稳压源,接成最简单的形式时输出稳定在 2.5V,温漂也很小。在低压报警场景里,把 TL431 的阴极接一个限流电阻到电池正极,参考端和阴极短接(这也是常见错误点:TL431 的 REF 引脚如果悬空或接错,输出电压就完全不对)。这样就在 2.5V 上立了一个稳固的标杆,电池电压怎么波动都不影响它。

4.2 阈值计算与驱动负载的正确姿势

假设我们要监测一串 3 节锂电池,充满约 12.6V,我们希望在 11.1V 时报警。那么先把电池电压分压衰减:用 R1=100kΩ 和 R2=25.5kΩ 分压,在 11.1V 时得到约 2.5V,正好和 TL431 的参考电压相等。这里选 100kΩ 级别是为了减少电池端待机损耗,也提醒你分压电阻这个点数下来,流过的电流只有约 90μA,对电池来说可以忽略。

把分压点接到 LM393 的 3脚(同相输入),TL431 的 2.5V 接到 2脚(反相输入),那么当电池电压低于 11.1V 时,分压点低于 2.5V,输出翻转为低电平。这时候如果直接在输出端接 LED 到 VCC,你看一眼就会发现一个诡异的现象:报警时 LED 确实亮了,但亮度不太够。

原因又回到了集电极开路。LM393 输出低电平时,内部管子吸收电流,但高电平时输出引脚没有主动输出能力,只能靠上拉电阻提供电流。LED 串联限流电阻从 VCC 到输出端,电流实际上是从 VCC 经 LED、限流电阻、再经 LM393 内部管子到地,这个电流同时也是上拉电流。如果把上拉电阻去掉,高电平时输出端完全悬空,LED 就没有电流通路,就永远不会亮。

所以驱动 LED 时,限流电阻的大小同时决定了上拉强度和 LED 亮度。通常取 1kΩ 到 4.7kΩ 之间,兼顾亮度和最大灌电流。但如果你要驱动蜂鸣器、继电器这类大电流负载,不要直接从输出端取电,LM393 的低电平灌电流能力虽然有余量,但压降会随电流升高而变大,比较保险的做法是让输出驱动一个 NPN 三极管或 N-MOSFET,再由三极管去开关负载。三极管基极串联 1kΩ 到 10kΩ 电阻即可。

4.3 电池供电场景下的功耗账

既然做的是电池低压报警,那它自己往往也是电池供电的,功耗账必须算清楚。

LM393 本身静态电流非常低,数据手册给的大约是 0.4mA 级别,两路比较器合计也就 0.8mA 左右。这已经很省了,但如果设备要长期待机,还有一些细节可以抠。

一是分压电阻网络。前面说的 100kΩ 和 25.5kΩ 分压,静态电流约 90μA,一年下来就是 0.09mA × 24h × 365 ≈ 788mAh。对于一块 1500mAh 的锂电池,光这一路就吃掉了一半。如果要求更高,可以改用 1MΩ 级别分压电阻,代价是输入偏置电流的影响会被放大,需要用偏置电流更小的比较器,或者接受阈值精度变差。实际上 LM393 的 25nA 偏置电流在 1MΩ 电阻上只产生 25mV 偏移,对于 0.2V 滞回窗口来说,尚可接受。

二是反馈电阻网络。滞回电阻通常也是兆欧级,功耗贡献不大,但别忽略它。三是 TL431 的工作电流。TL431 要正常工作至少需要 1mA 的阴极电流,这个电流其实不小了。如果特别在意功耗,可以考虑换成专用的微功耗基准芯片,或者干脆用低功耗的比较器加内部基准的型号替代。LM393 适合快速验证和低成本批量,但极低功耗场景值得专门评估。

5. 窗口比较器:把"上下限"装进两个比较器

5.1 三电阻分压:一个网络,两组阈值

有时候我们需要判断的不是"高于某个阈值",而是"是否落在一个区间内"。比如设备要监测电源电压是不是在 3.3V 到 3.6V 之间,超出这个范围就告警。这种双边界检测,正好用上 LM393 里面两个独立的比较器,构成一个窗口比较器。

原理不复杂。用三个电阻串联在 VCC 和 GND 之间,从分压网络里抽出两个不同的电压点:上面的分压点设为上限阈值 VH,下面的分压点设为下限阈值 VL。两个阈值都固定不变。

然后两个比较器分别处理:比较器 A 负责判断电压是否超过上限,比较器 B 负责判断电压是否低于下限。被测电压同时接到两个比较器的相关输入端,两个输出端再合并到一起,最终得到"是否在窗口内"的信号。

我常用的接法是这样:上限比较器用同相输入端接被测电压,反相输入端接 VH,那么被测电压高于 VH 时,输出翻高;下限比较器用反相输入端接被测电压,同相输入端接 VL,那么被测电压低于 VL 时,输出翻高。也就是说,任何一端越界,对应的比较器输出都会变成高电平,只有被测电压乖乖待在上下限之间时,两个输出才都是低电平。

5.2 集电极开路的额外福利:两路输出直接并联

到这里就轮到集电极开路的红利登场了。传统推挽输出结构的芯片,两个输出端直接并联是绝对禁止的,因为一个输出高、一个输出低时,一个在拼命灌电流,一个在拼命吸收电流,轻则逻辑错误,重则烧毁芯片。而 LM393 这类集电极开路输出,只要在两个输出端之间并联一个公共上拉电阻,就可以安全地做"线与"。

具体来说,把比较器 A 的输出和比较器 B 的输出直接短接,再通过一只 10kΩ 电阻上拉到 VCC。任何一个比较器输出低,公共端就被拉低;只有两个都输出高,公共端才是高。结合上面的接法,被测电压在窗口内时,两个输出都是低,公共端是低;一旦任何一个方向越界,对应的输出翻高,公共端被上拉电阻拉高。这样就拿到了一个干净的"越界报警"信号。

这个"线与"特性在工业控制里特别实用。比如多路传感器监控,每一个传感器对应一个 LM393,或者一片 LM339 的多个通道,所有输出并联到一个公共线上,任何一路触发报警,主机端立刻能检测到变化。省掉了大量或门电路和二极管阵列,简单可靠,是我个人最喜欢 LM393 的原因之一。

5.3 进阶玩法:上中下限三段指示

既然有两个比较器,如果你不偷懒把输出并联,而是分别引出到两个不同颜色 LED,再配合一只中间状态 LED,就能做出一款简易的三段电池电量指示器。被测电压高于 VH 时,绿色 LED 亮;低于 VL 时,红色 LED 亮;位于两者之间时,黄色 LED 亮。实现起来只是在每个输出端加一路独立的 LED 驱动,逻辑关系并不复杂。

实际做的时候还需要注意:两个比较器各自的滞回都要加。如果你在 VH 和 VL 附近没有滞回,电量缓慢穿过边界时,对应的 LED 一样会闪烁或抖动。尤其是电池放电曲线在末端变化很陡,但也因此更容易在阈值点反复横跳。给两个比较器分别加上反馈电阻,计算方法和第三章完全一致,只是注意两路阈值独立,反馈互不干扰,因为它们各自接在自己的同相输入端上。

窗口宽度的设定也值得多说一句。窗口不能设得太窄,否则电源纹波或者信号噪声很容易让检测结果频繁越界。通常至少留出 0.1V 到 0.2V 的裕量,再叠加滞回,双重保险。

6. 五个让原理图"失效"的细节

6.1 上拉电阻:没它,高电平永远出不来

这是 LM393 新手翻车率最高的一条。很多人在面包板上照着原理图把电源、地、输入都接好了,结果输出端无论怎么调输入电压,始终量不到高电平。怀疑芯片坏了,我说你拿万用表量一下输出端到 VCC 的电阻吧。他量完才反应过来:原理图上的上拉电阻没画,或者画了他没接。

记住一点:只要看到 LM393、LM339、LM311 这类"集电极开路输出"字样,高电平就不可能凭空产生。输出端必须有一只外部电阻连接到某个正电源,才能把输出拉高。这只电阻通常取 1kΩ 到 100kΩ 都行,主要看后级输入阻抗和速度要求。驱动 CMOS 数字电路,10kΩ 足够;追求更快翻转沿,用小一点,比如 2.2kΩ;纯粹做慢速阈值检测,100kΩ 也能用,只是高电平驱动能力很弱。

6.2 共模输入范围:VCC 并不是天花板

LM393 的输入共模范围是 0 到 VCC−1.5V。这意味着当芯片工作在 5V 电源时,输入电压超过大约 3.5V,比较器就不再保证正常的翻转逻辑。很多人拿它直接比较 5V 信号和 3.3V 参考电压,结果发现有时候正常、有时候失灵,其实就是输入越过了共模上限。

解决办法很简单:尽量让输入电压落在这个范围内,必要时用分压电阻把信号衰减后再送入比较器。尤其当你要监测的电压比芯片供电电压还高时,比如用 5V 供电的 LM393 去判断 12V 电路的状态,必须先把 12V 分压到 3V 左右,再送进比较器,而不能直接接上去。

还要注意,输入电压也不是可以无限低。低于 0V 的负压同样会出问题,虽然 LM393 内部有保护二极管,但大幅度的负压仍可能损坏芯片或形成不明路径的电流。如果信号源可能产生负压,建议在输入端串入一只电阻限流,外加钳位二极管。

6.3 输入悬空:比你想的更容易出怪问题

LM393 的两个输入端如果悬空,输出状态完全不确定。不要觉得"反正有上拉电阻,输出总归有个状态",实际上悬空输入端会感应周围电场和电源噪声,输出可能缓慢漂移、随机抖动,甚至以几十赫兹的频率自激振荡。

比较器所有输入都必须接到确定的电位上。用不到的那一路比较器,规范做法是把同相输入和反相输入短接到地,或者短接到 VCC,输出悬空。注意不是把未用输入直接悬空不管,而是给它一个明确的电平。把同相和反相短接再接到某个固定电位,这路比较器就不会乱翻,也不会消耗额外电流。

这一点在双比较器芯片上尤其常见,很多人只用一路 LM393,另一路闲置,结果整板出现莫名其妙的电流波动和噪声,查好久才发现是闲置那路在振荡。

6.4 输出电流能力:低电平能吸,高电平全靠外部

再强调一遍输出的不对称性。LM393 输出低电平时,内部管子导通,可以吸收毫安级电流。数据手册标注的低电平输出电压条件通常是 4mA,此时 VOL 典型值在 0.2V 左右,还能接受。但如果你让它吸收 20mA 或者更大电流,压降会明显上升到零点几伏,这时候后级逻辑电路可能认为它还是低电平,也可能处于模糊地带。

所以凡是驱动 LED、蜂鸣器、继电器线圈这类负载,都要算计一下电流。LED 限流到 5mA 左右直接接输出没问题,蜂鸣器如果超过 10mA,建议加三极管扩流。继电器线圈电流动不动几十上百毫安,绝对不要直接接在输出上,必须用三极管或 MOSFET 驱动。

6.5 电源去耦:防止翻转瞬间的"地弹"

最后一个问题,平时未必会暴露,但一旦出现就特别隐蔽。比较器输出翻转的瞬间,内部电流变化非常快,如果电源走线较长或者去耦电容不足,供电电压会产生毛刺。这个毛刺通过分压电阻耦合到参考电压端,进而被比较器自己误判,形成输出抖动或者振荡。

解决方法是老生常谈但极其有效:在 LM393 的电源引脚(8脚)和地(4脚)之间,就近放置一只 100nF 陶瓷电容,有条件的话并联一只 10μF 左右的电解电容。这个电容的位置离芯片越近越好,千万别放在面包板另一头,去耦电容最忌讳的就是引线过长。我自己做板子时,习惯在芯片封装的正下方直接放 100nF,效果最稳。

电源去耦这件事,很多人觉得是"玄学",其实原理很实在:比较器翻转时产生的瞬态电流需要低阻抗回流路径,去耦电容就是给这个电流提供就近的蓄水池,避免它去远处电源端绕一圈,把噪声撒得满板都是。


最后再分享一个我自己的习惯:无论多简单的 LM393 电路,我都不会省掉那两个 100nF 去耦电容和上拉电阻,也不会让任何一个输入脚悬空。这颗芯片本身很皮实,出问题的几乎都是外围电路设计时省了不该省的东西。多做几步,省下的调试时间远比你想象的要多。

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

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

立即咨询