版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本章要點(diǎn) 并行接口是單片機(jī)與外圍設(shè)備進(jìn)行信息交換的一種重要通道,本章主要介紹8051單片機(jī)片內(nèi)并行接口的結(jié)構(gòu),以及片外擴(kuò)展并行接口的方法。 本章還介紹在控制系統(tǒng)中常用的顯示器、鍵盤接口。要求熟練掌握這些接口的設(shè)計(jì)技巧、編程方法 按時(shí)間或計(jì)數(shù)方式進(jìn)行控制也是控制系統(tǒng)一種重要和基本的工作方式,本章介紹片內(nèi)定時(shí)/計(jì)數(shù)器的結(jié)構(gòu)及使用方法。第一節(jié) 8051單片機(jī)的片內(nèi)并行接口 一、片內(nèi)并行接口的結(jié)構(gòu) 1.P0口:P0口是一組8位的三態(tài)雙向口, 可以作為通用的I0口使用,擴(kuò)充片外器件時(shí),也可以作為地址數(shù)據(jù)總線復(fù)用口。但在寫入1時(shí),需要在引腳接入上拉電阻,才能輸出高電平。 寫入P0口數(shù)據(jù)的鎖存器選擇I0口或
2、地址數(shù)據(jù)總線的多路開關(guān)輸出驅(qū)動(dòng)管可控的門電路 2.P1口:P1口是一組準(zhǔn)雙向口,與P0不同的是場(chǎng)效應(yīng)晶體管V1改用上拉電阻R,因此作為輸出口使用不須外接上拉電阻,寫人1,輸出驅(qū)動(dòng)管V2截止,引腳由內(nèi)部上拉電阻拉成高電平,寫人0,驅(qū)動(dòng)場(chǎng)效應(yīng)管V2導(dǎo)通,輸出低電平。作為輸入口使用時(shí),應(yīng)先向鎖存器寫“l(fā)”。 3.P2口:P2口也是準(zhǔn)雙向口,與P1不同的是其內(nèi)部有一個(gè)多路開關(guān)MUX,當(dāng)它指向鎖存器Q端時(shí)作通用I0口使用。作為輸出口,寫入“1”,V2截止,上拉電阻使引腳輸出高電平。寫入“0”,V2導(dǎo)通輸出低電平。作為輸入口,應(yīng)先向鎖存器寫“l(fā)”。MUX指向地址總線時(shí),作為高8位地址的輸出口。從PCH、D
3、PH或P2本身輸出高8位地址。 4.P3口:P3口也是準(zhǔn)雙向口,有兩個(gè)功能,第一功能作為通用I0口,第二功能分別作為串口、外部中斷輸入口、計(jì)數(shù)信號(hào)輸入口和WR、RD讀寫控制信號(hào)的輸出口。返回本章首頁(yè) 二、片內(nèi)并行接口的使用 1.作為通用I/O口使用;可使用傳送指令,但輸入時(shí)應(yīng)先向鎖存器寫“l(fā)”后才能使用輸入指令MOV A,P1,因?yàn)榻涌诘妮敵鲵?qū)動(dòng)管V2若處于導(dǎo)通狀態(tài),不論并口輸入腳是0還是1,其信號(hào)都將被V2接地,輸入都將為0。為此應(yīng)先向并口寫“1”令V2管截止,才能從引腳讀人真實(shí)值,P0作為輸出口使用時(shí),還應(yīng)注意外接上拉電阻。 2.作為地址數(shù)據(jù)總線使用:系統(tǒng)擴(kuò)展時(shí),P0口改作低8位地址/數(shù)據(jù)
4、的復(fù)用總線,P2口改作高8位地址總線。顯然,此時(shí)P0口和P2口都不能作為通用IO口使用。 3.可進(jìn)行位操作:利用位操作指令,可以對(duì)P0P3口的每一位分別進(jìn)行傳送,置位、查詢或邏輯運(yùn)算。 4.P3口可以提供第二功能:可作為串口、外中斷輸入、定時(shí)/計(jì)數(shù)的外信號(hào)輸入以及外部存儲(chǔ)器的讀寫選通。 第二節(jié) 擴(kuò)展并行I/O口 和8255A并行接口芯片 一、擴(kuò)展并行I/O口 8051單片機(jī)片內(nèi)有P0、P1、P2、P3四組并行接口,對(duì)于一般控制系統(tǒng)已經(jīng)足夠使用,無(wú)需再擴(kuò)展,但在使用外設(shè)較多情況下,如使用鍵盤、顯示器等,或在片外擴(kuò)展存儲(chǔ)器時(shí), 若并口不敷使用,就可以在片外擴(kuò)展。 由于8051對(duì)片內(nèi)并口視同片內(nèi) R
5、AM,傳送數(shù)據(jù)時(shí)也是使用片內(nèi)寄存器的傳送指令。所以片外擴(kuò)展并行I/O口,可以視同片外擴(kuò)展存儲(chǔ)器,采用相同的連接方法,并且在地址空間安排上,也是和擴(kuò)展片外存儲(chǔ)器統(tǒng)一考慮,以免重疊。 1.使用三態(tài)門電路74LS244擴(kuò)展I/O入口 圖為利用8位三態(tài)門電路74LS244擴(kuò)展輸入或輸出口。單片機(jī)高位地址線選出一根與RD相與后接74LS244的G引腳,作選通信號(hào)。若選用P2.7則接口地址為7FFFH,若選用P2.6,則接口地址為0BFFFH。注意不要與片外存儲(chǔ)器沖突。輸出時(shí)可使用以下程序。 MOV DPTR,#7FFFH MOVXDPTR,A輸入時(shí)可使用以下程序 MOVDPTR,#0BFFFH MOVX
6、A,DPTR擴(kuò)展輸入口擴(kuò)展輸出口 2.使用D觸發(fā)器電路74LS373擴(kuò)展I/O口 如圖所示,若傳送數(shù)據(jù)時(shí),輸出時(shí)可使用以下程序MOVDPTR,#7FFFHMOVXDPTR,A輸入時(shí)可使用以下程序或MOVDPTR,#0BFFFHMOVXDPTR,A擴(kuò)展輸入口擴(kuò)展輸出口 二、8255A的結(jié)構(gòu)與工作方式 在片外擴(kuò)展并行口,常用8255A芯片,這是一種可編程的并行接口芯片,它有A、B、C三個(gè)并行I/O口,每個(gè)口可以通過初始化編程,使之工作在以下三種方式,它的內(nèi)部結(jié)構(gòu)如下圖所示。 8255A的三種工作方式方式0(即基本的輸入輸出方式): 此方式不提供選通和應(yīng)答信號(hào),稱為基本或簡(jiǎn)單的I/O方式,可通過編程
7、將A、B兩通道指定為8位輸人或輸出口,C通道可指定為兩個(gè)4位口,輸出時(shí)有鎖存器,輸入時(shí)無(wú)鎖存器。方式1(選通輸入輸出方式): 此方式通過應(yīng)答聯(lián)絡(luò)信號(hào),選通動(dòng)態(tài)數(shù)據(jù)。可以將A、B兩通道指定為選通方式的輸入或輸出口。C通道分兩組,分別作為A和B的聯(lián)絡(luò)應(yīng)答信號(hào)口,剩下的兩位仍可作為基本輸入或輸出口。I/O均可鎖存。方式2(雙向傳送方式): 雙向傳送方式指在傳輸中既可輸入也可輸出。只有A通道可以工作于方式2,若A工作于方式2,C通道高5位作為A通道的聯(lián)絡(luò)應(yīng)答信號(hào),其余的低3位,既可作為B通道工作于方式1時(shí)的聯(lián)絡(luò)與應(yīng)答信號(hào),也可在B通道工作于方式0時(shí),將其余的低3位作為基本的輸入或輸出口。 三、8255
8、A的引腳功能 引腳中A0、A1用于8255A芯片的片內(nèi)尋址,A0、A1的不同組合,指向片內(nèi)不同的寄存器 。A0 A1 選中的寄存器0 0 A口的數(shù)據(jù)寄存器0 1 B口的數(shù)據(jù)寄存器1 0 C口的數(shù)據(jù)寄存器1 1 控制字寄存器 8255A與單片機(jī)的連接四、不同工作方式時(shí)的功能列表 A口 B口 C口方式0 8位基本方式 8位基本方式 兩個(gè)4位分別 的I或O 的I 或O 全為基本方式的I或O方式1 8位選通方式 8位選通方式 當(dāng)A、B為方式1 的I或O 的I 或O 6位分別作為 A、B聯(lián)絡(luò)信號(hào) 2位作為I或O 當(dāng)A工作于方式2方式2 雙向傳送 不能工作于 5位作為A聯(lián)絡(luò)信號(hào)方式2 當(dāng)B工作于方式1 3
9、位作為A聯(lián)絡(luò)信號(hào) 注: I為輸入O為輸出 五、8255A初始化程序設(shè)計(jì) 8255A是一種可編程的并行接口,使用前必須向控制寄放器寫入方式控制字與置位控制字。 1.方式控制字: 2.C口置位復(fù)位控制字: D7 D6 D5 D4 D3 D2 D1 D0 標(biāo)志位 無(wú)效位 被操作位選擇字 置位=1 復(fù)位=0 注:1.方式控制字的標(biāo)志位D7=1,置位復(fù)位控制字的標(biāo)志位D7=0 2.C口置位復(fù)位控制宇中的D3、D2、D1用于指定要置數(shù)的 對(duì)象(見表6-2),D0用于指定所要置的數(shù)(0或1) D7 D6 D5 D4 D3 D2 D1 DO A口 A口 C口 B口 B口 C口 標(biāo)志位 A口方式 I/O選擇 高
10、4位I/O 方式 I/O選擇 低4位I/O 返回本章首頁(yè)第三節(jié) 控制系統(tǒng)常用的外設(shè)接口 一、顯示器接口 1.靜態(tài)顯示方式 靜態(tài)顯示方式指每一位顯示器的字段控制是獨(dú)立的,每一位的顯示器都需要配一個(gè)8位輸出口來輸出該字位的七段碼。如果顯示位數(shù)為N,則需要N8個(gè)輸出口。一般片內(nèi)I/O口不足供應(yīng),需要在片外擴(kuò)充。以三個(gè)LED字符顯示器組成的三位的靜態(tài)顯示的電路為例,需要在片外擴(kuò)充38個(gè)輸出口去控制,設(shè)顯示數(shù)據(jù)放在片內(nèi)RAM的79H、7AH、7BH單元,下面是它的連接圖與顯示程序。 三位數(shù)碼管構(gòu)成的靜態(tài)顯示 3位字符顯示器分別由8255A的A口、B口、C口驅(qū)動(dòng),A口地址為7F00H,B口地址為7F01H
11、,C口地址為7F02H,控制口地址7F03H。靜態(tài)顯示程序DISPLAY:MOVDPTR,#7F03H ;8255A初始化 MOVA,#80H MOVDPTR,A MOVR7,#03H ;三個(gè)LED MOVR0,#79H ;取緩沖器首址 MOVP2,#7FH MOVR1,#00HLOOP: MOVDPTR,#TABLE MOVA,RO ;取出要顯示的數(shù) MOVCA,A+DPTR ;取出七段碼 MOVXR1,A ;送段碼至A口 INCR1 ;調(diào)整輸出口地址 INCR0 ;調(diào)整緩沖器地址 DJNZR7,LOOP RETTABLE: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82
12、H,0F8H,80H. 2.動(dòng)態(tài)顯示方式 動(dòng)態(tài)顯示又稱為掃描顯示方式,在某一時(shí)刻只讓一個(gè)字位處于選通狀態(tài),使某一位數(shù)碼管被點(diǎn)亮,其他字位一律斷開,同時(shí)在字段線上發(fā)出該位要顯示的字段碼,顯示出相應(yīng)的字符。然后依次掃描輪流點(diǎn)亮,只要掃描速度快,利用人眼的視覺殘留效應(yīng)和數(shù)碼管的余輝,會(huì)使人感覺到幾個(gè)位數(shù)碼管都在穩(wěn)定地顯示。 動(dòng)態(tài)顯示只需要配一個(gè)8位輸出口作為段碼鎖存器,用于輸出七段碼,例如要顯示的數(shù)碼為6位,待顯示的字符存于69H-6EH,電路與程序如下,其中輸出七段控制碼的鎖存器地址為8000H,字位控制碼的鎖存器地址為6000H 。6位數(shù)碼管構(gòu)成的動(dòng)態(tài)顯示 動(dòng)態(tài)顯示程序DISPLAY:MOV R
13、0,#69H MOV R3,#01H ;從右邊開始 MOV A,R3DIS1: MOV DPIR,#6000H MOVX DPTR,A ;送位碼 MOV A,R0 ;取緩沖器內(nèi)容 ADD A,#19H ;當(dāng)前與表頭距離為19 MOVC A,A十PC ;取段碼 MOV DPTR,#8000H MOVX DPTR,A ACALL DELAY ;延時(shí) INC R0 MOV A,R3JNB ACC.5,DIS2 ;顯示到6位否 RL A ;調(diào)整位AJMP DIS1DIS2: RETDELAY: MOV R7,#02HDELAY1: MOV R6,#0FFHDELAY2: DJNZ R6,DELAY2
14、DJNZ R7,DELAY1 RETTABLE: DB 3FH,06H,5BH,4FH,66H,6DH, 二、鍵盤接口 1.獨(dú)立式鍵盤:常用按鍵可直接連接在片內(nèi)并口如P1.0,若檢查該鍵是否按下,可使用以下指令: SETB P1.0 JNBP1.0,TOONE 也可以用以下指令 MOVP1,#OFFH MOV A,P1 ANL A,#01H JZ TOONE獨(dú)立式鍵盤防抖動(dòng)程序KEY:ORLP1,#07HMOVA,P1CPLAANLA,#07H ;屏蔽高位JZ KEY ;無(wú)鍵按下再查ACLLL MS20 ;有鍵按下延時(shí)MOVA,P1 ;延時(shí)后再查CPLA ANLA,#07HJZKEYJBACC
15、.0,TOONEJBACC.1,TOTWO 通過延時(shí)再查,若發(fā)現(xiàn)無(wú)鍵按下,則表明第一次查到的有鍵按下并不是真正有鍵按下,而是抖動(dòng)引起的。若第二次查到仍有鍵按下,才說明確實(shí)有鍵按下。返回本章首頁(yè) 2.行列式鍵盤 行列式或稱矩陣式鍵盤的按鍵與接口輸入線不是一對(duì)一的關(guān)系,所以使用中,除了要檢查矩陣式鍵盤中是否有鍵按下外, 同時(shí)還要檢查按下的鍵是哪一個(gè)鍵,這兩個(gè)工作可以由鍵盤掃描程序完成 。按上述順序以及鍵值編的鍵盤掃描程序 KEY: MOV DPTR,#6000H ;373地址 MOV A,#00H MOVX DPTR,A ;送列值 ORL P1,#07H MOV A,P1 ;讀行值 CPL A A
16、NL A,#07H JZ BACK ;無(wú)鍵按下KEYGET:ACALL MS20 ;避開抖動(dòng) MOV A,P1 CPL A ANL A,#07H JZ KEYKEYG2:MOV R2,#0FEH MOV R4,#00HKEYG3:MOV DPTR,#6000H MOV A,R2 MOVX DPTR,A ;送列值 MOV A,P1 JB ACC.0,LINE1 MOV A,#00H ;有取00H AJMP KEYENDLINE1:JB ACC.1,LINE2 ;第二行有否 MOV A,#06H ;行值取06H AJMPKEYENDLINE2:JB ACC.2,NEXTCL ;第三行有否 MOV
17、A,#OCH ;取0CHKEYEND:ADD A,R4;鍵值=行值+列值 MOV 30H,A;存鍵值KEYFRE:MOV A,P1;等待鍵釋放 CPL A ANLA,#07H JNZKEYFRE ACALLMS20BACK:RETNEXTCL:INCR4;調(diào)整列值 MOV A,R2 JNBACC.5,KEYNEXT ;掃完6列否 RLA;未完調(diào)整列值 MOVR2,AAJMPKEYG3KEYNEXT:RETMS20:MOVR5,#20HMS1:MOVR6,#0C8H DJNZR6,$ DJNZR5,MS1 RET第四節(jié) 8051單片機(jī)的定時(shí)/計(jì)數(shù)器一、定時(shí)/計(jì)數(shù)器工作方式 方式 0:作13位計(jì)數(shù)
18、器使用(圖中只畫出TI,T0同)計(jì)數(shù)器為13位C/T=0對(duì)定時(shí)脈沖計(jì)數(shù)作定時(shí)器。 C/T=1作為外部脈沖計(jì)數(shù)器。 控制選通開關(guān) TRl=1開始計(jì)數(shù) TRl=0停止計(jì)數(shù)方式 1 :作為16位計(jì)數(shù)器使用(圖中只畫出TI,T0同)C/T=0對(duì)定時(shí)脈沖計(jì)數(shù)作定時(shí)器。 C/T=1作為外部脈沖計(jì)數(shù)器。 除計(jì)數(shù)器為16位其他與方式0相同方式 2 :作為可重裝時(shí)間常數(shù)的8位計(jì)數(shù)器(圖中只畫出TI,T0同)C/T=0對(duì)定時(shí)脈沖計(jì)數(shù)作定時(shí)器 C/T=1作為計(jì)數(shù)器計(jì)數(shù)器為8位重裝計(jì)數(shù)器為8位控制計(jì)數(shù)開關(guān) TRl=1 開始計(jì)數(shù)TRl=0 停止計(jì)數(shù)方式 3:組成兩個(gè)獨(dú)立8位計(jì)數(shù)器 只有T0可工作于方式3,當(dāng)T0工作于方式3,T1可工作于方式0、1、2但無(wú)控制選通和中斷功能。THO和TL0分開,分別組成兩個(gè)獨(dú)立的8位計(jì)數(shù)器 控制選通開關(guān) 二、TMOD寄存器的初始化 在使用定時(shí)計(jì)數(shù)器之前,要根據(jù)需要,對(duì)TMOD進(jìn)行初始化。 TMOD各位定義D7 D6 D5 D4 D3 D2 D1 D0GATE C/T M1 M0 GATE C/T M1 M0 T1 T0M1 MO工作方式 計(jì)數(shù)器位數(shù)O 0 方式0計(jì)數(shù)器為13位O 1 方式1 計(jì)數(shù)器為16位1 0方式2 8位計(jì)數(shù)器,初值能自動(dòng)重裝1 1 方式3 兩個(gè)8位計(jì)數(shù)器,僅限T0使用C/T=0選擇定時(shí)方式,CT=1選擇計(jì)數(shù)方式 三、TCO
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單位解聘合同范例
- 2024年電動(dòng)巡邏車采購(gòu)合同范本
- 抵債房買賣合同模板
- 企業(yè)水電包工合同范例
- 打包站轉(zhuǎn)讓合同范例
- 工廠司機(jī)合同范例
- 政府購(gòu)買電車合同模板
- 傳媒文化公司合同范例
- 工資代發(fā)合同范例
- ppp招標(biāo)合同模板
- MOOC 房地產(chǎn)管理-華中科技大學(xué) 中國(guó)大學(xué)慕課答案
- 經(jīng)濟(jì)思想史智慧樹知到期末考試答案2024年
- 2.3周而復(fù)始的循環(huán)課件教科版高中信息技術(shù)必修1
- 統(tǒng)計(jì)學(xué)計(jì)算題及統(tǒng)計(jì)學(xué)計(jì)算題例題
- 水中嗜肺軍團(tuán)菌檢驗(yàn)方法 酶底物定量法
- 耳穴壓豆治療糖尿病
- (2024年)計(jì)劃生育完整版課件
- 國(guó)際關(guān)系理論智慧樹知到期末考試答案2024年
- (2024年)冠心病的診斷和規(guī)范化治療
- 卡西尼卵形線在高考中應(yīng)用
- (高清版)TDT 1068-2022 國(guó)土空間生態(tài)保護(hù)修復(fù)工程實(shí)施方案編制規(guī)程
評(píng)論
0/150
提交評(píng)論