- 课程目录
- 相关资源
- 课程笔记
大家好,欢迎观看TI 高精度实验室
视频系列,其中介绍比较器应用。
比较器的作用是比较两个模拟输入
信号并根据该比较生成数字或逻辑
电平输出。
在本视频中,我们将讨论模拟比较器的
基本功能及其部分主要规格,
其中包括输入失调电压或 VOS。
让我们首先介绍比较器的
基本功能。
与标准运算放大器类似,比较器具有
两个输入、一个输出以及两个电源引脚。
从原理图的角度而言,它与运算放大器类似,
但其预期功能大不相同。
比较器之所以得此名称,是因为它比较
施加到其输入端的电压并根据输入
电平来设置其输出电压。
一个输入被视为主输入信号
或 VIN。
另一个输入被
视为基准信号 VREF。
这些输入可能具有直流和交流分量。
可以将输出电压 Vout设置为两种电平之一 --
高电平或逻辑 1,或者低电平或逻辑 0。
输出高电平VH 接近于
V+,即正电源电压。
输出低电平VL 接近于 0
伏或接地,或双电源配置中的负电源。
该幻灯片中显示的比较器
针对同相操作进行了配置。
在该情况下,输入信号 VIN
连接到同相输入
+IN,基准信号 VREF
连接到反相输入 -IN。
如果 VIN 大于 VREF,则比较器输出为高电平。
如果 VIN 小于 VREF,则比较器输出为低电平。
比较器还可以用于反相配置。
在该情况下,输入信号 VIN
连接到反相输入 -IN,
基准信号 VREF
连接到同相输入 +IN。
由于我们定义输入
信号方式的改变,可以将输出行为
视为反相。
现在,如果VIN 大于 VREF,
那么比较器输出为低电平。
如果 VIN 小于 VREF,则输出为高电平。
让我们来看看双极比较器
LM139 的简化内部设计。
此处的目标不是讲授晶体管理论
或比较器设计的详细工作原理,
而是为您提供有关比较器如何工作的一般概念。
蓝色框中所示的输入级
包含一个 PNP差分放大器。
该差分级的每侧都使用
达林顿 PNP 晶体管。
使用达林顿连接晶体管
可增大输入阻抗,降低输入偏置电流,
允许共模输入电压
向下扩展至 0 伏。
该级中每个晶体管的发射极电路中都具有
电流源,用于设置发射极电流。
差分输入级中晶体管的集电极
连接到用作动态负载的
NPN 晶体管,如青绿色部分所示。
最后,动态负载级的输出耦合到 NPN
驱动器和集电极开路输出级,如紫色
部分所示。
在比较器的正常运行期间,
差分输入信号+IN 减去 -IN
由输入差分放大器的电压
增益进行放大。
该差分级的输出在 T6 上形成,
并用于打开或关闭输出级,
具体取决于输入极性。
为了更好地理解内部功能,现在
让我们向该比较器施加一些变化的输入
信号,并查看内部电压在各个级
是如何变化的。
在该示例中,我们将使用
采用反相配置的比较器,VREF 连接到
+IN,VIN 连接到 -IN。
让我们首先向 +IN施加 2.5 伏的基准
电压,向 -IN 施加2.4 伏的输入信号。
那么我们要将 2.4 伏与 2.5 伏基准进行比较。
这些电压以红色显示在各个节点上。
底部提供了输入为 2.4 伏的情形。
查看 -IN,可以发现连接到
差分输入对的该侧的晶体管
连接到动态负载晶体管 T6。
T6 集电极处的电压等于由
晶体管 T7 的基极-发射极
电压钳制的 0.3 伏。
晶体管 T7 现在处于导通状态,从而通过
下拉晶体管 T8 的基极电压而将其关闭。
由于 T8 关闭,因此其集电极
看起来具有高阻抗,比较器的
输出电压被连接到
正电源的 2千欧上拉
电阻器拉高。
现在,让我们在 +IN 上保持2.5 伏的基准,
但将 -IN 上的输入信号更改为 2.65 伏。
我们现在要将 2.65 伏与 2.5 伏基准进行比较。
晶体管 T4 和 T6将导通并饱和,
从而使 T6 上的电压变得很低。
T7 现在关闭,从而允许 T8 完全导通
并将比较器输出电压向下驱动至约 0 伏,
即逻辑低电平。
比较器根据其输出级设计
分为两种主要的类型。
这两种类型称为漏极开路或集电极开路和
推挽,也称为漏极-漏极,
我们的集电极-集电极。
集电极开路和集电极-集电极
比较器是使用双极晶体管构建的。
而漏极开路和漏极-漏极比较器是使用 FET
构建的。
左侧的比较器和前一张幻灯片中的
LM139 示例具有集电极开路
输出以及包含单个 NPN 双极
晶体管的输出级。
当该晶体管导通时,它会主动地将电流
从集电极灌入到发射极,并将输出
电压 VO 下拉至非常接近于接地,即 0 伏。
输出摆动至接近于接地的
程度取决于集电极-发射极
饱和电压。
当晶体管关闭时,其集电极看起来
具有高阻抗,对输出电压
基本上没有影响。
在这种情况下,会通过上拉
电阻器从 V+拉取较小的电流,
VO 升至 VOH,即我们的逻辑 1。
如果不使用该上拉电阻器,则 VO
可能会浮动至未知状态。
另一方面,推挽比较器具有
包含一对输出晶体管的
输出级。
该晶体管对中的上部或下部晶体管
会导通,并主动拉取或灌入电流,以根据
需要将输出驱动至高电平或低电平。
在右侧的示例中,P 沟道上部 FET
导通,以拉取电流并将输出
推至高电平。
同时 N 沟道下部 FET 导通,
以灌入电流并将输出拉至低电平。
该类型的比较器不需要上拉电阻器。
比较器的常见期望功能是生成逻辑“或”,
当其两个输入中的
任一个打开时,输出为逻辑低电平。
该功能块通常可以通过将
两个比较器的输出连接在
一起来实现。
不过,必须注意使用正确类型的比较器,
我们以后会讨论这一点。
让我们首先考虑左侧的电路,
该电路具有两个输出连接在一起的推挽器件。
请记住,推挽比较器会主动
拉取或灌入电流,以将其输出电压推高或拉低。
您可能已经看出该电路
配置的问题。
但让我们来分析一下其运行的不同可能性。
如果两个比较器的输出都为高电平,
那么每个推挽输出级中的顶部
晶体管会导通,输出被驱动为高电平。
类似地,如果两个输出都为低电平,
那么每个比较器中的底部晶体管会导通,
输出被驱动为低电平。
当两个比较器试图将输出驱动为不同的
状态时,问题就出现了。
在这种情况下,会发生冲突,
因为每个比较器都试图拉取或灌入
电流,以强制输出变为不同的电压。
这会导致出现高电流情况,从而将输出驱动至
某种不确定的状态,可能是高电平,
也可能是低电平。
正如您可以想象的那样,
该情况是不利的,甚至可能损坏器件。
因此,绝对不应以这种方式
将推挽比较器连接在一起。
另一方面,集电极开路或漏极开路
比较器可以在该方法下很好地工作。
请记住,集电极开路或漏极开路比较器的
输出级是使用单个晶体管
构建的,该晶体管在导通时会将
输出拉低,在关闭时看起来具有高阻抗。
现在,无论每个输出上存在哪种
高电平或低电平组合,
都会安全地将输出驱动至已知状态。
如果两个输出都为低电平,那么两个
输出晶体管都会导通,将总体输出
向下拉至大约 0 伏。
如果两个输出都为高电平,那么两个
晶体管都关闭,看起来具有高阻抗,
从而允许通过上拉电阻器将输出向上拉至
逻辑高电平。
如果一个输出为高电平,一个输出为低电平,那么
低电平状态将处于支配地位,因为与上拉
电阻器可以提供以尝试将输出驱动为高电平的
电流相比,导通的晶体管能够灌入的电流要大得多,
从而将输出拉低。
您可以查看右侧的真值表,以了解
全部四种可能输入状态下的逻辑行为。
正如您可以看到的,这等效于逻辑“或”
功能。
该采用比较器的逻辑“或”实现
通常称为线或配置。
我们最后将讨论比较器直流参数,
从而结束该系列的第一个视频,任何
了解运算放大器的人都应非常熟悉
这些参数。
该图显示了基本比较器原理图,
以及众多最常见的直流参数,其中
包括输入失调电压或 VOS,表示为
与同相输入串联的电压源;
输入偏置电流或 IB;以及输入
偏置电流或IOS,表示为流入
或流出比较器输入的电流源;
输入共模电压范围
或 VCM,在输入晶体管饱和
或截止之前允许的输入共模电压范围,
在现代器件上通常从一个电源轨扩展至
另一个电源轨;输入差分电压范围
或 VDFF,+IN和 -IN 上
允许的差分电压最大值;
电源轨的电压输出高电平
或 VOH;相对于正电源的最大逻辑
高电压;电源轨的电压输出低电平或 VOL,
相对于接地或负电源的
最小逻辑低电压;输出短路电流
或 ISC,输出级晶体管可以
拉取或灌入的最大输出电流;
静态电流或 IQ,当输出
电流为 0 时器件的典型
电流消耗;电源电压
范围或 VS,指定操作的允许电源
电压范围。
可以指定其他参数,
如开环增益、电压
温漂、共模抑制和电源
抑制。
但相对于上述规格而言,它们
对于比较器的重要性要低一些,因此较少予以考虑。
最关键的直流规格之一
是输入失调电压 VOS。
由于比较器的VOS 会生成
与同相输入串联的附加
直流电压,因此它对比较器输出更改
状态的阈值有重大的影响。
让我们来分析一下具有三种
不同 VOS 值的同相比较器电路,从而
更好地了解该影响。
请记住,对于同相比较器,
如果 VIN 大于 VREF,Vout 将为高电平,
如果 VIN 小于 VREF,Vout 将为低电平。
在该示例中,我们将向反相输入施加 2.5 伏的
基准电压。
正如您在右侧图的深蓝色波形中看到的,
输入信号是缓慢移动的
斜坡,从 2.46伏转换为
2.54 伏。
失调电压会增加输入信号,
以生成等于VIN 加 VOS 的总
有效输入信号。
如果 VOS 等于 0,那么总输入
电压等于 VIN 加 0,电路会正常运行。
当 VIN 大于 2.5 伏时,Vout 为高电平。
当 VIN 小于2.5 伏时,
Vout 为低电平,如红色波形所示。
如果 VOS 等于正 10 毫伏,
那么总输入电压等于 VIN
加 10 毫伏。
现在,输出将在更低的 VIN
电压下进行转换,因为通过 VOS 增加的
电压使总输入电压能够更早地达到 2.5 伏。
您可以在橙色波形中看到,
当 VIN 大于 2.49 伏时,Vout 为高电平,
当 VIN 小于 2.49 伏时,Vout 为低电平。
最后,如果 VOS等于负 10 毫伏,
那么总输入电压等于 VIN
减 10 毫伏。
现在,由于负 VOS减去了一部分电压,
因此输出将在更高的VIN 电压下进行转换。
您可以在淡蓝色波形中看到,
当 VIN 大于 2.51 伏时,Vout 为高电平,
当 VIN 小于 2.51 伏时,Vout 为低电平。
请记住,不仅是阈值电压会因
VOS 而变化,输出波形的时序也会
受到影响。
例如,当 VOS等于正 10 毫伏时,
输出波形会持续大约600 毫秒保持高电平。
当 VOS 等于负 10 毫伏时,
输出波形保持高电平的时长会小于 400 毫秒。
该时序行为可能会在特定的设计中引发问题,
但本示例中极缓慢移动的输入信号会导致
最糟糕的情形。
为了帮助防止产生这些类型的误差,
可以增大输入信号的频率。
许多习惯于使用现代运算放大器
进行设计的工程师可能会
习惯于微伏级至几毫伏范围内的失调电压。
比较器通常具有稍高的
失调电压,其范围为
大约正负2 毫伏至
正负 15 毫伏。
在某些情况下,比较器的失调电压
可能会完全改变其输出信号。
考虑左侧显示的电路,
一个反相比较器,其输入信号由
数模转换器或 DAC 进行提供。
数模转换器会生根据数字
代码成模拟电压或电流。
因此其输出通常看起来随时间的推移在不同的
直流电压之间转换。
让我们来分析一下当我们提供
1.25 伏基准电压并且失调电压
从正 5 毫伏变为0 毫伏再变为
负 5 毫伏时该电路的输出。
在该电路中,将VOS 添加到 VREF,
因此总有效基准电压变为 VREF 加 VOS。
当 VOS 等于正 5 毫伏时,
总基准电压等于1.25 伏加 5 毫伏,
或 1.255 伏。
由于基准电压增加,因此比较器
输出仅在输入波形中两次变低,
如右上角的蓝色图中
所示。
当 VOS 等于 0 伏时,总基准电压等于
1.25 伏。
右侧的红色图中显示了比较器输出。
当 VOS 等于负 5 毫伏时,
总基准电压现在等于 1.25
伏减 5 毫伏,或 1.245 伏。
比较器输出再次改变,右下角的
绿色图对此进行了显示。
该示例的小输入信号范围显示了
由于 VOS 而导致的误差最糟糕情形。
为了防止产生这些类型的误差,
应设法增大相对于失调电压的输入
信号范围。
不过,当输入信号在基准电压附近
波动时,仍然可能会遇到
该类型的行为。
请务必观看该系列中的后续视频,以学习
可帮助防止产生这些类型的
误差的简单但非常有用的技术。
本视频到此结束。
谢谢观看。
请尝试完成测验以检查您对本视频356
课程介绍
共计4课时,52分4秒
猜你喜欢
换一换
推荐帖子
- CCS3.3下28XXDSP代码编译问题
- CCS3.3下28XXDSP代码编译问题 DelayMs(Uint16 t)是利用2812定时器进行延时的函数,定时中断每1ms对全局变量timedelay进行减1处理(为0则不减)。当timedelay由t变为0则跳出函数返回。但程序总是停到这个循环里无法跳出。 原函数为: void DelayMs(Uint16 t) { tim...
- fish001 微控制器 MCU
- msp430的中断优先级和中断嵌套(及容易理解错误的说明)
- 转载于半岛鱼的学习博客 MSP430的中断优先级按所在的向量的大小排列,中断向量地址越高优先级就越大,但是默认的MSP430是不能中断嵌套的,要想在执行某一中断时能够响应更高优先级的中断,需要在低优先级的中断程序中手动打开全局中断便能位,因为在进入中断服务子程序时全局中断便能位被清零,即禁止响应其它中断。 msp430的指令中,DINT和EINT分别指关和开所有中断...
- qinkaiabc 微控制器 MCU
- BeagleBone Black设计:BBB板运行Ti的官方Linux操作系统
- 本帖最后由 anananjjj 于 2014-5-7 16:44 编辑 这几天进行了BBB底板的设计,其实原来我设计的BB板的底板:https://bbs.eeworld.com.cn/thread-376965-1-1.html也能满足BBB板的扩展要求,只不过有些细节上不同,因此在没有焊接好BBB底板的这段时间内,我试着将BBB板在我设计的BB板上运行一次,由于BBB板的系统默认写在flas...
- anananjjj DSP 与 ARM 处理器
- 关于MSP430RAM区存储的问题,请大家帮忙解决下!!!
- 本帖最后由 ena 于 2018-5-19 15:31 编辑 如下图所示:WorkStatus定义的是一个全局变量,在运行到此断点时WorkStatus等于0x22,函数MoveRight4Bit中传入的形参len1等于6,但是函数中 i 怎么就变成了1?然后继续运行,WorkStatus以这种方式变化0x22--0x02--0x00,最终变成0x00....
- ena 微控制器 MCU