單片機(jī)的引腳,可以用程序來(lái)控制,輸出高、低電平,這些可算是單片機(jī)的輸出電壓。 單片機(jī)輸出低電平時(shí),將允許外部器件,向單片機(jī)引腳內(nèi)灌入電流,這個(gè)電流,稱(chēng)為“灌電流”,外部電路稱(chēng)為“灌電流負(fù)載”; 這些電流一般是多少?最大限度是多少? 這就是常見(jiàn)的單片機(jī)輸出驅(qū)動(dòng)能力的問(wèn)題。 早期的 51 系列單片機(jī)的帶負(fù)載能力,是很小的,僅僅用“能帶動(dòng)多少個(gè) TTL 輸入端”來(lái)說(shuō)明的。 分析一下 TTL 的輸入特性,就可以發(fā)現(xiàn),51 單片機(jī)基本上就沒(méi)有什么驅(qū)動(dòng)能力。 記得是在 AT89C51 單片機(jī)流行起來(lái)之后,做而論道才發(fā)現(xiàn):?jiǎn)纹瑱C(jī)引腳的能力大為增強(qiáng),可以直接帶動(dòng) LED 發(fā)光了。
雖然引腳已經(jīng)可以直接驅(qū)動(dòng) LED 發(fā)光,但是且慢,先別太高興,還是看看 AT89C51 單片機(jī)引腳的輸出能力吧。 Maximum IOL per port pin: 10 mA; 這里是說(shuō): 而當(dāng)這些引腳“輸出高電平”的時(shí)候,單片機(jī)的“拉電流”能力呢? 可以說(shuō)是太差了,竟然不到 1 mA。 結(jié)論就是:?jiǎn)纹瑱C(jī)輸出低電平的時(shí)候,驅(qū)動(dòng)能力尚可,而輸出高電平的時(shí)候,就沒(méi)有輸出電流的能力。 51 單片機(jī)的這些特性,是源于引腳的內(nèi)部結(jié)構(gòu),引腳內(nèi)部結(jié)構(gòu)圖這里就不畫(huà)了,很多書(shū)中都有。 再看看上面的電路圖: 哦,明白了,外接電路如果是“拉電流負(fù)載”,要求單片機(jī)輸出高電平時(shí)發(fā)揮作用,那就必須用“上拉電阻”來(lái)協(xié)助,產(chǎn)生負(fù)載所需的電流。 下面做而論道就專(zhuān)門(mén)說(shuō)說(shuō)上拉電阻存在的問(wèn)題。 從上面的圖中可以看到,D2 發(fā)光,是由上拉電阻 R2 提供的電流,D2 導(dǎo)通發(fā)光的電壓約為 2V,那么發(fā)光的電流就是:(5 - 2) / 1K,約為 3mA。 而當(dāng)單片機(jī)輸出低電平(0V),D2 不發(fā)光的時(shí)候,R2 這個(gè)上拉電阻閑著了嗎? 沒(méi)有!它兩端的電壓,比 LED 發(fā)光的時(shí)候還高,現(xiàn)在是 5V 了,其中的電流,是 5mA ! 如果在一個(gè) 8 位的接口,安裝了 8 個(gè) 1K 的上拉電阻,當(dāng)單片機(jī)都輸出低電平的時(shí)候,就有 40mA 的電流灌入這個(gè) 8 位的接口! 那么,把上拉電阻加大些,可以嗎? 對(duì)于 D1,是灌電流負(fù)載,單片機(jī)輸出低電平的時(shí)候,R1、D1 通路上會(huì)有灌電流;輸出高電平的時(shí)候,那就什么電流都沒(méi)有,此時(shí)就不產(chǎn)生額外的耗電。 綜上所述,灌電流負(fù)載,是合理的;而“拉電流負(fù)載”和“上拉電阻”會(huì)產(chǎn)生很大的無(wú)效電流,這種電路不合理。 有些網(wǎng)友對(duì)上拉電阻情有獨(dú)鐘,有用沒(méi)用的,都想在引腳上安裝個(gè)上拉電阻,甚至還能說(shuō)出些理由:穩(wěn)定性啦、速度啦...。 做而論道看過(guò)很多關(guān)于單片機(jī)引腳以及上拉電阻方面的書(shū)籍、參考資料,基本上它們對(duì)于使用上拉電阻的弊病都沒(méi)有進(jìn)行仔細(xì)的討論。 在此,做而論道鄭重向大家提出建議:設(shè)計(jì)單片機(jī)的負(fù)載電路,應(yīng)該采用“灌電流負(fù)載”的電路形式,以避免無(wú)謂的電流消耗。 上拉電阻,僅僅是在 P0 口才考慮加不加的問(wèn)題:當(dāng)用 P0 口做為輸入口的時(shí)候,需要加上、當(dāng)用 P0 口輸出高電平驅(qū)動(dòng) MOS 型負(fù)載的時(shí)候,也需要加上,其它的時(shí)候,P0 口也不用加入上拉電阻。 在其它接口(P1、P2 和 P3),都不應(yīng)該加上拉電阻,特別是輸出低電平有效的時(shí)候,外接器件就有上拉的作用。 |
|
來(lái)自: 欲悠游天下 > 《Technology》