單片機(jī)驅(qū)動LED中上拉電阻的問題
驅(qū)動LED發(fā)光管的時(shí)候,應(yīng)該分共陽接法和共陰接法這兩種,共陽的時(shí)候LED正端接正電源,負(fù)端通過一個(gè)限流電阻接P口,這時(shí)不用接上拉電阻,只要這個(gè)限流電阻取合適就可以了發(fā)光管亮的時(shí)候電流就是從電源正——LED——限流電阻——P口,P口為低電位發(fā)光管滅的時(shí)候沒有電流流過,P口為高電位或高阻狀態(tài)共陰接法,LED負(fù)端接地,正端直接P口,這時(shí)候要接上拉電阻,這個(gè)上拉電阻是提供LED發(fā)光用的,發(fā)光管亮的時(shí)候電流是從電源正——上拉電阻——LED——地。這時(shí)上拉電阻也是限流用的。P口為高電位或高阻狀態(tài)發(fā)光管暗的時(shí)候電流是從電源正——上拉電阻——P口,這時(shí)LED無電流流過,P口為低電位,限流電阻上流過電流全部從P口流入。要從單片機(jī)的輸出驅(qū)動能力開始講起。
下面是本人做過的LED上拉電阻試驗(yàn)
測試條件:
VCC=4.96V,φ3綠色發(fā)光二極管。
二極管正極接VCC,負(fù)極通過RL接地。
沒有進(jìn)行更大的電阻測試,因?yàn)槲业娜f用表電壓檔內(nèi)阻為10M。
RL VLED VRL 電流 亮度
----------------------------
1K 1.93V 3.03V 3mA 很亮
5K 1.82V 3.14V 0.6mA 比較亮
100K 1.66V 3.30V 33uA 微亮
3.3M 1.51V 3.45V 1.0uA 不亮
10M 1.42V 3.45V 0.3uA 不亮
----------------------------
通過以上測試可以看出,發(fā)光二極管即使有很小的電流時(shí),在LED的壓降也是很明顯的。這也符合發(fā)光二極管的特性曲線。
所以,如果與發(fā)光二極管驅(qū)動的下一級內(nèi)阻要是比較。ㄐ∮10M)的話,那么其輸出必然是3V左右。
當(dāng)然如果使用的前級驅(qū)動電路有內(nèi)部上拉(如PCF8574T內(nèi)部有100uA若上拉,51的P1或P2,P3口等)則另當(dāng)別論。所以我說如果這樣用最好并聯(lián)一個(gè)10K的電阻.
單片機(jī)輸出驅(qū)動分為高電平驅(qū)動和低電平驅(qū)動兩種方式,所謂高電平驅(qū)動,就是端口輸出高電平時(shí)的驅(qū)動能力,所謂低電平驅(qū)動,就是端口輸出低電平時(shí)的驅(qū)動能力,當(dāng)單片機(jī)輸出高電平時(shí),其驅(qū)動能力實(shí)際上是*端口的上拉電阻來驅(qū)動的,實(shí)際測試表明,51單片機(jī)的上拉電阻的阻值在330K左右,也就是說如果*高電平驅(qū)動,本質(zhì)上就是*330K的上拉電阻來提供電流的,當(dāng)然該電流是非常小的,小的甚至連發(fā)光二極管也難以點(diǎn)亮,如果要保證LED發(fā)光2極管正常發(fā)光,必須要外接一個(gè)1K左右的上拉電阻,如果是一個(gè)led還好,要是10個(gè)、20個(gè)led的話,就要接10個(gè)、20個(gè)1K的上拉電阻,接電阻的本身是可以的,問題是接了上拉電阻以后,每當(dāng)端口變?yōu)榈碗娖?的時(shí)候,那么就有10個(gè)、20個(gè)上拉電阻被無用的導(dǎo)通,假設(shè)每個(gè)電阻的電流為5mA計(jì)算,20個(gè)電阻就是100mA,這將造成電源效率的嚴(yán)重下降,導(dǎo)致發(fā)熱,紋波增大,以至于造成單片機(jī)工作不穩(wěn),因此很少有采用高電平直接驅(qū)動led的,高電平驅(qū)動led實(shí)際上就是共陰。低電平驅(qū)動就不同了,端口為低電平0時(shí),端口內(nèi)部的開關(guān)管導(dǎo)通,可以驅(qū)動高達(dá)30多毫安的驅(qū)動電流,可以直接驅(qū)動led等負(fù)載,當(dāng)端口為低電平0時(shí),盡管內(nèi)部的上拉電阻也是消耗電流的,但是由于內(nèi)部的上拉電阻很大,有330K,因此消耗電流極小,基本上不會影響電源效率,不會造成無用功的大量消耗,因此51單片機(jī)是不能用高電平直接驅(qū)動led發(fā)光管的,只能用地電平直接驅(qū)動led,即只能用共陽數(shù)碼管,而不能直接用共陰數(shù)碼管。
編輯:admin 最后修改時(shí)間:2017-12-13