一个上拉电阻引发的思考(一)

我们在写驱动过程中,经常看到有上拉电阻,有时候会听硬件工程师说上拉不够,或者说上拉太小了。以前我也没仔细研究过它的作用,只是知道可以起到稳定电平,提高驱动能力的作用。一般用于OCOpen Colector极电集开路)门、OD门(Open drain,漏极开路,其中一个应用是i2c总线)或者输出驱动能力不够的电路中。最近我上网搜了一下相关的知识,查看了以前大学时的课件,发现以前的基础真的很重要的啊。其实这些知识以前都学过的,但是为什么感觉学得不深入,很快就忘记了呢?这其中又引起了我的一个思考,这就是,我们在学校学习,一般只是为了学习而去学习,而没有具体的目的。比如说你想做一个项目,这些项目就需要某些知识。我们学完很多知识,但是并得不到应用,在不久后就会忘记了,这样子学习是做不到深入的。正确的学习方法是理论->实践->理论->实践......不断循环。现在我看回电路的一些理论知识,有一种恍然大悟的感觉,哦,原来是这样子!

好了,不扯远了。以下我讲解一下OC门的上拉电阻原理和应用。电子类专业毕业的学生应该都觉得这些很简单的了,但是计算机类的可能情况跟我一样,就是似懂非懂。如果你是这种状况,读完这篇文章后你可能会有所领悟。本文其中可能也有许多错漏的地方,请大家指正。

一个上拉电阻引发的思考(一)_第1张图片

上图就是一个OC门,它其实就是一个与非门。AB为输入端,F为输出端。其中RL是不属于OC门的,它是输出的一个上拉电阻,接到Vcc上。只要恰当地选择电源电压和负载电阻,就可以保证输出电平F的高、低要求,而又有效地防止输出管(T5)电流过大。

对于OC门,我们可以理解得简单一点。把OC门看作是一个黑盒子,当输入端为低电平时,OC门截止(T5管截止,相当于集电极开路),F端输出高电平,此时可看作只有VccRL和外部负载相连。当输入端为高电平时,OC门饱和,在输出端会有固定的饱和电流(T5管集电极的饱和电流)流进OC门,F端输出低电平。

当有mOC门直接并联,并带有n个与非门作负载时,只要公共外接负载电阻RL选择适当,就可以保证输出高电平不低于规定的VOHmin值;又可以保证输出低电平不高于规定的VOLmax。而且也不会在电源和地之间形成低阻通路。

集电极负载电阻RL的选择:

输出端F输出高电平的情况。

mOC与非门的输出都为高电平直接并联,则线与结果为高电平,下面的如下图所示。

一个上拉电阻引发的思考(一)_第2张图片

此时必须满足:

VCC-IRLRL≥VOHmin

VCC-(mIOH+pIIH)RL≥VOHmin

RL≤(VCC-VOHmin)/(mIOH+pIIH)

也就是RL的最大值是(VCC-VOHmin)/(mIOH+pIIH),而一般来说,VCC,VOHmin,IOH,IIH,m,p都是固定的,VOHmin,IIH一般可以从负载的手册上找出,VOHmin一般就是器件的低电平阀值,IIH一般就是器件的额定电流(注意上面把与非门作为负载只是一种举例,而实际上负载有很多种)。我们在上面说过,当输出高电平时,可以把OC门开作是开路,也就是IOH为0。上面公式可以简化为:

RL≤(VCC-VOHmin)/pIIH

也就是说,RL的最大值为(VCC-VOHmin)/pIIH,如果再大的话,就不能产生负载所需要的高电平VOHmin了。

好,休息一下。现在我们已经知道怎么算出上拉电阻的最大值了。如果有时候输出端得不到要求的高电平,那么就有可能是上拉电阻太大了(一般为1k~10k,而有的说是4.7k~10k,反正是大于1k吧)。

下面继续算上拉电阻的最小值了。

上面是输出端F为高电平的情况,现在看输出端F为低电平的情况。

当OC门线与输出为低电平时,从最不利情况考虑,设只有一个OC门处于导通状态,而其它的OC门均截止(实际上可能只有一个OC门)。

一个上拉电阻引发的思考(一)_第3张图片

我们上面提过,当OC门输出低电平时,OC门是饱和的,也就是相当于集电极处直接对地(但仍有一个饱和电流IOL),此时上拉电阻电流IRL和负载电流IIS共同流向OC门,这时候电流IOL就是我们经常所说的灌电流(这里一个题外话,就是接了上拉电阻后,即使输出低电平也会消耗很小的电流)。

RL不能太小,应保证在所有的负载电流全部流入唯一导通的OC门时,线与输出低电平仍能低于规定的VOLmax值,也就是要能产生负载要求的低电平。

VCC-IRLRL≤VOLmax

VCC-(IOL-nIIS)RL≤VOLmax

RL≥(VCC-VOLmax)/(IOL-nIIS)

也就是RL的最小值是(VCC-VOLmax)/(IOL-nIIS),其中VCC,VOLmax,IOL,nIIS都是已知的,IOL大概就等于管子的饱和电流,IIS是负载的短路电流就样就可以把RL的最小值算出来了。

也就是说,RL的最小值为(VCC-VOLmax)/(IOL-nIIS),如果忽略掉负载的短路电流,如果RL的值更小,那么就不能产生比负载要求的低电平更低的电平了。

综上所述,(VCC-VOLmax)/(IOL-nIIS) ≤RL≤(VCC-VOHmin)/(mIOH+pIIH),如果要粗略地计算,忽略掉IIS和IOH那么就是(VCC-VOLmax)/IOL≤RL≤(VCC-VOHmin)/pIIH。

你可能感兴趣的:(硬件)