單片機(jī)原理與接口應(yīng)用_第1頁(yè)
已閱讀1頁(yè),還剩20頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、單片機(jī)原理與接口應(yīng)用,(8051輸入/輸出端口結(jié)構(gòu) ),華中科技大學(xué)光電子工程系,,,MCS—51,8051輸入/輸出端口結(jié)構(gòu) (慨述),★80 51單片機(jī)有四個(gè)8位并行I/O端口,記作P0、P1、P2和P3。每個(gè)端口都是8位準(zhǔn)雙向口,共占32根引腳。每一 條I/O線都能獨(dú)立地用作輸入或輸出?!锩總€(gè)端口都包括一個(gè)鎖存器(即特殊功能寄存器P0—P3),一個(gè)輸出驅(qū)動(dòng)器和輸入緩沖器,作為輸出時(shí)數(shù)據(jù)可以鎖存,作輸入時(shí)數(shù)據(jù)可以緩沖,但這四個(gè)通道

2、的功能不完全相同。 ★在無(wú)片外擴(kuò)展存儲(chǔ)器的系統(tǒng)中,這四個(gè)端口的每一位都可以作為準(zhǔn)雙向通用I/O端口使用。在具有片外擴(kuò)展存儲(chǔ)器系統(tǒng)中,P2口送出高8位地址.P0口為雙向總線,分時(shí)送出低8位地址和數(shù)據(jù)的輸入/輸出。 ★ 8051單片機(jī)四個(gè)I/()端口的電路設(shè)計(jì)非常巧妙,熟悉I/O端口邏輯電路,不但有利于正確合理地使用端口。而且會(huì)對(duì)設(shè)計(jì)單片機(jī)外圍邏輯電路有所啟發(fā)。,一、P0口的結(jié)構(gòu):,結(jié)構(gòu):一個(gè)輸出鎖存器;

3、 二個(gè)三態(tài)輸入緩沖器 輸出驅(qū)動(dòng)電路及控制電路組成其工作狀態(tài)受: 控制電路與門(mén)④、 反相器② 轉(zhuǎn)換開(kāi)關(guān)MUX控制。 當(dāng)CPU使控制線C=0,開(kāi)關(guān)MUX連接輸 出鎖存器,P0口為通用I/O 口,當(dāng)C=1時(shí),開(kāi)關(guān)投向反相器②的輸出端,P0口分時(shí)作為地址/數(shù)據(jù)總線使用。,,P0口的某一位的結(jié)

4、構(gòu)圖,(一)P0口作為一般I/O口使用,當(dāng)8051組成的系統(tǒng)無(wú)外擴(kuò)存儲(chǔ)器、CPU對(duì)片內(nèi)存儲(chǔ)器和I/O口讀寫(xiě)時(shí),內(nèi)部硬件自動(dòng)使控制線C=0。開(kāi)關(guān)MUX處于圖示位置,它把輸出級(jí)(T2)與鎖存器的端接通; 因與門(mén)①輸出為0,輸出級(jí)中的上拉場(chǎng)效應(yīng)管T1處于截止?fàn)顟B(tài),因此,輸出級(jí)是漏極開(kāi)路的開(kāi)漏電路。這時(shí)P0口可作一般I/O口用。,1、P0口用作輸出口,一般的數(shù)據(jù)輸出情況:當(dāng)CPU執(zhí)行輸出指令時(shí),寫(xiě)脈沖加在D鎖存器的CP上,這樣與內(nèi)部總線相

5、連的D端的數(shù)據(jù)取反后就出現(xiàn)在端口,又經(jīng)輸出級(jí)FFT(T2)反相,在P0端口上出現(xiàn)的數(shù)據(jù)正好是內(nèi)部總線的數(shù)據(jù)。讀P0口D鎖存器:8051有幾條輸出指令功能特別強(qiáng),屬于“讀一修改—寫(xiě)”指令。 例如,執(zhí)行—條“ANL P0,A”指令的過(guò)程是:不直接讀引腳上的數(shù)據(jù),而是CPU先讀P0口D鎖存器中的數(shù)據(jù),當(dāng)“讀鎖存器”信號(hào)有效.三態(tài)緩沖器①開(kāi)通,Q端數(shù)據(jù)送入內(nèi)部總線和累加器A中的數(shù)據(jù)進(jìn)行“邏輯與”操作,結(jié)果送問(wèn)P0端口鎖存器。此時(shí),鎖存

6、器的內(nèi)容(Q端狀態(tài))和引腳是—致的。,2.P0口作輸入口,圖中的緩沖器②用于CPU直接讀端口數(shù)據(jù)。當(dāng)執(zhí)行一條由端口輸入的指令時(shí),“讀引腳”脈沖把該二態(tài)緩沖器②打開(kāi),這樣,端口上的數(shù)據(jù)經(jīng)過(guò)緩沖器②讀入到內(nèi)部總線。這類(lèi)操作由數(shù)據(jù)傳送指令實(shí)現(xiàn)。 從圖中還可看出,在讀入端口引腳數(shù)據(jù)時(shí)由于輸出驅(qū)動(dòng)FET(T2)并接在引腳上,如果FET(T2)導(dǎo)通就會(huì)將輸入的高電平拉成低電平,以致于產(chǎn)生誤讀。在端口進(jìn)行輸入操作前,應(yīng)先向端口鎖存器寫(xiě)入“l(fā)

7、”,也就是使鎖存器=0,因?yàn)榭刂凭€C=0,因此T1和T2全截止,引腳處于懸浮狀態(tài),可作高阻抗輸入。這就是所謂的準(zhǔn)雙向口的含義。,(二) P0口作為地址/數(shù)據(jù)總線使用,CPU對(duì)片外存儲(chǔ)器讀寫(xiě),由內(nèi)部硬件自動(dòng)使控制線C=l,開(kāi)關(guān)MUX撥向反相器③輸出端。這時(shí)P0口可作地址/數(shù)據(jù)總線分時(shí)使用,分為兩種情況。①P0口用作輸出地址/數(shù)據(jù)總線:在擴(kuò)展系統(tǒng)中,—種是以P0口引腳輸出低8位地址或數(shù)據(jù)信息。MUX開(kāi)關(guān)把CPU內(nèi)部地址/數(shù)據(jù)線經(jīng)反向器③與

8、驅(qū)動(dòng)場(chǎng)效應(yīng)管FET(T2)柵極接通。從圖上可以看到,上下兩個(gè)FET處于反相,構(gòu)成推拉式的輸出電路(T1導(dǎo)通時(shí)上拉,T2導(dǎo)通時(shí)下拉),大大增加了負(fù)載能力。 ②另一種情況是由P0口輸入數(shù)據(jù)。這種情況是在“讀引腳”信號(hào)有效時(shí)打開(kāi)輸入緩沖器②使數(shù)據(jù)進(jìn)入內(nèi)部總線。,總結(jié):,●P0既可作—般I/O端口用使用,又可作地址/數(shù)據(jù)總線使用?!?I/O輸出時(shí),輸出級(jí)屬開(kāi)漏電路,必須外接上拉電阻,才有高電平輸出;●作I/O輸入時(shí),必須先向?qū)?yīng)的鎖

9、存器寫(xiě)入“1”,使FET(T2)截止,不影響輸入電平?!癞?dāng)P0口被地址/數(shù)據(jù)總線占用時(shí),就無(wú)法再作I/O口使用了。,二、 P1口,P1口也是一個(gè)準(zhǔn)雙向口:作通用I/O口使用。其電路結(jié)構(gòu)見(jiàn)圖,輸出驅(qū)動(dòng)部分與P0口不同.內(nèi)部有上拉負(fù)載電阻與電源相連。實(shí)質(zhì)上電阻是兩個(gè)場(chǎng)效應(yīng)管FET并在—起,—個(gè)FET為負(fù)載管,其電阻固定;另一個(gè)FET可工作在導(dǎo)通或截止兩種狀態(tài),使其總電阻值變化近似為0或阻值很大兩種情況。當(dāng)阻值近似為0時(shí)、可將引腳快速上拉

10、至高電平;當(dāng)阻值很大時(shí),Pl口為高阻輸入狀態(tài)。 當(dāng)P1口輸出高電平時(shí)、能向外提供拉電流負(fù)載,所以不必再接上拉電阻,在端口用作輸入時(shí),也必須先向?qū)?yīng)的鎖存器寫(xiě)入“1”,使FET截止。由于片內(nèi)負(fù)載電阻較大,約20一40kΩ,所以不會(huì)對(duì)輸入的數(shù)據(jù)產(chǎn)生影響。,P1口某位結(jié)構(gòu),三、P2口某位結(jié)構(gòu),四、P3口的結(jié)構(gòu),P3口是一個(gè)多功能端口 : 第—功能:通用I/O口 第二功能:其他功能(見(jiàn)下表) P3口

11、與P1口的差別在于多了一個(gè)與非門(mén)和緩沖器,正是這兩個(gè)部分,使得P3口除了具有P1口的準(zhǔn)雙向I/O功能之外,還可以使用各引腳所具有的第二功能。與非門(mén)的作用實(shí)際上是一個(gè)開(kāi)關(guān),決定是輸出鎖存器上的數(shù)據(jù)還是輸出第二功能(W)的信號(hào)。 當(dāng)W=1時(shí).輸出Q端信號(hào); 當(dāng)Q=1,可輸出W線信號(hào)。,P3各口線的第二功能表,P3口的位結(jié)構(gòu),編程時(shí),不必事先由軟件設(shè)置P3門(mén)為第一功能(通用I/O口)還是第二功能

12、?!癞?dāng)CPU對(duì)P3口進(jìn)行SFR尋址(位或字節(jié))訪問(wèn)時(shí),由內(nèi)部硬件自動(dòng)將第二功能輸出線W置1,這時(shí)P3口為通用I/O口;●當(dāng)CPU不把P3口作為SFR尋址(位或字節(jié))訪問(wèn)時(shí),即用作第二功能輸出/輸入時(shí),由內(nèi)部硬件使鎖存器Q=1。,(一)P3口作為通用I/O口使用,當(dāng)對(duì)P3口的SFR尋址時(shí),“第二輸出功能端W”保持高電平。打開(kāi)與非門(mén),所以D鎖存器輸出端Q的狀態(tài)可通過(guò)與非門(mén)送至FET場(chǎng)效應(yīng)管輸出,這是作通用I/O口輸出的情況。

13、當(dāng)P3口作為輸入使用(即CPU讀引腳狀態(tài))時(shí)。同P0—P2口一樣 ,應(yīng)由軟件向口鎖存器寫(xiě)“1”,即使得鎖存器Q端保持為1,與非門(mén)0輸出為0,F(xiàn)ET場(chǎng)效應(yīng)管截止,引腳端可作為高阻輸入。當(dāng)CPU發(fā)出讀命令時(shí),使緩沖器的“讀引腳”信號(hào)有效,三態(tài)緩沖器開(kāi)通,于是引腳的狀態(tài)經(jīng)兩個(gè)緩沖器到CPU內(nèi)部路線。,(二)P3口用作第二功能使用,當(dāng)端口用于第二功能時(shí).8個(gè)引腳是按位獨(dú)立定義。當(dāng)某位被用作第二功能時(shí),該位的D鎖存器Q應(yīng)被內(nèi)部硬件自動(dòng)置1,使

14、與非門(mén)對(duì)“第二輸出功能端W”是暢通的。 輸入:Q=1,W=1(W不作第二功能輸出) 讀引腳無(wú)效,只有T0、T1、INT0、INT1、RXD有效,五、端口的負(fù)載能力和接口要求,P0口的輸出級(jí)與P1—P3口的輸出級(jí)在結(jié)構(gòu)上是不同的!因此,其負(fù)載能力與接口要求也各不相同。①P0口與其它口不同,它的輸出級(jí)無(wú)上拉電阻。 當(dāng)把它用作通用I/O口使用時(shí),輸出級(jí)是開(kāi)漏電路,輸入時(shí)需外接上拉電阻; 用作輸入時(shí)

15、,應(yīng)先向口鎖存器(80H)寫(xiě)1; 把它當(dāng)作地址/數(shù)據(jù)總線時(shí)則無(wú)需外接上拉電 阻。 P0口的每一位輸出可驅(qū)動(dòng)8個(gè)LS型TTL負(fù)載。,②P1—P3口的輸出級(jí)接有內(nèi)部上拉負(fù)載電阻,它們的每一位輸出可驅(qū)動(dòng)3個(gè)LS型TT負(fù)載。 作為輸入口時(shí),任何TTL電路都能以正常的方式驅(qū)動(dòng)805l單片機(jī)(HMOS)的P1—P3口。由于它們的輸出級(jí)具有上拉電阻,也可以被集電極開(kāi)路(oc門(mén))或漏極開(kāi)路所驅(qū)動(dòng),而無(wú)需外接上拉電阻,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論