上拉电阻和下拉电阻在电路中的作用(一)
- 1.什么是上下拉电阻
- 2.上下拉电阻的作用:
- 2.1.维持输入引脚处于稳定状态。
- 2.2.配合三极管和MOS进行电平转换电路设计
- 2.3.OC、OD电路(Open Collector集电极开路、Open Drain漏电极开路)
- 2.4.总线的IO接口上下拉电阻
- 2.5.增加输出引脚的驱动能力
- 2.6.电平标准匹配
- 2.7.增强电路抗干扰能力
1.什么是上下拉电阻
上拉电阻是把信号通过一个电阻接到电源(VCC),下拉电阻是把信号通过电阻接到地(GND)。
我们经常听说的“强上拉”“弱上拉”,其实强弱只是电阻阻值不同,没有太严格的区分。例如:50Ω上拉电阻称为强上拉电阻,100kΩ上拉电阻成为弱上拉电阻。强拉电阻的极端就是0欧姆电阻,直接将信号线与电源或地相连接。
2.上下拉电阻的作用:
用途广泛,很少有教材对上下拉电阻的应用方法进行总结。
下面是一些常用的使用方法。
2.1.维持输入引脚处于稳定状态。
芯片引脚有3种类型,输出引脚(output,O),输入引脚(input,I),输入输出引脚(input/output,I/O)。输入引脚有3个状态,高电平,低电平和高阻状态。当输入是高阻,即输入引脚悬空时,可能造成输入结果的不定态,引起输出振荡。有些应用场合不希望出现高阻状态,可以通过上拉电阻或下拉电阻时输入引脚处于稳定状态。
输入引脚的上拉电阻
按键电路设计、复位电路设计等都是这种上下拉电阻,至于具体上拉还是下拉,则取决于需要的默认状态。
在CMOS芯片上,为了防止静电造成损坏,不用的引脚不能悬空,一般通过接上拉电阻来降低输入阻抗,提供泄放电荷的通道。
2.2.配合三极管和MOS进行电平转换电路设计
三极管和MOS管的基本原理
当Ube小于0.7V时,三极管处于截止状态,不导通,此时输出为高电平
当三极管处于放大或饱和状态时,Ube=0.7V,
R1属于限流电阻,当三极管处于放大或饱和状态时,Ube=0.7V,根据输入电压计算基极的电流,
Ib=(U=0.7V)/R1
若不接限流电阻R1,则当输入电压大于0.7V时,基极的电流大,会烧毁三极管。
R1的电阻阻值大小,需要根据三极管的特性进行计算。例如,三极管放大倍数β为100.
输出电压Vout=Vcc-Ic*Rc
Vout在Ic等于0时,Vout=Vcc=12V,由于是数字电路,Vout需要到达0V附近,,实现低电平的效果。
如果R2选1kΩ,
Ic=(Vcc-0)/R2=12V/1kΩ=12mA 实际上还要考虑Vce之间大约0.3V的压降。
三极管的通流能力有限,根据datasheet进行参考
如果R2选值太小,会导致Ic太大导致三极管烧毁。
根据公式理解饱和的概念会更容易,即集电极电阻越大(或者Ib电流大),越容易饱和。饱和的现象是:两个PN结均正确,Ic不受Ib的控制了,因为Vcc接近GND了,不可能凭空产生负压。
如果要求输入电压为3.3V,设计时三极管处于饱和状态,则Ic(饱和)=12mA ,Ib(min)=Ic(饱和)/β=0.12mA
基极限流电阻R1(max)=(3.3-0.7)/Ib=21.75KΩ。
如果要求输入电压为3.3V,设计时三极管处于饱和状态,并且要考虑三极管放大倍数β、电阻、Vcc电压的离散型、精度、波动等因素,则阻值选择需要留出足够的余量。此时,一般可能选择R1为1KΩ,让三极管足够饱和。另外R1的阻值不能太小,需要考虑Ib的额定电流。另外R1、R2都不能太小的原因是要考虑功耗和节能。
如果把NPN三极管换成NMOS的原理也是一样的,不同的是需要注意GS的电压不同于三极管BE之间的0.7V,一般GS在2V以上,具体设计看datasheet的数据说明。
上图所示的电路是一个反向逻辑电路。
可以连续用两个三极管把逻辑做成正向逻辑电路。此时,R2成为下一级的R1,这种情况下,R2既不能太大,也不能太小,如图所示:
当输入为3.3V时,三极管Q2饱和时,Q2集电极电压为0.3V,小于Q3三极管BE间导通电压0.7V,所以Q3截至,输出为12V为高。
当输入为0V时,三极管Q2截至,Q3基极电压为0.7V,三极管Q3到导通,Q3处于饱和状态,输出通过Q3的CE下拉至0.3V为低。
注意:考虑到三极管的寄生电容,文章中的电路只能做一个对开关速度要求不高的电平转换电路,如果要求转换速度高,建议在三极管的BE端,增加一个2kΩ的电阻并联在BE端
2.3.OC、OD电路(Open Collector集电极开路、Open Drain漏电极开路)
对于OC、OD电路,上拉电阻的功能主要是为集电极开路输出型电路提供输出电流通道。有些芯片的输出引脚继承了三极管或MOS管,但是没有集成上拉电阻到VCC。典型的OC电路,这些引脚其实就是一个集电极,而且是开路,所以称为OC引脚。
而之所以有OC和OD电路,是为了便于“线与”设计。两个或多个输出信号连接在一起可以实现“线与”的功能,是要一个输入引脚为低电平,就可以使输出为低电平。
2.4.总线的IO接口上下拉电阻
一些总线总有输入和输出接口,其本质就是OC和OD的接口。
IIC(Inter-Integrated Circuit,内部集成电路)总线就是典型的开漏输出结构。
IIC接口的SCL(时钟线)和SDA(数据线)都是OD输出结构,这样可以用作双向数据线。有些双向的IO口,其实就是把输入和输出短接到一起,然后把输入和输出做成OC和OD。这样处理不但用一根线实现了双向数据通信,还解决了双向数据同时发送信号带来的数据冲突。
一般来说,芯片的输出是推挽结构,但是当两个芯片同时输出,一个为高,一个为低的时候,会出现短路情况。工作中称为总线冲突。用OC、OD电路可以避免短路,所以IIC、LPC、PCI等总线采用此电路。当然,有一些IO口不需要外接,因为其芯片中内置了上拉电阻。
对于IIC总线,当总线上有多个芯片时,不管各个芯片的引脚输出什么状态,都不会因为短路引起数据冲突。利用各自芯片内部的数据识别电路及仲裁系统,各个芯片都可以主动给另一方发送消息。任何一方都可以将总线拉低,不拉低时就是释放总线。
2.5.增加输出引脚的驱动能力
芯片的输出引脚本身不是OC、OD电路,但有时候也会增加一个上拉或者下拉电阻,通过上拉或下拉来增加或减小驱动电流。
例如,一个单片机的IO口内部有一个几十千欧的电阻,其最大输出电流也就250uA。因此,当增加一个上拉电阻时,可以形成和内部上拉电阻并联的结构,增加高电平时电流的输出能力。在负载增大时,能保持足够的电压。
2.6.电平标准匹配
用于不同标准之间电平的匹配,最常见的就是TTL和CMOS电平之间的匹配。当TTL电路驱动CMOS电路时,若TTL电路的高电平低于CMOS电路的最低高电平(一般为3.5V),这时就需要在TTL的输出端加上拉电阻,以提高输出高电平值。需要注意的是,此时上拉电阻连接的电压值应不低于CMOS电路的最低高电压,同时要考虑TTL电路的电流(如某端口最大输入或输出电流)的影响。
2.7.增强电路抗干扰能力
芯片的引脚加上拉电阻可以提高输出电平,从而提高芯片输入信号的噪声容限,增强抗干扰能力。在长线传输中,电阻不匹配容易引起反射波干扰,可以通过加上拉或下拉电阻进行匹配,从而有效地抑制反射波干扰。在总线传输过程中,悬空引脚比较容易受外界的电磁干扰,加上拉电阻可以提高总线的抗干扰能力。