




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、教學(xué)目標(biāo) 7.1 接口概述 7.2 MCS-51單片機(jī)內(nèi)部并行I/O端口及其應(yīng)用 7.3 并行I/O接口芯片 本章小結(jié) 思考題與習(xí)題,第7章 MCS-51單片機(jī)并行接口,教學(xué)目標(biāo),1. 了解接口的概念、作用,區(qū)分接口和端口的不同。 2. 了解MCS-51單片機(jī)P0、P1、P2、P3四個(gè)端口內(nèi)部結(jié)構(gòu),掌握各個(gè)端口功能特性。 3. 掌握MCS-51單片機(jī)端口三個(gè)不同操作方式:輸出數(shù)據(jù)方式、讀端口數(shù)據(jù)方式、讀引腳方式。 4. 了解并行IO接口芯片8255內(nèi)部結(jié)構(gòu)及工作原理,掌握8255 編程應(yīng)用。,7.1 接 口 概 述,3,二、 接口與端口,一、 為什么需要I/O接口,三、 接口電路主要功能,四、
2、 緩沖與鎖存,五、 數(shù)據(jù)傳送方式,4,CPU,存儲(chǔ)器,CPU,I/O設(shè)備,接口電路,對(duì)CPU和外部設(shè)備之間的數(shù)據(jù)傳送進(jìn)行協(xié)調(diào),一、為什么需要I/O接口,5,二、I/O接口與I/O端口,CPU通過端口地址就可以對(duì)端口中的數(shù)據(jù)進(jìn)行讀寫。,I/O端口:,I/O接口:,常指I/O接口中帶有端口地址的寄存器或緩沖器,指CPU和外設(shè)之間的I/O接口芯片,關(guān)系:,一個(gè)外設(shè)通常有一個(gè)I/O接口, 一個(gè)I/O接口可以有多個(gè)I/O端口。,可能不全有,但至少有一個(gè),給每個(gè)端口一個(gè)編號(hào),稱為外設(shè)I/O端口編址技術(shù),單獨(dú)編址,統(tǒng)一編址,思考:一個(gè)I/O接口可以有多個(gè)I/O端口,如何區(qū)分各個(gè)端口呢?,單獨(dú)編址:,端口地址
3、和存儲(chǔ)器單元地址分別編址,相互獨(dú)立。,不占用存儲(chǔ)器地址。 需要有專用的I/O指令。,MCS51單片機(jī) 沒有專用I/O指令,特點(diǎn):,將I/O和存儲(chǔ)器統(tǒng)一進(jìn)行編址,端口地址占用部分存儲(chǔ)器單元地址。,訪問存儲(chǔ)器與I/O端口指令共用。 外設(shè)端口地址安排靈活,數(shù)量不受限制。 地址被占用的存儲(chǔ)器單元不能使用。,MCS51單片機(jī) 屬于這種編址方式,統(tǒng)一編址:,FFH,0,0,0,1,00H-FEH,1,1,1,0,10,三、接口電路主要作用,1)實(shí)現(xiàn)不同外設(shè)的速度匹配。 2)改變數(shù)據(jù)的傳輸方式。 3)改變信號(hào)的性質(zhì)和電平。,11,1)數(shù)據(jù)鎖存,數(shù)據(jù)在數(shù)據(jù)總線上停留的時(shí)間十分短暫,8051單片機(jī)的4個(gè)并行I/
4、O口輸出鎖存!,四、緩沖與鎖存,輸出端的狀態(tài)不隨輸入端的狀態(tài)變化而變化,狀態(tài)一直保持到下一個(gè)鎖存允許時(shí)才更新。,2)數(shù)據(jù)緩沖,四、緩沖與鎖存,輸入信號(hào)雖然已經(jīng)準(zhǔn)備好,受到隔離而不能送到輸出端,在特定信號(hào)控制下才能送到輸出端。,T/C方式2的邏輯結(jié)構(gòu)圖,外設(shè)數(shù)據(jù)準(zhǔn)備好后不能直接送入總線,以防造成數(shù)據(jù)沖突,8051單片機(jī)的4個(gè)并行I/O口輸入緩沖!,13,五、數(shù)據(jù)傳送方式,1.同步傳送:無條件直接傳送。 2.異步傳送:查詢傳送。 3.中斷傳送:利用中斷功能傳送。 4.DMA傳送:不通過CPU,由DMA控制器控制,直接在外設(shè)之間傳送數(shù)據(jù)。,14,7.2 MCS-51單片機(jī)內(nèi)部并行I/O端口及其應(yīng)用,
5、7.2.1 端口的功能描述,7.2.2 端口的內(nèi)部結(jié)構(gòu),7.2.3 應(yīng)用舉例,MCS-51系列單片機(jī)外部引腳說明,P0口(3932腳): P0.0P0.7統(tǒng)稱為P0口。 P0口可作為通用I/O接口。 在接有片外存儲(chǔ)器或I/0擴(kuò)展接口時(shí),作低8位地址總線與雙向8位數(shù)據(jù)總線。,7.2.1 端口的功能描述,(2) P1口(18腳): P1.0P1.7統(tǒng)稱為P1口。 P1口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口。,(3) P2口(2128腳): P2.0P2.7統(tǒng)稱為P2口。 P2口也是一個(gè)帶內(nèi)部上拉電阻的雙向I/O口。 在訪問片外存儲(chǔ)器或擴(kuò)展I/O接口時(shí),還用于提供高8位地址。,(4) P3口(10
6、17腳):P3.0P3.7統(tǒng)稱為P3口。 P3口也是一個(gè)帶上拉電阻的I/O口可以作雙向的輸入輸出口。 具有第2功能。,20,一.PO口,7.2.2端口的內(nèi)部結(jié)構(gòu),P0口是一個(gè)三態(tài)雙向口, 可作為通用I/O接口, 也可作為地址/數(shù)據(jù)分時(shí)復(fù)用口。,21,端口三種不同操作方式: 輸出數(shù)據(jù)方式 讀端口數(shù)據(jù)方式 讀引腳方式,(1)P0口作為通用I/O口使用,22,輸出數(shù)據(jù)方式,MOV P0,A MOV P0,#data ANL P0,A XRL P0,#data,所有端口操作指令均可從端口輸出數(shù)據(jù)。,0,0,在CPU向端口輸出數(shù)據(jù)時(shí), 對(duì)應(yīng)的控制信號(hào)為0, 轉(zhuǎn)換開關(guān)把輸出級(jí)與鎖存器端接通, 同時(shí)因與門3
7、輸出為0使V2截止, 此時(shí), 輸出級(jí)是漏極開路電路。,使用時(shí)注意: 在輸出數(shù)據(jù)時(shí), 由于V2截止, 輸出級(jí)是漏極開路電路, 要使“1”信號(hào)正常輸出, 必須外接上拉電阻。,26,讀端口數(shù)據(jù)方式,MOV A,P0 MOV R1,P0 MOV 20H,P0 MOV R1,P0,僅對(duì)端口鎖存器中的數(shù)據(jù)進(jìn)行讀入,0,0,27,讀端引腳方式,為了正確讀入端口引腳數(shù)據(jù),須先使V1、V2管截止,而后讀入。,0,0,0,1,應(yīng)注意 ,當(dāng)作輸入端口 使用時(shí),應(yīng)先對(duì)該口寫入 “1”使場效應(yīng)管T2截止, 防場效應(yīng)管處于導(dǎo)通狀態(tài), 會(huì)將輸入的高電平拉成低 電平,從而引起誤讀。,28,例如讀P0口低4位引腳線上的信號(hào):
8、MOV P0,#0FH MOV A,P0,此時(shí)可分為兩種情況: 一種是從P0口輸出地址或數(shù)據(jù) 另一種是從P0口輸入數(shù)據(jù)。,(2)P0口作為地址/數(shù)據(jù)總線使用,在訪問片外存儲(chǔ)器需從P0輸出地址或數(shù)據(jù)信號(hào)時(shí), 控制信號(hào)應(yīng)為高電平1, 使轉(zhuǎn)換開關(guān)MUX把反向器4的輸出端與V1接通, 同時(shí)把與門3打開。,從P0口送出地址后,又從P0口接收數(shù)據(jù),輸入數(shù)據(jù)類似于從P0口讀引腳。,32,讀取片外RAM的2050H單元內(nèi)容到累加器 MOV DPTR,#2050H MOVX A,DPTR; 執(zhí)行此指令,P3.7引腳上輸出/RD 有效信號(hào)(低電平),DPTR包含16位地址信息由P0(低8位)、P2口(高8位)提供
9、,數(shù)據(jù)由P0口輸入到累加器。,33,Q,二.P1口,34,Q,P1口為準(zhǔn)雙向口。它在結(jié)構(gòu)上與P0口的區(qū)別在于輸出驅(qū)動(dòng)部分, 其輸出驅(qū)動(dòng)部分由場效應(yīng)管V1與內(nèi)部上拉電阻組成。 當(dāng)某位輸出高電平時(shí), 可以提供拉電流負(fù)載, 不必象P0口那樣需要外接電阻。,35,Q,從功能上來看P1只有一種功能(對(duì)MCS51子系列), 即通用輸入輸出I/O接口, 具有輸入、輸出、 端口操作3種工作方式, 每1位口線能獨(dú)立地用作輸入或輸出線。,36,三.P2口 P2口的位結(jié)構(gòu)比P1多了一個(gè)轉(zhuǎn)換控制部分,當(dāng)多路開關(guān)MUX倒向下時(shí),P2口作通用I/O口,具有輸入、輸出、 端口操作3種工作方式, ;,37,三.P2口,當(dāng)擴(kuò)展
10、片外存貯器時(shí),MUX開關(guān)打向上,P2 口作高八位地址線輸出高八位地址信號(hào)。,38,四.P3口 P3口為雙功能I/O口,內(nèi)部結(jié)構(gòu)中增加了第二輸入/輸出功能。,P3口各位的第二功能,40,89S51,P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,+5V,+5V,1K4,3304,7.2.3 應(yīng)用舉例,例1.在圖中P1.4P1.7接四個(gè)發(fā)光二極管LED,P1.0P1.3接四個(gè)開關(guān),編程將開關(guān)的狀態(tài)反映到發(fā)光二極管上。,41,例1.在圖中P1.4P1.7接四個(gè)發(fā)光二極管LED,P1.0P1.3接四個(gè)開關(guān),編程將開關(guān)的狀態(tài)反映到發(fā)光二極管上。,89S51,P1.0,P1
11、.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7,+5V,+5V,1K4,3304,EA,42,ORG 0000H LJMP MAIN ORG 0100H MAIN: MOV P1,#0FFH ;高四位全滅,低四位輸入線送“1”, ABC: MOV A,P1 ;讀P1口引腳開關(guān)狀態(tài),并送入A SWAP A ;低四位開關(guān)狀態(tài)換到高四位 MOV P1,A ;從P1口輸出 ORL P1,#0FH ;高四位不變,低四位送“1”, SJMP ABC ;循環(huán)執(zhí)行 END,7.3 并行I/O接口8255A,7.3.1 8255A的內(nèi)部結(jié)構(gòu)與引腳,7.3.2 8255A的控制字和初始化編程,7
12、.3.5 8255A的應(yīng)用,7.3.4 8255A與系統(tǒng)的連接,7.3.3 8255A的工作方式,1. 8255A的內(nèi)部結(jié)構(gòu),7.3.1 8255A的內(nèi)部結(jié)構(gòu)與引腳,(1)數(shù)據(jù)端口A、B、C 8255A有3個(gè)8位數(shù)據(jù)端口,即端口A、端口B和端口C。編程人員可以通過軟件將它們分別作為輸入端口或輸出端口,3個(gè)端口在不同的工作方式下有不同的功能及特點(diǎn)。,A口有一個(gè)8位數(shù)據(jù)輸出緩沖/鎖存器,一個(gè)8位數(shù)據(jù)輸入緩沖/鎖存器。 B口、C口有一個(gè)8位數(shù)據(jù)輸出緩沖/鎖存器,一個(gè)8位數(shù)據(jù)輸入緩沖器(無鎖存器)。,(2)A組和B組控制電路 決定兩組的工作方式,也可根據(jù)CPU的命令字對(duì)端口C的每1位實(shí)現(xiàn) 按位“復(fù)位”
13、或“置位”。 A組控制電路控制端口A和端口C的上半部(PC7PC4)。 B組控制電路控制端口B和端口C的下半部(PC3PC0)。,(3)數(shù)據(jù)緩沖器 這是雙向8位緩沖器,用于傳送MCS51和8255間的控制字、狀態(tài)字和數(shù)據(jù)字。,(4)讀寫控制邏輯 這部分電路可以接收MCS51送來的讀寫命令和選口地址,用于控制對(duì)8255A的讀寫。,2. 8255A的芯片引腳,8255A是一種有40個(gè)引腳的雙列直插式標(biāo)準(zhǔn)芯片,其引腳排列如圖所示。除電源(5V)和地以外,其它信號(hào)可以分為兩組。,外部設(shè)備3,外部設(shè)備2,外部設(shè)備1,8031、8255A與外部設(shè)備連接示意圖,外部設(shè)備3,外部設(shè)備2,外部設(shè)備1,(1)與外
14、設(shè)相連接的有: PA7PA0:A口數(shù)據(jù)線 PB7PB0:B口數(shù)據(jù)線 PC7PC0:C口數(shù)據(jù)線,D7D0:8255A的數(shù)據(jù)線,和系統(tǒng)數(shù)據(jù)總線相連。,(2)與單片機(jī)相連接的有:,RESET:復(fù)位信號(hào),高電平有效。 當(dāng)RESET有效時(shí),所有內(nèi)部寄存器都被清除。同時(shí),3個(gè)數(shù)據(jù)端口被自動(dòng)設(shè)為輸入方式。,/CS:片選信號(hào),低電平有效。 只有當(dāng) /CS有效時(shí),芯片才被選中,允許8255A與CPU交換信息。,/RD :讀信號(hào),低電平有效。 當(dāng)/RD有效時(shí),CPU可以從8255A中讀取輸入數(shù)據(jù)。,/WR:寫信號(hào),低電平有效。 當(dāng)/WR有效時(shí),CPU可以往8255A中寫入控制字或數(shù)據(jù)。,A1、A0:端口選擇信號(hào):
15、 8255A內(nèi)部有3個(gè)數(shù)據(jù)端口和1個(gè)控制端口,當(dāng): A1A0=00時(shí)選中端口A; A1A0=01時(shí)選中端口B; A1A0=10時(shí)選中端口C; A1A0=11時(shí)選中控制口。,59,8255A 讀 / 寫 控 制 表,7.3.2 8255A的控制字和初始化編程,1. 8255A的控制字,1) 工作方式控制字,2) C口置位/復(fù)位控制字,通過程序把控制字送到8255A的控制寄存器(A1A011),以控制字的最高位來區(qū)分兩種控制字。,1) 工作方式控制字,用于確定各口的工作方式及數(shù)據(jù)傳送方向,2) C口置位/復(fù)位控制字,可以很方便地使C口8位中的任一位清0或置1,8255A初始化的內(nèi)容就是向控制寄存器
16、寫入工作方式控制字或C口置位/復(fù)位控制字。 這兩個(gè)控制字可按同一地址寫入且不受先后順序限制。由于兩個(gè)控制字因標(biāo)志位的狀態(tài)不同,因此8255A能加以區(qū)分。,2. 8255A的初始化編程,例:對(duì)8255A各口作如下設(shè)置:A口方式0輸入,B口方式0輸出,C口高位部分為輸出、低位部分為輸入。設(shè)控制寄存器的地址為03FFH,則其工作方式控制字可設(shè)置為:,D0=1:C口低半部輸入 D1=0:B口輸出; D2=0:B口方式0; D3=0:C口高半部輸出; D4=1:A口輸入; D6D5=00:A口方式0; D7=1:工作方式字標(biāo)志。,控制字為1001 0001 B ,即91H,因此工作方式控制字為1001
17、0001 B ,即91H。 初始化程序段為: MOV DPTR,03FFH MOV A,91H MOVX DPTR,A,置位, 0 0 0 0 0 1 1 1 B(即07H), 復(fù)位, 0 0 0 0 0 1 1 0 B (即06H)。,注意:在對(duì)C口置位/復(fù)位操作前,應(yīng)先設(shè)置C口為輸出。,試確定端口C的D3位置位和復(fù)位的控制字,8255A有3種工作方式,即方式0、方式1和方式2,這些工作方式可用軟件編程來指定。3種工作方式的傳送示意圖如下圖所示。,7.3.3 8255A的工作方式,方式0:普通輸入/輸出方式。(簡單的I/O擴(kuò)展) 方式1:選通輸入/輸出方式,即應(yīng)答式I/O方式。 方式2:A口
18、雙向輸入/輸出方式, B口無方式2。,8255A的3種工作方式 (a)方式0; (b)方式1; (c)方式2,7.3.4 8255A與系統(tǒng)的連接,由于8255A是Intel公司專為其主機(jī)配套設(shè)計(jì)制造的標(biāo)準(zhǔn)化外圍接口芯片,因此它與MCS-51單片機(jī)的連接是比較簡單方便的。 一般來說,MCS-51單片機(jī)擴(kuò)展的I/O接口均與片外RAM統(tǒng)一編址。,外部設(shè)備3,外部設(shè)備2,外部設(shè)備1,8031、8255A與外部設(shè)備連接示意圖,P0口為地址/數(shù)據(jù)復(fù)用口。 數(shù)據(jù)通過P0口直接傳送 地址的低8位是P0通過鎖存器74LS373傳送 而地址的高8位則由P2口傳送。,采用線選法,利用高8位地址線的最高位即P2.7作為線選信號(hào) 而A1、A0則與地址的最末2位即P0.0和P0.1相連。,8255A各端口的地址,端口地址不唯一,只要是P2.7=0,總是對(duì)應(yīng)8255A的端口的地址,地址重疊。,74,7.3.5 8255A的應(yīng)用,例1 :,自編一程序,從8255的PB口輸入數(shù)據(jù),取反后從PC口輸出,使與PC口相連的8個(gè)LED顯示輸入開關(guān)狀態(tài)的“非”量。,實(shí)驗(yàn)連線: 將8255的(PC0PC7)連至LE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 互聯(lián)網(wǎng)建設(shè)合同范本
- 分期合同范本模板
- 廠子務(wù)工合同范例
- 吊車協(xié)議合同范本
- 廈門合同范例范例
- 制造加工企業(yè)勞動(dòng)合同范例
- 保供煤合同范例
- 出售商用烤箱合同范例
- 沙子承包的合同范本
- 同意賣公司股合同范例
- 《園林機(jī)械使用與維修》課件-任務(wù)3.園林養(yǎng)護(hù)機(jī)械
- deepseek-r1論文-中文翻譯版
- 項(xiàng)目式學(xué)習(xí)在小學(xué)數(shù)學(xué)教學(xué)中的應(yīng)用
- 2025年中遠(yuǎn)海運(yùn)物流有限公司招聘筆試參考題庫含答案解析
- 2025中智集團(tuán)下屬單位公開招聘41人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 設(shè)備維修的基本技能培訓(xùn)
- 產(chǎn)后腹直肌分離治療
- 2025年中國郵政招聘筆試參考題庫含答案解析
- 人教版(2024)七年級(jí)英語上冊(cè)新教材的變化及教學(xué)建議課件
- 2025年新聞部工作計(jì)劃
- 合同 水電押金條款
評(píng)論
0/150
提交評(píng)論