51單片機(jī)IO口的四種使用方法
傳統(tǒng)51單片機(jī)IO接口只可以作為標(biāo)準(zhǔn)雙向IO接口,如果用其來驅(qū)動LED只能用灌電流的方式或是用三極管外擴(kuò)驅(qū)動電路。
本文引用地址:http://2s4d.com/article/201808/390929.htm灌電流方式:LED正極接VCC,負(fù)極接IO口。IO為高電平是LED兩極電平相同,沒有電流,LED熄滅;IO為低電平時,電流從VCC流入IO,LED點(diǎn)亮。但是當(dāng)你吧LED正極接在IO接口,負(fù)極接GND時,將IO接口置于高電平,LED會亮,但因為IO接口上拉能力不足而使亮度不理想,可以用下面介紹的方式解決這個問題。
推挽工作方式:LED正負(fù)極分別接在兩個IO口上,然后設(shè)置正極IO接口為推挽輸出,負(fù)極IO接口為標(biāo)準(zhǔn)雙向灌電流輸入。推挽方式具有強(qiáng)上拉能力,可以實現(xiàn)高電平驅(qū)動LED。
IO口的四種使用方法
從I/O口的特性上看,標(biāo)準(zhǔn)51的P0口在作為I/O口使用時,是開漏結(jié)構(gòu),在實際應(yīng)用中通常要添加上拉電阻1、P2、P3都是準(zhǔn)雙向I/O,內(nèi)部有上拉電阻,既可作為輸入又可以作為輸出。而LPC900系列單片機(jī)的I/O口特性有一定的不同,它們可以被配置成4種不同的工作模式:準(zhǔn)雙向I/O、推挽輸出、高阻輸入、開漏。
準(zhǔn)雙向I/O模式與標(biāo)準(zhǔn)51相比,雖然在內(nèi)部結(jié)構(gòu)上是不同的,但在用法上類同,比如要作為輸入時都必須先寫“1”置成高電平,然后才能去讀引腳的電平狀態(tài)。!!!!!為什么是這樣子?見下面分析。
推挽輸出的特點(diǎn)是不論輸出高電平還是低電平都能驅(qū)動較大的電流,比如輸出高電平時可以直接點(diǎn)亮LED(要串聯(lián)幾百歐限流電阻),而在準(zhǔn)雙向I/O模式下很難辦到。
高阻輸入模式的特點(diǎn)是只能作為輸入使用,但是可以獲得比較高的輸入阻抗,這在模擬比較器和ADC應(yīng)用中是必需的。
開漏模式與準(zhǔn)雙向模式相似,但是沒有內(nèi)部上拉電阻。開漏模式的優(yōu)點(diǎn)是電氣兼容性好,外部上拉電阻接3V電源,就能和3V邏輯器件接口,如果上拉電阻接5V電源,又可以與5V邏輯器件接口。此外,開漏模式還可以方便地實現(xiàn)“線與”邏輯功能。
對于上面疑問的解釋,有這樣一個資料:
高阻態(tài)這是一個數(shù)字電路里常見的術(shù)語,指的是電路的一種輸出狀態(tài),既不是高電平也不是低電平,如果高阻態(tài)再輸入下一級電路的話,對下級電路無任何影響,和沒接一樣,如果用萬用表測的話有可能是高電平也有可能是低電平,隨它后面接的東西定。
電路分析時高阻態(tài)可做開路理解。你可以把它看作輸出(輸入)電阻非常大。他的極限可以認(rèn)為懸空。
高阻態(tài)的典型應(yīng)用:
1、在總線連接的結(jié)構(gòu)上??偩€上掛有多個設(shè)備,設(shè)備與總線以高阻的形式連接。這樣在設(shè)備不占用總線時自動釋放總線,以方便其他設(shè)備獲得總線的使用權(quán)。
2、大部分單片機(jī)I/O使用時都可以設(shè)置為高阻輸入,如凌陽,AVR等等。高阻輸入可以認(rèn)為輸入電阻是無窮大的,認(rèn)為I/O對前級影響極小,而且不產(chǎn)生電流(不衰減),而且在一定程度上也增加了芯片的抗電壓沖擊能力。
評論