單片機(jī)有很多引腳,這些引腳負(fù)責(zé)控制外面的設(shè)備。圖2-47所示的是用Vcc驅(qū)動(dòng)LED小燈,這個(gè)LED小燈可以用發(fā)光二極管或者是數(shù)碼管。圖 2-47 點(diǎn)亮一個(gè)發(fā)光二極管的電路圖
現(xiàn)在當(dāng)我們把GND去掉,換成I/O口,把VCC去掉,換成I/O口。當(dāng)I/O口輸出大電流時(shí),它是有一定的要求的,把單片機(jī)的這個(gè)I/O畫出來了,如圖2-48所示。
圖 2-48 單片機(jī)引腳內(nèi)部原理圖
這個(gè)是單片機(jī)的一個(gè)I/O口,方框里是單片機(jī)的內(nèi)部,方框外是單片機(jī)引腳外部,內(nèi)部和三極管的原理是一樣的,所以我們用三極管來說明,當(dāng)單片機(jī)輸出一個(gè)高電平時(shí),三極管不會(huì)導(dǎo)通,外部也輸出一個(gè)高電平;當(dāng)單片機(jī)輸出一個(gè)低電平時(shí),三極管導(dǎo)通,外部I/O口就輸出一個(gè)低電平。在輸出高電平時(shí),這里有一個(gè)電阻。
表2-4是I/O口工作類型的設(shè)定參數(shù)表。
表 2-4 I/O口工作類型的設(shè)定參數(shù)
從圖2-49中可以看到I/O口是準(zhǔn)雙向口,它是可設(shè)的,是
可編程的。這就是說,我們內(nèi)部可以進(jìn)行一個(gè)設(shè)置;另外,這個(gè)特殊功能寄存器在使用的時(shí)候,如果不進(jìn)行設(shè)置,它默認(rèn)的是00,也就是標(biāo)準(zhǔn)的準(zhǔn)雙向口,它的灌電流比較大,可以輸入20mA,它的輸出電流在250~160uA這個(gè)范圍之內(nèi)。大家要注意,單引腳灌電流達(dá)20mA,但是整體電流推進(jìn)不要超過55mA,否則可能影響到單片機(jī)芯片的壽命。因此可以從這里看到,單片機(jī)是一個(gè)控制模塊、控制中心,而不是一個(gè)驅(qū)動(dòng)器。要避免給單片機(jī)輸入或者是輸出一個(gè)大電流,這是普通I/O口要注意的。這是一個(gè)強(qiáng)推挽輸出,可以達(dá)到20mA。什么是推挽輸出?先看圖2-50。這個(gè)是一個(gè)普通的I/O口,是帶
上拉電阻的,是強(qiáng)推挽輸出。
圖 2-49 單片機(jī)引腳強(qiáng)推挽輸出的內(nèi)部原理圖
這是一個(gè)內(nèi)部總線,它幾乎沒這個(gè)上下拉電阻,一但內(nèi)部總線輸出一個(gè)高電平,三極管就導(dǎo)通了,導(dǎo)通后這個(gè)電流就下來了,這里是高電平。這是一個(gè)反相器,是一個(gè)低電平。下面這個(gè)三極管是截止的,電流就直接從上面的三極管直接輸出了,若沒有限流電阻,則這個(gè)電流是非常大。因此,外部需要加限流電阻,要注意,若不接上拉電阻,也有可能燒壞單片機(jī)的引腳。當(dāng)?shù)碗娖綍r(shí),上面的三極管是戒截止的,一但產(chǎn)生低電平,經(jīng)過反相器,第二個(gè)三極管接的是一個(gè)高電平,三極管導(dǎo)通,這個(gè)三極管輸出電流也是非常大的,因此外部也要加限流電阻,這個(gè)是一個(gè)強(qiáng)推挽輸出。
下面介紹開漏,又叫開集。內(nèi)部總線經(jīng)過一個(gè)反相器,原理圖如下圖2-50所示。
圖 2-50 單片機(jī)引腳開漏輸出內(nèi)部原理圖
假設(shè)是一個(gè)高電平經(jīng)過反相器變成低電平,電路內(nèi)部沒有上拉電阻,即使是高電平,三極管導(dǎo)通也不會(huì)輸出一個(gè)高電平,還是輸出一個(gè)低電平。因此開漏的時(shí)候,外部一定要加上拉電阻,它才有可能輸出高電平,不加上拉電阻,它就不會(huì)輸出高電平。比如說我們這個(gè)89C51的P0口就是一個(gè)開漏的雙向I/O口,寫1的時(shí)候,P0口懸浮,可用作高阻態(tài)輸入。如果說寫1,外部沒上拉電阻,還是一個(gè)懸空的,不可能輸出一個(gè)高電平,所以外部一定是要加一個(gè)上拉電阻。它的作用也很多,比如在實(shí)際運(yùn)用系統(tǒng)中,要避免直接接高電平,可以在做電平轉(zhuǎn)換時(shí),使用這條電路。一個(gè)5V的系統(tǒng)要控制一個(gè)12V的系統(tǒng)時(shí),用5V的電平控制三極管的導(dǎo)通,一但導(dǎo)通了,外部就是12V,則進(jìn)行了一個(gè)電平的轉(zhuǎn)換。在這里要避免單片機(jī)直接接外部電路,要進(jìn)行電平的轉(zhuǎn)換。
評(píng)論