如果我們將一個(gè)讀數(shù)據(jù)用的輸入端接在輸出端,這樣就是一個(gè)IO口了(51的IO口就是這樣的結(jié)構(gòu),其中P0口內(nèi)部不帶上拉,而其它三個(gè)口帶內(nèi)部上拉),當(dāng)我們要使用輸入功能時(shí),只要將輸出口設(shè)置為1即可,這樣就相當(dāng)于那個(gè)開關(guān)斷開,而對于P0口來說,就是高阻態(tài)了。
什么是漏極開路(OD)?
對于漏極開路(OD)輸出,跟集電極開路輸出是十分類似的。將上面的三極管換成場效應(yīng)管即可。這樣集電極就變成了漏極,OC就變成了OD,原理分析是一樣的。
另一種輸出結(jié)構(gòu)是推挽輸出。推挽輸出的結(jié)構(gòu)就是把上面的上拉電阻也換成一個(gè)開關(guān),當(dāng)要輸出高電平時(shí),上面的開關(guān)通,下面的開關(guān)斷;而要輸出低電平時(shí),則剛好相反。比起OC或者OD來說,這樣的推挽結(jié)構(gòu)高、低電平驅(qū)動能力都很強(qiáng)。如果兩個(gè)輸出不同電平的輸出口接在一起的話,就會產(chǎn)生很大的電流,有可能將輸出口燒壞。而上面說的OC或OD輸出則不會有這樣的情況,因?yàn)樯侠娮杼峁┑碾娏鞅容^小。如果是推挽輸出的要設(shè)置為高阻態(tài)時(shí),則兩個(gè)開關(guān)必須同時(shí)斷開(或者在輸出口上使用一個(gè)傳輸門),這樣可作為輸入狀態(tài),AVR單片機(jī)的一些IO口就是這種結(jié)構(gòu)。