單片機(jī)的I/O口輸出電流問題
答:這個(gè)類似于電源的內(nèi)阻。
輸出電流越大,消耗在內(nèi)部的電壓壓降就越大。輸出電壓=5V-內(nèi)部壓降。51單片機(jī)的上拉管典型阻值20k,若外部開路,在內(nèi)部的壓降=0,輸出就是5V,如果IO接個(gè)5k電阻到GND,那么外部電阻的電壓=5V÷(5+20)×5=1V,而外部5K電阻上的電流才1V/5k=200uA。所以你接100歐的電阻,IO的輸出電壓更本就很小了,根本達(dá)不到5V÷100歐=50mA的水平,一般來說高電平輸出能力也就100-200uA,低電平輸出能力8mA-10mA (AT89C2051等IO已強(qiáng)化,可吸入20mA電流)。這么小的電流驅(qū)動數(shù)碼管,你就自己看吧,所以才加三極管驅(qū)動。數(shù)碼管20mA的電流一般是偏大的,靜態(tài)顯示時(shí),一般選5-15mA即可。動態(tài)顯示可適當(dāng)加大至20mA左右,不然亮度偏低。一般三級管的靜態(tài)放大值取100就可以估算。比如驅(qū)動一個(gè)5V(額定電壓)線圈繼電器。線圈內(nèi)阻是120歐,估算驅(qū)動電流有5V/120歐=40mA,單片機(jī)一般只能輸出10mA,驅(qū)動不了。那么靠三極管驅(qū)動,基極驅(qū)動電流=40mA/100=400uA>200uA,
若使用PNP型三極管,則使用低電平驅(qū)動,基極電阻=(5-0.7)V÷0.4mA=10k,若使用NPN型三極管,則使用高電平驅(qū)動,如上面所說,輸出能力最多200uA,達(dá)不到400uA,要使用上拉電阻產(chǎn)生至少200uA電流,上拉電阻=(5-0.7)V/0.2mA=21.5k 這些計(jì)算值都是臨界值,要保險(xiǎn)點(diǎn)就在這個(gè)值的基礎(chǔ)上稍微選小一點(diǎn)就ok
評論