似乎我们多次提到了上拉电阻,下拉电阻,具体到底什么样的电阻算是上下拉电阻,上下拉电阻都有何作用呢? 上拉电阻就是将不确定的信号通过一个电阻拉到高电平,同时此电阻也起到一个限流作用,下拉就是下拉到低电平。 比如我们的IO设置为开漏输出高电平或者是高阻态时,默认的电位是不确定的,外部经一个电阻接到VCC,也就是上拉电阻,那么相应的引脚就是高电平;经一个电阻到GND,也就是下拉电阻,那么相应的引脚就是一个低电平。 上拉电阻应用很多,都可以起到什么作用呢?我们现在主要先了解最常用的以下4点。 1、 OC门要输出高电平,必须外部加上拉电阻才能正常使用,其实OC门就相当于单片机IO的开漏输出,其原理可参照图中的开漏电路。 2、加大普通IO口的驱动能力。标准51单片机的内部IO口的上拉电阻,一般都是在几十K欧,比如STC89C52RC内部是20K的上拉电阻,所以最大输出电流是250uA,因此外部加个上拉电阻,可以形成和内部上拉电阻的并联结构,增大高电平时电流的输出能力。 3、在电平转换电路中,比如我们前边讲的5V转12V的电路中,上拉电阻其实起到的是限流电阻的作用,如图所示。 图 上拉电阻R2 4、比如单片机总线引脚,不使用的引脚悬空的时候,容易受到电磁干扰而处于一个紊乱状态,加上一个对VCC的上拉电阻或者一个对GND的下拉电阻后,可以有效的抵抗电磁干扰。 我们在进行电路设计的时候,如何正确选择合适的上下拉电阻的阻值呢? 1、从节约功耗的方面考虑应当足够大,因为电阻越大,电流越小。 2、从确保足够的引脚驱动电流考虑应当足够小,电阻小了,电流才能大。 3、在开漏输出时,过大的上拉电阻会导致信号上升沿变缓。我们来解释一下:实际电平的变化都是需要时间的,虽然很小,但永远都达不到零,而开漏输出时上拉电阻的大小就直接影响了这个上升过程所需要的时间,如图下所示。想一下,如果电阻很大,而信号频率又很快的话,最终将导致信号还没等上升到高电平就又变为低了,于是信号就无法正确传送了。
图 上拉电阻对波形的影响 综合考虑,我们常用的上下拉电阻值大多选取在1k到10k之间,具体到底多大通常要根据实际需求来选,通常情况下在标准范围内就可以了,不一定是一个固定的值。
|