|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
数字逻辑门可用于连接到外部电路或设备,但必须注意确保其输入或输出正确运行并提供预期的开关条件。' h) W, W" l( D
5 x+ q ~6 n. D( }! n; h9 Q
现代数字逻辑门,IC和微控制器包含许多称为“引脚”的输入以及一个或多个输出,这些输入和输出需要正确设置(高电平或低电平),数字电路才能正常工作。
( O8 W+ D0 J2 b! I我们知道逻辑门是任何数字逻辑电路中最基本的组成部分,并且通过使用“与”门,“或”门和“非”门这三个基本门的组合,我们可以构建相当复杂的组合电路。但是这些电路是数字的,只能具有两个逻辑状态之一,称为逻辑“ 0”状态或逻辑“ 1”状态。
8 Z: A6 n; U. c" v2 w( ?% O. |* y+ o3 I9 U
这些逻辑状态由两个不同的电压电平表示,低于一个电平的任何电压都被视为逻辑“ 0”,而高于另一个电平的任何电压都被视为逻辑“ 1”。因此,例如,如果两个电压电平分别为0V和+ 5V,则0V代表逻辑“ 0”,而+ 5V代表逻辑“ 1”。
# ?! ?0 J& ?. {4 [9 g$ E" z如果数字逻辑门或电路的输入不在可感知为逻辑“ 0”或逻辑“ 1”输入的范围内,则数字电路可能会误触发,因为门或电路未将其触发。识别正确的输入值,因为“高”可能不够高或“低”可能不够低。. ^, E) [, M, q9 g) x& N
例如,考虑左侧的数字电路。两个开关“ a”和“ b”代表通用逻辑门的输入。当开关“ a”闭合(ON)时,输入“ A”接地(0v)或逻辑电平“ 0”(LOW);同样,当开关“ b”闭合(ON)时,输入“ B”也被连接到地面,逻辑电平“ 0”(低),这是我们要求的正确条件。8 Z& P5 B2 P1 Y |5 A( F
% R. ~. B( `* \6 U* ]$ K4 U但是,当打开“ a”开关(OFF)时,施加到输入“ A”(高或低)的电压值是多少?我们假设它将是+ 5V(HIGH),因为开关“ a”已开路,因此输入“ A”没有接地短路,但事实并非如此。现在,由于输入已有效地从定义的HIGH或LOW条件断开连接,因此它有可能在0V至+ 5V(Vcc)之间“浮动”,从而允许输入在任何电压电平下自偏置,无论它代表HIGH还是HIGH。低状态。
+ [* R8 t# x% s$ s
4 t' X9 Y Y8 @) a2 w0 i; F这种不确定的情况可能导致开关断开时,“ A”处的数字输入保持在逻辑电平“ 0”(低),而当我们实际上需要逻辑“ 1”(高)时,会导致逻辑门错误地进行开关。输出为“ Q”。同样,一旦到达那里,这个浮动且微弱的输入信号就可以轻易地改变其值,即使它受到来自其相邻输入的干扰或噪声的影响也很小,甚至可能导致其进入振荡状态,从而使门实际上无法使用。关于输入“ B”的切换,同样的情况也适用。
8 Z- F; y2 a: i# e: x2 C然后,为防止数字电路的意外切换,应将任何未连接的输入(称为“浮动输入”)与适用于该电路的逻辑“ 1”或逻辑“ 0”绑定在一起。我们可以通过通常使用的上拉电阻和下拉电阻为输入引脚提供定义的默认状态,即使开关断开,闭合或没有任何连接,我们都可以轻松实现此目的。. A+ }6 A1 P& X' X7 ^
9 t/ _- x4 ^4 N% t$ q! ~
构建数字电子电路时,通常在单个IC封装中会留有一些备用门或锁存器,否则电路的设计会导致并非所有多输入门的输入都被使用。这些未使用的逻辑输入可通过高值电阻连接至Vcc电压(称为上拉)或通过低值电阻连接至0V(GND)(称为下拉),从而连接在一起或连接至固定电压。这些未使用的输入绝对不能随意浮动。
! v. g; W$ D1 e) Z Q3 f0 o( V& o$ Q, c0 E4 u6 I$ D1 o
上拉电阻确保数字逻辑门和电路的输入不会自偏置和浮动的最常见方法是将未使用的引脚直接接地(0V)以得到恒定的低“ 0”输入(或门或或非门) )或直接连接到Vcc(+ 5V),以获得恒定的高“ 1”输入(与门和与非门)。好的,让我们从上方再次看一下我们的两个开关输入。$ A5 w8 J" E' B% x# w- {
这次,为了阻止两个输入端A和B在相应开关“ a”和“ b”断开(OFF)时“浮动”,两个输入端连接到+ 5V电源。7 Z2 }; U7 U% c- Z1 H0 I" c8 i
0 l3 D2 P3 r. @% l. P. O% Q您可能会认为这样做会很好,因为当开关“ a”打开(OFF),输入连接到Vcc(+ 5V),并且当开关闭合(ON),输入像以前一样接地时,输入“ A”或“ B”始终处于默认状态,而与开关的位置无关。0 _' O4 o5 |' v6 t
3 y' k3 t0 |9 f' [: U+ u1 f
但是,这是一个糟糕的情况,因为当两个开关中的任何一个都闭合(ON)时,+ 5V电源和地之间都会存在直接短路,从而导致过多的电流流过熔断保险丝或损坏未导通的电路。好消息。解决该问题的一种方法是使用上拉电阻,如图所示,该上拉电阻连接在输入引脚和+ 5V电源轨之间。 T$ Z2 C; Q, k4 y2 L
上拉电阻应用
3 O4 y4 A. E# j8 o通过使用这两个上拉电阻,每个输入一个,当开关“ A”或“ B”断开(OFF)时,输入通过上拉电阻有效地连接到+ 5V电源轨。结果是,由于只有很少的输入电流流入逻辑门的输入,因此上拉电阻上的压降很小,因此几乎所有+ 5V的电源电压都施加到了输入引脚,从而产生了高电平,逻辑“ 1”条件。, Z2 [6 m% G6 y/ g# U6 a3 V
8 M3 i/ Q, ~. _! E1 o- r2 {3 [+ O当开关“ A”或“ B”闭合时,(ON)输入会短路接地(LOW),从而在输入端产生逻辑“ 0”状态。但是,这一次我们没有将电源轨短路,因为上拉电阻仅通过闭合的开关流到地面的电流很小(由欧姆定律确定)。! p2 n, w0 S0 r' k3 J! W
/ [. Z; h1 `* W9 |( E
通过以这种方式使用上拉电阻,输入始终具有默认逻辑状态,根据开关的位置为高或低的“ 1”或“ 0”,从而实现门的正确输出功能在“ Q”处,因此可以防止输入浮动或自偏置,从而为我们提供了所需的准确开关条件。2 x. C0 i) O/ e2 o
' W0 _9 R- Y8 W; n+ z
尽管Vcc和输入(或输出)之间的连接是使用上拉电阻的首选方法,但由于我们如何计算确保输入正确运行所需的电阻值而引起了一个问题。
4 S3 {+ |/ q+ X3 C
7 H8 y6 V% S6 p计算上拉电阻值所有数字逻辑门,电路和微控制器不仅受到其工作电压的限制,而且还受到每个输入引脚的电流吸收和拉出能力的限制。数字逻辑电路使用通常由两个不同电压表示的两个二进制状态进行操作:逻辑“ 1”的高电压V H和逻辑“ 0”的低电压VL。但是,在这两个电压状态的每一个中,都有一定范围的电压,这些电压定义了这两个二进制状态的上,下电压。
! d. J. r0 o8 ]9 }( }5 F) s; B2 G因此,例如,对于TTL 74LSxxx系列数字逻辑门,显示了代表逻辑电平“ 1”和逻辑电平“ 0”的电压范围。
4 j( w( z8 \ H' |2 C: t' W2 h" W5 H/ i
其中:V IH(min) = 2.0V是保证被识别为逻辑“ 1”(高)输入的最小输入电压,而V IL(max) = 0.8V是保证被识别为逻辑的最大输入电压“ 0”(低)输入。
5 S; O1 s' v& e0 V: f3 E换句话说,在0和0.8V之间的TTL 74LSxxx输入信号被认为是“低”,而在2.0和5.0V之间的输入信号被认为是“高”。介于0.8到2.0伏之间的任何电压都不会被识别为逻辑“ 1”或逻辑“ 0”。; k5 v+ A2 {" i h3 F ?) f4 }. F/ y
/ E' X" r& p: j
当逻辑门连接在一起时,电流在一个逻辑门的输出与另一逻辑门的输入之间流动。基本TTL逻辑门输入所需的电流量取决于输入是逻辑“ 0”(低)还是逻辑“ 1”(高),因为这会为逻辑“ 0”产生电流源动作,并且逻辑“ 1”的灌电流动作。
( c K u' Q6 T当逻辑门的输入为高电平时,电流流入TTL输入,因为该输入基本上充当直接接地的路径。该输入电流I IH(max)为正值,因为它“流入”栅极,并且对于大多数TTL 74LSxxx输入,其值为20μA。
; |4 G! |3 O9 i% u' H+ {- N! l, u7 b1 D+ V
同样,当逻辑门的输入为LOW时,电流从TTL输入流出,因为该输入基本上充当直接连接至Vcc的路径。该输入电流I IL(max)为负值,因为它“流出”门,并且对于大多数TTL 74LSxxx输入,其值为-400μA(-0.4mA)。
; R$ N9 c& p6 Q/ S0 E( m$ c& Y+ |- W9 E1 e* X4 ?# d" {* V# L4 M
请注意,TTL逻辑系列之间的高电压和低电压和电流值不同,而对于CMOS逻辑系列来说,其值要低得多。此外,微控制器,PIC,Arduino,Raspberry Pie等的输入电压和电流要求也将有所不同,因此请先查阅其数据手册。& v$ R1 w( W# J% {9 b$ x
) x& U$ H; L* E; Z- @1 }# Z9 p# y通过了解上述信息,我们可以将单个TTL 74LS系列逻辑门所需的最大上拉电阻值计算为:
2 N0 v/ N# Q% h, U单栅极上拉电阻值; T* V9 G. o4 `. U" ^6 X6 \
然后使用欧姆定律,单个TTL 74LS系列逻辑门降低3伏所需的最大上拉电阻将为150kΩ。尽管该计算值可以工作,但由于电阻两端的压降最大,而输入电流最小,因此没有误差的余地。
4 A# a0 Y7 r1 ?7 X5 j7 O# T
; x, W' r" c O0 Q理想情况下,我们希望逻辑“ 1”尽可能接近Vcc,以保证100%的门通过上拉电阻输入为HIGH(逻辑1)。如果电阻的容差或电源电压不是计算得出的,减小该上拉电阻的电阻值将为我们提供更大的误差容限。但是,我们不希望电阻值太低,因为这会增加流入栅极的电流,从而增加功耗。- Q, W1 D7 q- L/ p$ f
/ ?, W2 O: Y$ a因此,如果我们假设电阻两端的压降仅为1伏(1.0V),而在4伏时给出的输入电压是该电压的两倍,那么快速计算将得出单个上拉电阻值为50kΩ。进一步降低电阻值,将产生较小的电压降,但会增加电流。然后我们可以看到,尽管可能存在最大允许电阻值,但上拉电阻的电阻值通常并不那么关键,可接受的电阻值范围在10k到100k欧姆之间。) r5 R& f5 r8 a4 N3 x
7 d S3 A% G. }1 l+ B6 p2 }, H
上面的简单示例为我们提供了偏置单个TTL门所需的上拉电阻的最大值。但是我们也可以使用相同的电阻将多个输入偏置到逻辑“ 1”值。例如,假设我们已经构建了一个数字电路,并且有十个未使用的逻辑门输入。作为单个标准TTL 74LS门,输入电流I I (max)为20μA(也称为1扇入),那么十个TTL逻辑门将需要的总电流为:10 x20μA=200μA,代表一个扇入10。' G0 w* l. Q0 j! }! k/ V& T0 ^2 [
) J# D- C( y4 j
因此,为十个未使用的输入供电所需的上拉电阻的最大电阻值将计算如下:$ M( Q6 |6 k; v: u& z
多栅极上拉电阻值9 m+ C( i- x3 p0 b2 W
此处的扇入为10,但如果将“ n”个TTL输入连接在一起,则流经电阻的电流将是“ n”乘以I H(max)。同样,该15kΩ电阻可能是精确计算出的值,但没有误差的余地,因此将电压降降低到1伏(或您想要的任何值)时,电阻值仅为5kΩ。& V, p, q6 p# a% J0 E/ P1 M
' I6 F# v' b. W0 A8 `8 {上拉电阻示例1两个TTL 74LS00 NAND门以及一个单刀双掷开关将用于制作一个简单的置位双稳态触发器。计算:1)。如果代表逻辑高电平输入的电压在开关断开时保持在4.5伏,则最大上拉电阻值; 2)。开关闭合时流过电阻的电流(假设零接触电阻)。还要画电路。% x' ^" d( x. o4 @ _% M' B4 a
& k( ]2 q, f( ]给出的数据:Vcc = 5V,V IH = 4.5V,IH(max) =20μA! I0 p0 {4 P/ e# \8 t" L
1)。上拉电阻值,R MAX s; I2 b/ V( R
2)。电阻电流I R
* n3 w( F$ N# M P7 ]5 W! ?8 ?) b置位复位双稳态电路下拉电阻上拉电阻与上一个上拉电阻的工作方式相同,只不过这次逻辑门输入接地,逻辑电平为“ 0”(低电平),或者通过机械开关操作可能变为高电平。 。这种下拉电阻器配置对于锁存器,计数器和触发器等数字电路特别有用,这些数字电路在开关暂时闭合以引起状态变化时需要正向一次触发。5 w( V( H6 z% w
; N5 f8 Z# M: p7 J* N3 n
尽管它们似乎与上拉电阻器的工作方式相同,但无源下拉电阻器的电阻值对于TTL逻辑门而言比与类似的CMOS门相比更为关键。这是因为TTL输入处于LOW状态时会从其输入中获取更多电流。
2 y5 F% l) A4 F0 D3 v0 D8 Z, e) Z6 t3 `
从上方我们可以看到,代表TTL 74LSxxx系列逻辑门的逻辑“ 0”(低)的最大电压电平在0至0.8伏之间(V IL(MAX) = 0.8V)。同样在LOW时,栅极将电流供应到400μA的值(I IL =400μA)。因此,单个TTL逻辑门的最大下拉电阻值计算如下:
* t. A4 \: J3 K. @9 p单栅极下拉电阻值
X( l) W. S+ W K然后,最大下拉电阻值计算为2kΩ。同样,与上拉电阻的计算一样,由于压降最大,因此该2kΩ电阻值没有误差的余地。因此,如果电阻太大,则下拉电阻两端的电压降可能会导致栅极输入电压超出正常的LOW电压范围,因此,为了确保正确开关,最好将输入电压设为0.5伏或更低。
$ S% n% R' I+ e! a5 _4 e
, c- n/ E* T7 _" }2 y因此,如果我们假设电阻两端的压降仅为0.4伏,那么快速计算将得出一个1kΩ的下拉电阻值。进一步降低电阻值,将产生较小的压降,从而使输入进一步接地(低)。数据手册中的400μA或0.4mA(I IL)值是最小的LOW电流值,但可能更高。
: f; j7 y" R" I/ W同样,将输入连接在一起会导致流经电阻的电流更大。例如,扇入10将导致10 x400μA= 4.0mA,需要100Ω的下拉电阻。; s' z; ]/ X6 M
' Z) e9 h2 ^" f3 j" ?& ^但是您可能会想,当直接接地(0V)会产生所需的LOW时,为什么要完全使用下拉电阻?在没有下拉电阻的情况下,直接接地可以在大多数情况下正常工作,但是由于栅极输入端永久接地,因此使用电阻器可以限制从输入端流出的电流,从而降低功耗,同时仍保持低功耗。逻辑“ 0”条件。
' c' b" j* W* |; s8 T7 @$ t. W$ k# R$ p2 _
集电极开路输出到目前为止,我们已经看到可以使用上拉电阻或下拉电阻来控制逻辑门的电压电平。但是我们也可以在栅极输出端使用上拉电阻,以允许连接不同的栅极技术,例如将TTL连接到CMOS或用于需要更高电流和电压的传输线驱动应用。
- g& ^8 n2 K* A/ ?
7 Z* \' t) P8 m; D为了克服这个问题,制造了一些逻辑门,并在门的集电极内部打开了输出电路,这意味着逻辑门实际上并没有驱动输出高电平,而只是驱动低电平,因为外部上拉电阻器会这样做。其中一个示例是TTL 74LS01,四路2输入与非门,具有集电极开路输出,与标准TTL 74LS00的四路2输入与非门相反。
4 Y4 o3 L, l& Z
7 J( J6 m' }! U( `6 b集电极开路(OC)或CMOS的漏极开路输出通常用于缓冲器/反相器/驱动器IC(TTL 74LS06、74LS07),与普通逻辑门相比,具有更大的输出电流和/或电压能力。例如,用于驱动较大的负载,例如LED指示灯,小型继电器或直流电动机。无论哪种方式,上拉电阻的原理和使用都与输入几乎相同。
' F) @8 C% M1 [% t4 U$ y5 W2 l" D" b具有集电极开路输出的逻辑门,微控制器和其他此类数字电路无法将其输出拉高,因为没有内部通往电源电压(Vcc)的路径。这种情况意味着它们的输出在LOW时接地或在HIGH时悬空,因此需要从下拉晶体管的集电极开路端子到Vcc电源连接一个外部上拉电阻(Rp)。0 j/ \& V) ^# q
3 A" I! o' L* Q) f. }: U
在连接上拉电阻的情况下,输出仍与常规逻辑门相同,因为当输出晶体管截止(打开)时,输出为HIGH,而当晶体管导通(闭合)时,输出为低。因此,晶体管导通以将输出拉至低电平。- F6 y& O9 I, o
/ l: y% e8 X& S" K- X/ p
上拉电阻的大小取决于所连接的负载以及晶体管截止时电阻两端的压降。当输出为低电平时,晶体管必须能够通过上拉电阻吸收负载电流。同样,当输出为高电平时,流经上拉电阻的电流必须足够高,以连接到其上的任何元件。6 Z: f9 D- M& Y! ^8 u7 R% a) M7 q: e
$ T2 n( p% H' j1 N/ u! R% F正如我们之前在输入中看到的那样,数字逻辑门的输出使用两个二进制状态运行,这些状态由两个不同的电压表示:逻辑“ 1”的高电压V H和逻辑“ 0”的低电压VL。在这两个电压状态的每个状态中,都有一定范围的电压定义了它们的上,下电压。9 i9 m- O7 E6 B6 K% l
: m0 N+ [! y2 B, H( v0 uV OH(min)是保证被识别为逻辑“ 1”(高)输出的最小输出电压,对于TTL,此输出电压为2.7伏。V OL(max)是保证被识别为逻辑“ 0”(低)输出的最大输出电压,对于TTL,该输出电压为0.5伏。换句话说,TTL 74LSxxx在0到0.5V之间的输出电压被认为是“低”,而在2.7到5.0V之间的输出电压被认为是“高”。4 J) I x) O& I9 w6 U! d& H' o
因此,当使用集电极开路逻辑门时,所需的上拉电阻器的值由以下公式确定:
1 u" x" a) `7 D" U集电极上拉电阻值+ g9 J2 l2 r- e& v6 o5 [
对于7401集电极开路NAND的值给出为:Vcc = 5V,V OL = 0.5V,I OL(max) = 8mA。请注意,计算合适的上拉电阻Rp非常重要,因为流经该电阻的电流不得超过I OL(max)。, v" |. }1 g5 ^3 D4 q* j# c6 S5 b
4 U9 n' ~% k! \; N: \6 D我们之前说过,集电极开路逻辑门非常适合驱动需要较高电压和电流水平的负载,例如LED指示器。TTL 74LS06十六进制反相器缓冲器/驱动器的I OL(max)额定值为40 mA(而不是74LS01的8mA),而V OH(max)额定值为30 V,而不是通常的5 V(但IC本身必须使用5V电源)。然后74LS06将使我们能够驱动高达40mA的负载。
! B1 ]( s$ O( O0 |& i
3 Y6 |5 V6 d7 J6 e) k& Q, n上拉电阻示例2需要一个74LS06六角逆变器驱动器来控制来自12伏电源的单个红色LED指示灯。如果LED在1.7V压降下需要15mA电流,并且当HEX逆变器的全开状态下的V OL为0.1伏时,请计算驱动LED所需的限流电阻值。
0 u) W- A _; f: \! B
/ l# w* D) Z# J" j2 ~我们可以以类似的方式使用集电极开路驱动器来驱动小型机电继电器,灯或直流电动机,因为这些设备通常需要5V或12V或更高的电压,才能以大约10至20 mA的电流正常工作。* p! C' T& P/ A# G- d4 Y" C
2 {) [ ?) ^3 C3 T/ ]6 @8 ATTL门的两个或多个集电极开路输出可直接连接在一起,并通过单个外部上拉电阻连接。结果是,当组合的行为就像门与“与”门相连时,输出有效地进行了“与”运算。这种配置称为有线与逻辑。
! Z5 |5 K9 |4 F* Z9 ?上拉电阻汇总我们在本教程中看到了有关无源上拉和下拉电阻的信息,这些电阻在保持开路状态时,数字逻辑门的输入可能会自偏置或浮动到他们选择的任何逻辑电平,并且可以追踪许多开关错误回到未连接的和悬空的输入引脚。
3 E; {9 u( D* b, j& n上拉电阻将未使用的输入引脚(与门和与非门)连接至直流电源电压(Vcc),以保持给定输入为高电平。下拉电阻将未使用的输入引脚(“或”或“或非”门)连接到地面(0V),以保持给定的输入低电平。上拉电阻的电阻值通常不是那么关键,但必须将输入引脚电压保持在V IH以上。通常使用10kΩ上拉电阻,但阻值范围可从1k到100k欧姆。8 A, b1 |+ m' @/ B
) U$ e/ k2 _" X2 X. D/ [
由于低输入电压电平V IL(max)和较高的I IL电流,下拉电阻的要求更为严格。最常用的是100Ω下拉电阻,但其电阻值范围从50到1k欧姆。1 j6 o! I8 v6 _. ^
- c* G$ ~: p' c5 O, a( l( {- |具有集电极开路(对于TTL逻辑而言)输出或数字漏极开路(对于CMOS逻辑而言)输出的数字逻辑门需要连接至其输出引脚与直流电源之间的外部上拉电阻使逻辑门执行预期的逻辑功能。
& D. z; ~" n" y3 G) x3 I! Q( T" M& A8 I. w
使用集电极开路/漏极开路的优势在于它们能够切换更高的电压和电流,或者能够提供有线“与”运算。一些集电极开路栅极(例如74LS06)能够驱动更大的负载,因为它们的输出可以通过外部上拉电阻连接到高达30伏的电源。4 z. U" n( L: O5 h
3 h1 _" L+ }; Y |
|