導(dǎo)語
通過單片機(jī)控制外圍器件(LED,蜂鳴器,數(shù)碼管,按鍵),本質(zhì)上是對(duì)于單片機(jī)IO口的操作,相對(duì)于STM32,51單片機(jī)IO口模式較少,但了解IO的內(nèi)部對(duì)于學(xué)習(xí)了解51單片機(jī)也由很大的幫助。
GPIO
GPIO(General Purpose Input Output),通用輸入輸出。既能當(dāng)輸入口使用,又能當(dāng)輸出口使用。端口,就是元器件上的一個(gè)引腳。可以通過軟件去控制。
在大多數(shù)的時(shí)候,我們將IO口可以看為一個(gè)電子開關(guān),通過向IO寄存器中寫入相應(yīng)的值,其輸出的電平就隨著寄存器的變化而變化,這是IO口的輸出,在大多數(shù)的單片機(jī)中,需要去配置單片機(jī)的IO模式,是輸入還是輸出。
即需要預(yù)先初始化,配置GPIO的參數(shù),再去使用GPIO。在51單片機(jī)中不支持這樣的操作,即不能配置GPIO的參數(shù)。
51GPIO
除去P3口的特殊引腳,P1/P2/P3/P4上電復(fù)位后為準(zhǔn)雙向口/弱上拉(傳統(tǒng)8051的/0口)模式。P3口可通過配置其他寄存器使用第二功能。
P0口上電復(fù)位后為開漏輸出,無法輸出高電平,但是如果在output上接上拉電阻,則可以進(jìn)行電平轉(zhuǎn)換,且驅(qū)動(dòng)能力較強(qiáng)。當(dāng)P0口作為地址/數(shù)據(jù)復(fù)用總線使用時(shí),不用外加上拉電阻(極少極少使用)學(xué)習(xí)單片機(jī),需要購買器件可以去唯樣商城,學(xué)生什么的還有優(yōu)惠。
準(zhǔn)雙向
準(zhǔn)雙向口輸出類型可用作輸出和輸入功能而不需重新配置端口輸出狀態(tài),其上電復(fù)位默認(rèn)電平為高。
當(dāng)端口輸入為1時(shí),其驅(qū)動(dòng)能力極若,其允許外部將其拉低。如按鍵。當(dāng)輸出為低時(shí),驅(qū)動(dòng)能力很強(qiáng),可吸收相當(dāng)大的電流。因此采用由高電平向低電平轉(zhuǎn)換的按鍵設(shè)計(jì)。
其設(shè)計(jì)采用3個(gè)上拉晶體管適應(yīng)不同的需求,在3個(gè)上拉晶體管中,有1個(gè)上拉晶體管稱為“弱上拉”,當(dāng)端口寄存器為1且引腳本身也
為1時(shí)打開。此上拉提供基本驅(qū)動(dòng)電流使準(zhǔn)雙向口輸出為1。
如果一個(gè)引腳輸出為1而由外部裝置下拉到低時(shí),弱上拉關(guān)閉而“極弱上拉”維持開狀態(tài),為了把這個(gè)引腳強(qiáng)拉為低,外部裝置必須有足夠的灌電流能力使引腳上的電壓降到門檻電壓以下。
第2個(gè)上拉晶體管,稱為“極弱上拉”,當(dāng)端口鎖存為1時(shí)打開。當(dāng)引腳懸空時(shí),這個(gè)極弱的上拉源產(chǎn)生很弱的上拉電流將引腳上拉為高電平。
第3個(gè)上拉晶體管稱為“強(qiáng)上拉”。當(dāng)端口鎖存器由0到1跳變時(shí),這個(gè)上拉用來加快準(zhǔn)雙向口由邏輯0到邏輯1轉(zhuǎn)換。當(dāng)發(fā)生這種情況時(shí),強(qiáng)上拉打開約2個(gè)時(shí)鐘以使引腳能夠迅速地上拉到高電平。
準(zhǔn)雙向IO口在讀取外部狀態(tài)時(shí),需要先寫1,才可正確的讀取外部正確狀態(tài)。
開漏輸出
當(dāng)p0輸出1時(shí),由于內(nèi)部結(jié)構(gòu),只能輸出高阻態(tài),需外加10K-4.7K的上拉電阻才可正常輸出。當(dāng)端口鎖存器為0時(shí),開漏輸出關(guān)閉所有上拉晶體管。
如果外部有上拉電阻,開漏的I0口還可讀外部狀態(tài),即此時(shí)被配置為開漏模式的I/0口還可作為輸入I/0口。這種方式的下拉與準(zhǔn)雙向口相同。
Ps:以下是(STC89C52RC)數(shù)據(jù)手冊(cè)中提供的一些關(guān)于數(shù)碼管電路的一些參考,學(xué)習(xí)單片機(jī),需要購買器件可以去唯樣商城,學(xué)生什么的還有優(yōu)惠。
審核編輯:湯梓紅
-
51單片機(jī)
+關(guān)注
關(guān)注
272文章
5689瀏覽量
122169 -
GPIO
+關(guān)注
關(guān)注
16文章
1175瀏覽量
51515 -
IO口
+關(guān)注
關(guān)注
3文章
168瀏覽量
23889
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論