單片機驅(qū)動能力不足的提高方法
單片機的GPIO口驅(qū)動能力有限,不能直接驅(qū)動較大功率的負載,如果負載的功率較大必須要考慮采用驅(qū)動功率器件的方式,比如說三極管、MOS管以及其他的專用驅(qū)動芯片。下面結(jié)合幾個典型的例子來介紹以下如何提高單片機的驅(qū)動能力。
1 使用三極管提高驅(qū)動能力
單片機采用何種方式提高驅(qū)動能力,主要取決于被控負載。比如說蜂鳴器、繼電器這種類型的負載,一般會通過三極管來驅(qū)動,單片機控制三極管即可。以通用型的繼電器為例,假設(shè)5V繼電器的線圈所需的工作電流為80mA,那肯定不能通過單片機直接驅(qū)動,而三極管就是一個很好的選擇。
單片機與三極管的基極連接,只需要通過高低電平信號即可實現(xiàn)繼電器的驅(qū)動,驅(qū)動電流由VCC提供,三極管提供回路。由此實現(xiàn)了單片機驅(qū)動大功率負載的目的。
2 使用專用IC提高驅(qū)動能力
電機是功率比較大的負載,都是通過專用的驅(qū)動IC來驅(qū)動的,單片機控制專用IC。以微型直流電機為例。電機通過專用驅(qū)動芯片RZ7899來驅(qū)動,單片機和RZ7899連接,單片機的控制信號經(jīng)專用IC后驅(qū)動電機,實現(xiàn)電機的轉(zhuǎn)動、調(diào)速等功能。
3 驅(qū)動小功率,但是數(shù)量多的負載
這類比較典型的應(yīng)用就是流水燈或者是點陣LED屏。單片機的GPIO口數(shù)量和驅(qū)動能力都有限,需要通過擴展IC來實現(xiàn),這類常用的IC有74HC595、74HC164、74HC138等。
單片機的輸出驅(qū)動能力有多大
單片機輸出驅(qū)動分為高電平驅(qū)動和低電平驅(qū)動兩種方式,所謂高電平驅(qū)動,就是端口輸出高電平時的驅(qū)動能力,所謂低電平驅(qū)動,就是端口輸出低電平時的驅(qū)動能力,當(dāng)單片機輸出高電平時,其驅(qū)動能力實際上是端口的上拉電阻來驅(qū)動的,實際測試表明,51單片機的上拉電阻的阻值在330K左右,也就是說如果高電平驅(qū)動,本質(zhì)上就是330K的上拉電阻來提供電流的,當(dāng)然該電流是非常小的,小的甚至連發(fā)光二極管也難以點亮,如果要保證LED正常發(fā)光,必須要外接一個1K左右的上拉電阻,如果是一個led還好,要是10個、20個led的話,就要接10個、20個1K的上拉電阻,接電阻的本身是可以的,問題是接了上拉電阻以后,每當(dāng)端口變?yōu)榈碗娖?的時候,那么就有10個、20個上拉電阻被無用的導(dǎo)通,假設(shè)每個電阻的電流為5mA計算,20個電阻就是100mA,這將造成電源效率的嚴重下降,導(dǎo)致發(fā)熱,紋波增大,以至于造成單片機工作不穩(wěn),因此很少有采用高電平直接驅(qū)動led的,高電平驅(qū)動led實際上就是共陰。
低電平驅(qū)動就不同了,端口為低電平0時,端口內(nèi)部的開關(guān)管導(dǎo)通,可以驅(qū)動高達30多毫安的驅(qū)動電流,可以直接驅(qū)動led等負載,當(dāng)端口為低電平0時,盡管內(nèi)部的上拉電阻也是消耗電流的,但是由于內(nèi)部的上拉電阻很大,有330K,因此消耗電流極小,基本上不會影響電源效率,不會造成無用功的大量消耗。
因此51單片機是不能用高電平直接驅(qū)動led的,只能用低電平直接驅(qū)動led,即只能用共陽數(shù)碼管,而不能直接用共陰數(shù)碼管。
-
單片機
+關(guān)注
關(guān)注
6037文章
44558瀏覽量
635287 -
GPIO
+關(guān)注
關(guān)注
16文章
1204瀏覽量
52098 -
驅(qū)動能力
+關(guān)注
關(guān)注
0文章
4瀏覽量
3256
發(fā)布評論請先 登錄
相關(guān)推薦
評論