版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第第9章章 顯示器、鍵盤顯示器、鍵盤9.1 顯示器接口電路顯示器接口電路9.2 鍵盤接口電路鍵盤接口電路9.1.1 LED顯示器顯示器1LED顯示器結(jié)構(gòu)與原理顯示器結(jié)構(gòu)與原理LED顯示器是由發(fā)光二極管顯示字段的顯示器顯示器是由發(fā)光二極管顯示字段的顯示器件。件。在微機(jī)應(yīng)用系統(tǒng)中通常使用的是七段在微機(jī)應(yīng)用系統(tǒng)中通常使用的是七段LED。這。這種顯示塊有共陰極與共陽極兩種,如圖種顯示塊有共陰極與共陽極兩種,如圖9-1所示。所示。七段顯示器與微機(jī)接口非常容易。如表七段顯示器與微機(jī)接口非常容易。如表9-1所示。所示。 圖圖9-1 9-1 七段七段LEDLED顯示器顯示器 使用使用LED顯示器時,要注意區(qū)分
2、這兩種不同的接法。為了顯顯示器時,要注意區(qū)分這兩種不同的接法。為了顯示數(shù)字或字符,必須對數(shù)字或字符進(jìn)行編碼。七段數(shù)碼管加上一示數(shù)字或字符,必須對數(shù)字或字符進(jìn)行編碼。七段數(shù)碼管加上一個小數(shù)點,共計個小數(shù)點,共計8段。因此為段。因此為LED顯示器提供的編碼正好是一個顯示器提供的編碼正好是一個字節(jié)。用字節(jié)。用LED顯示器顯示顯示器顯示16進(jìn)制數(shù)的編碼已列在表進(jìn)制數(shù)的編碼已列在表9-1所示。所示。 abcdegGNDfdpGNDabcefgddpabcdefgdpdpgfedcba5V(a)(b) 為了實現(xiàn)為了實現(xiàn)LED顯示器的動態(tài)掃描,除了要給顯示器提供顯示器的動態(tài)掃描,除了要給顯示器提供段碼(字形
3、編碼)的輸入之外,還要對顯示器加位的控制段碼(字形編碼)的輸入之外,還要對顯示器加位的控制(控制(控制LED顯示器亮滅),這就是通常所說的顯示器亮滅),這就是通常所說的位控和段控。位控和段控。 表表9-1 LED顯示器顯示器16進(jìn)制數(shù)編碼進(jìn)制數(shù)編碼 2LED顯示器與顯示方式顯示器與顯示方式在微機(jī)應(yīng)用系統(tǒng)中使用在微機(jī)應(yīng)用系統(tǒng)中使用LED顯示塊構(gòu)成顯示塊構(gòu)成N位位LED顯示器。圖顯示器。圖9-11是是N位顯示器的構(gòu)成原理。位顯示器的構(gòu)成原理。LED顯示器有兩種顯示方式:顯示器有兩種顯示方式:(1)LED靜態(tài)顯示方式靜態(tài)顯示方式(2)LED動態(tài)顯示方式動態(tài)顯示方式a b c d e f Rdpa b
4、 c d e f Rdpa b c d e f Rdpa b c d e f Rdpa b c d e f Rdp3.83.83.83.83.8 I/O口位選控制 I/O口段選控制圖圖9-11 N位位LED顯示器顯示器 GND/+5VGND/+5VGND/+5VGND/+5VGND/+5VI/O(1)I/O(2)I/O(3)I/O(4)圖圖9-12 四位靜態(tài)四位靜態(tài)LED顯示器電路顯示器電路 靜態(tài)顯示靜態(tài)顯示即由單片機(jī)一次輸出顯示后,就能保持,即由單片機(jī)一次輸出顯示后,就能保持,直到下次送新的顯示模式為止。直到下次送新的顯示模式為止。優(yōu)點:優(yōu)點:顯示可靠,占用機(jī)時少。顯示可靠,占用機(jī)時少。缺點
5、:缺點:使用元件多,線路比較復(fù)雜。使用元件多,線路比較復(fù)雜。 適用于顯示位數(shù)少的情況。每個顯示器需適用于顯示位數(shù)少的情況。每個顯示器需8位輸出口位輸出口控制??刂?。 動態(tài)顯示動態(tài)顯示即單片機(jī)定時對顯示器掃描。此時,顯示即單片機(jī)定時對顯示器掃描。此時,顯示器件分時工作,每次只能有一個器件顯示。(仿真器)器件分時工作,每次只能有一個器件顯示。(仿真器)優(yōu)點:優(yōu)點:硬件少,價格低。硬件少,價格低。缺點:缺點:占用機(jī)時多,只要單片機(jī)不執(zhí)行顯示程序,顯示占用機(jī)時多,只要單片機(jī)不執(zhí)行顯示程序,顯示就立即停止。就立即停止。3LED顯示器接口顯示器接口從從LED顯示器的原理可知,為了顯示字母與數(shù)顯示器的原理可
6、知,為了顯示字母與數(shù)字,必須最終轉(zhuǎn)換成相應(yīng)的段選碼。這種轉(zhuǎn)換可字,必須最終轉(zhuǎn)換成相應(yīng)的段選碼。這種轉(zhuǎn)換可以通過以通過硬件譯碼器或軟件進(jìn)行譯碼硬件譯碼器或軟件進(jìn)行譯碼。l l 硬件譯碼器硬件譯碼器LED顯示器接口(如圖顯示器接口(如圖9-14所示)所示)l l 軟件譯碼軟件譯碼LED顯示器接口(如顯示器接口(如圖圖9-15 9-16所所示)示)硬件譯碼:硬件譯碼:鎖存器鎖存器 譯碼驅(qū)動器譯碼驅(qū)動器 顯示器顯示器圖圖9-14 利用硬件譯碼器的七段利用硬件譯碼器的七段LED接口電路接口電路 MC14495為七段碼顯示器譯碼驅(qū)動器為七段碼顯示器譯碼驅(qū)動器圖圖9-15 通過通過8155擴(kuò)展擴(kuò)展I/O口控
7、制的口控制的8位位LED動態(tài)顯示接口動態(tài)顯示接口8155的的A口作為位控口,經(jīng)反相驅(qū)動器接顯示口作為位控口,經(jīng)反相驅(qū)動器接顯示器的公共陰極;器的公共陰極;8155的的B口作為段碼控制口,經(jīng)同相驅(qū)動器接口作為段碼控制口,經(jīng)同相驅(qū)動器接顯示器的各個陽極。顯示器的各個陽極。軟件譯碼程序設(shè)計思想:軟件譯碼程序設(shè)計思想:1 1、將段碼表(顯示數(shù)據(jù))存放在將段碼表(顯示數(shù)據(jù))存放在RAM的的 (79H7EH)中。)中。2、根據(jù)要顯示的數(shù)字或字符去查相應(yīng)的段碼。、根據(jù)要顯示的數(shù)字或字符去查相應(yīng)的段碼。3、然后將段碼輸出到七段、然后將段碼輸出到七段LED的驅(qū)動器上。的驅(qū)動器上。4、采用掃描的方式控制、采用掃描
8、的方式控制LED的點亮順序。的點亮順序。顯示數(shù)據(jù)顯示數(shù)據(jù)79H7EH8155的口地址:的口地址:7F00H7F05H偏移量偏移量ROM表首地址當(dāng)前表首地址當(dāng)前PC地址地址MOVC A,A+PC是以是以PC為基址寄存器的單字節(jié)指令。為基址寄存器的單字節(jié)指令。執(zhí)行過程是:執(zhí)行過程是:CPU讀取本指令后,讀取本指令后, PC的值自動的值自動加,累加器加,累加器A的內(nèi)容作為無符號數(shù)與新的的內(nèi)容作為無符號數(shù)與新的PC的的內(nèi)容相加形成一個內(nèi)容相加形成一個16位地址,再將該地址指出的位地址,再將該地址指出的程序存儲器單元的內(nèi)容送累加器程序存儲器單元的內(nèi)容送累加器A。指令執(zhí)行后。指令執(zhí)行后PC指向下一條指令繼
9、續(xù)執(zhí)行。指向下一條指令繼續(xù)執(zhí)行。顯示緩沖區(qū)在顯示緩沖區(qū)在RAM中中7EH 7DH 7CH 7BH 7AH 79HLED6 LED2 LED1存放要顯示的數(shù)據(jù)和字符的段碼存放要顯示的數(shù)據(jù)和字符的段碼程序清單:程序清單:DIR: MOV R0,#79H;置緩沖器指針初值置緩沖器指針初值 MOV R3,#01H;置掃描位初值置掃描位初值 MOV A, R3LD0: MOV DPTR ,#7F01H;A口地址口地址 MOVX DPTR,A INC DPTR; B口地址口地址 MOV A,R0;取顯示數(shù)據(jù);取顯示數(shù)據(jù) ADD A,0DH;加偏移量;加偏移量 MOVC A,A+PC;查表取段碼查表取段碼D
10、IR1:MOVX DPTR,A;段數(shù)據(jù)送段數(shù)據(jù)送B口口 ACALL DL1;延時;延時ms INC R0 MOV A,R3 JB A.5,LD1 RL A MOV R3,A SJMP LD0LD1: RETDSEG: DB 3FH,06H,5BH,.DSEG1:DB 7DH,07H,7FH,.DSEG2:DB 39H,5EH,79H,.DSEG3:DB 31H,6EH,1CH,.DSEG4:DB 18H,00H,00H,.DL1: MOV R7,#02HDL: MOV R6,#0FFHDL6: DJNZ R6,DL6 DJNZ R7,DL RET9動態(tài)顯示子程序流程圖動態(tài)顯示子程序流程圖9.2
11、 鍵盤接口電路鍵盤接口電路編碼鍵盤:編碼鍵盤:由硬件自動提供與被按鍵對應(yīng)的由硬件自動提供與被按鍵對應(yīng)的ASCII碼或其它編碼。如標(biāo)準(zhǔn)計算機(jī)(不是本章碼或其它編碼。如標(biāo)準(zhǔn)計算機(jī)(不是本章討論的內(nèi)容)討論的內(nèi)容)非編碼鍵盤:非編碼鍵盤:軟件方式產(chǎn)生編碼。軟件方式產(chǎn)生編碼。 優(yōu)點:優(yōu)點:結(jié)構(gòu)簡單、成本低廉。結(jié)構(gòu)簡單、成本低廉。 非編碼鍵盤非編碼鍵盤接口技術(shù)的主要內(nèi)容是如何確定被接口技術(shù)的主要內(nèi)容是如何確定被按鍵的行、列位置,即鍵碼(值)識別是接口技按鍵的行、列位置,即鍵碼(值)識別是接口技術(shù)的關(guān)鍵問題。術(shù)的關(guān)鍵問題。按鍵識別:常用行掃描法。按鍵識別:常用行掃描法。鍵盤工作原理鍵盤工作原理行列式鍵盤電
12、路原理如圖行列式鍵盤電路原理如圖9-3所示。按鍵設(shè)置在所示。按鍵設(shè)置在行列式交點上,行列線分別連接到按鍵開關(guān)的兩行列式交點上,行列線分別連接到按鍵開關(guān)的兩端。當(dāng)行線通過上拉電阻接端。當(dāng)行線通過上拉電阻接+5伏時,被鉗位在高伏時,被鉗位在高電平狀態(tài)。電平狀態(tài)。鍵盤中有無按鍵按下是由列線送入全掃描字、鍵盤中有無按鍵按下是由列線送入全掃描字、行線讀入行線狀態(tài)來判斷的。鍵盤中哪一個鍵按行線讀入行線狀態(tài)來判斷的。鍵盤中哪一個鍵按下可由列線逐列置低電平后,檢查行輸入狀態(tài)來下可由列線逐列置低電平后,檢查行輸入狀態(tài)來判斷。判斷。 圖圖9-3行列式鍵盤原理電路行列行列式鍵盤原理電路行列式鍵盤原理電路式鍵盤原理電
13、路輸出口輸出口0 1 1 1 0 1 11 1 0 111 1 1 01111111111011111行列式鍵盤原理圖行列式鍵盤原理圖按鍵識別:按鍵識別:1、測試有無鍵按下;、測試有無鍵按下; 檢查輸入端,是否有端口為低電平。檢查輸入端,是否有端口為低電平。2、去抖動、去抖動 軟件方法:采用延時躲過抖動,時間一般為軟件方法:采用延時躲過抖動,時間一般為1020ms。(也有硬件去抖動電路。(也有硬件去抖動電路P233)3、確定鍵的物理位置(行、列),計算鍵碼。、確定鍵的物理位置(行、列),計算鍵碼。4、等待鍵釋放,通過時間延遲實現(xiàn)。、等待鍵釋放,通過時間延遲實現(xiàn)。 如鍵碼編排為:如鍵碼編排為:
14、00H 01H 02H 03H 04H 05H 06H 07H 08H 09H 0AH 0BH 0CH 0DH 0EH 0FH鍵碼計算公式:鍵碼計算公式: 鍵碼鍵碼= 行首鍵號行首鍵號+列號列號 00 04 +(0,1,2,3) 08 0C 單片機(jī)的鍵盤接口處理單片機(jī)的鍵盤接口處理 單片機(jī)的鍵盤接口處理的內(nèi)容包括以下幾個方面:單片機(jī)的鍵盤接口處理的內(nèi)容包括以下幾個方面:1、鍵掃描、鍵掃描2 2、去抖動、去抖動鍵按下鍵穩(wěn)定前沿抖動后沿抖動3、鍵碼計算、鍵碼計算4、等待鍵釋放、等待鍵釋放 計算鍵碼后,再以延時后進(jìn)行行掃描的方法等待鍵計算鍵碼后,再以延時后進(jìn)行行掃描的方法等待鍵釋放。等待釋放是為了保
15、證鍵的一次閉合僅進(jìn)行一次處釋放。等待釋放是為了保證鍵的一次閉合僅進(jìn)行一次處理。理。00H19H18H17H16H13H12H11H10H08H09H0AH0BH0EH0FH07H06H03H02H01H1AH1BH1EH1FH。9.2.1非編碼鍵盤的接口非編碼鍵盤的接口 鍵盤處理程序的關(guān)鍵是如何識別鍵碼。鍵盤處理程序的關(guān)鍵是如何識別鍵碼。 對鍵盤進(jìn)行控制的方法分為:對鍵盤進(jìn)行控制的方法分為: 程控掃描法程控掃描法 定時掃描法定時掃描法 中斷掃描法。中斷掃描法。一、程序控制掃描方式一、程序控制掃描方式+5V8155PA7PA6.PA0PC0PC1PC2PC35.1K4CEIO/MWRRDALEP
16、0WRRDALEP2.7P2.080310 12 34 5 678 9 10 11 12 1314 1516 1718 19 20 21222324 2526 27 28 2930318155擴(kuò)展擴(kuò)展I/O口組成的行列式鍵盤口組成的行列式鍵盤8155PA口地址口地址7F01HPC口地址口地址7F03H.判斷按鍵是否抬起(以防止重復(fù)進(jìn)行鍵處理)等待鍵釋放后再進(jìn)行進(jìn)一步處理。鍵掃描程序框圖入口有鍵按下?延時12ms有鍵按下?NYNY鍵號入棧保存按鍵抬起?NY鍵號送A返回ORG 1000HKEY1:ACALL KS1 ;調(diào)用判斷有無鍵按下子程序JNZ LK1 ;有鍵按下,轉(zhuǎn)去抖動AJMP KEY1
17、;無鍵按下,返回LK1:ACALL TM12S ;延時12msACALL KS1 ;再查有無鍵按下JNZ LK2 ;確實有鍵按下,逐行掃描,確定具體鍵AJMP KEY1 ;無鍵按下,返回LK2:MOV R2,#0FEH ;首列掃描字送R2 MOV R4,#00H ;首列號R4LK4:MOV DPTR,#7F01H ;首列掃描字送8155的PA口MOV A,R2 ;第一列掃描MOVX DPTR,A ;使第i 列為0(R2中Di位為0)INC DPTRINC DPTR ;指向8155的PC口MOVX A,DPTR ;讀入行狀態(tài)JB ACC.0, LONE ;0行無鍵按下,轉(zhuǎn)查1行LONE:JB A
18、CC.1, LTWO ;1行無鍵按下,轉(zhuǎn)查2行MOV A,#00H ;0行有鍵按下,行首鍵號#00H送AAJMP LKP ;求鍵號LTWO:JB ACC.2, LTHR ;2行無鍵按下,轉(zhuǎn)查3行MOV A,#08H ;1行有鍵按下,行首鍵號#08H送AAJMP LKP ;求鍵號LTHR:JB ACC.3, NEXT ;3行無鍵按下,轉(zhuǎn)查下一列MOV A,#10H ;2行有鍵按下,行首鍵號#10H送AAJMP LKP ;求鍵號MOV A,#18H ;3行有鍵按下,行首鍵號#18H送ALKP: ADD A,R4 ;求鍵號=行首鍵號+列號PUSH ACC ;鍵號入棧LK3:ACALL KS1 ;等待
19、鍵釋放JNZ LK3 ;未釋放,繼續(xù)等待POP ACC ;已釋放,鍵號送ARETNEXT:INC R4 ;指向下一列,列號加1MOV A, R2 ;判斷8列掃描完沒有JNB ACC.7,KND ;8列掃描完,返回RL A ;沒掃描完,置下一列掃描字MOV R2, A ;掃描字送AAJMP LK4 ;繼續(xù)下列掃描KND:AJMP KEY1 ;8列掃描完,返回KS1:MOV DPTR, #7F01H ;查有無鍵按下子程序MOV A,#00HMOVX DPTR,A ;8155 PA口輸出全掃描字#00HINC DPTRINC DPTR ;指向8155的PC口MOVX A,DPTR ;讀入行狀態(tài),若有
20、鍵按下,則A0FFHCPL A ;改成正邏輯,若有鍵按下,則A00HANL A ,#0FH ;屏蔽高四位RET ;子程序返回,當(dāng)有鍵按下時,AA00HT12sm:MOV R7, #18H ;12sm延時子程序TM:MOV R6,#0FFH TM6:DJNZ R6, TM6DJNZ R7,TMRET;td=1+(1+255*2+2)*24+2*MCd.鍵操作及功能處理求出鍵號后要進(jìn)行鍵處理:先判斷是何種鍵,然后:對數(shù)字鍵-送顯示緩沖區(qū)顯示;對功能鍵-執(zhí)行相應(yīng)的功能鍵處理程序。設(shè)圖5.36中,015號鍵為數(shù)字鍵,即鍵號鍵號10H10H的是數(shù)字鍵的是數(shù)字鍵;1631號鍵為功能鍵,即鍵號鍵號10H10
21、H的是功能鍵的是功能鍵,其功能鍵處理程序入口地址分別為:AAA、BBB、CCC、PPP。則轉(zhuǎn)入功能鍵處理程序清單如下:ORG 8000HKEYADR:MOV A ,BUFF ;鍵號送ACLR CSUBB A,#10H ;Y與10H比較JC DIGPRO ;10H,數(shù)字鍵,轉(zhuǎn)AJMP A+DPTRRL A ;使鍵值為0、2、4、6、偶數(shù)KEYTBL:MOV DPTR,#JMPTBLJMPTBL:AJMP AAA ;2 字節(jié)指令散轉(zhuǎn)到16個功能鍵處理 AJMP BBB ; 程序入口AJMP CCCAJMP DDDAJMP EEEAJMP FFFAJMP GGGAJMP HHHAJMP IIIAJMP JJJAJMP KKKAJMP LLLAJMP MMMAJMP NNNAJMP OOOAJMP PPP圖9-7 中斷方式鍵盤接口中斷方式鍵盤接口3反轉(zhuǎn)法鍵盤掃描方式反轉(zhuǎn)法鍵盤掃描方式 (a)線反轉(zhuǎn)法第一步 (b)線反轉(zhuǎn)法第二步 圖9-8 線反轉(zhuǎn)法原理4其它鍵盤接口其它鍵盤接口圖9-9 8031串行I/O口擴(kuò)展的行列式鍵盤接口典型鍵盤典型鍵盤/顯示器接口實
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版智慧家居第三方施工服務(wù)合同范本3篇
- 2024版鍋爐工職業(yè)健康保險合同3篇
- 2024版公關(guān)部門團(tuán)隊建設(shè)與培訓(xùn)經(jīng)理聘用合同3篇
- 2024版出租車駕駛員服務(wù)合同規(guī)范文本3篇
- 2024版新型城鎮(zhèn)化道路施工合同范本6篇
- 2024版房地產(chǎn)項目融資借款合同樣本(含預(yù)售監(jiān)管)3篇
- 2024年度建材城租賃合同修訂范本2篇
- 2024版老舊小區(qū)改造存量房買賣合同范本3篇
- 2024版環(huán)衛(wèi)工人職業(yè)健康體檢與防護(hù)合同范本3篇
- 2024年度金融科技企業(yè)往來借款風(fēng)險防范合同3篇
- 分布式光伏場站管理制度-運(yùn)行管理
- 初中數(shù)學(xué)培優(yōu)補(bǔ)差總結(jié)3篇
- 醫(yī)療救護(hù)合作協(xié)議
- 開題報告:數(shù)智技術(shù)賦能的師范生深度學(xué)習(xí)過程畫像與實踐路徑優(yōu)化研究
- 第六單元《質(zhì)量與密度》3.密度的測量(分層訓(xùn)練)(解析版)
- 《無人機(jī)飛行操控技術(shù)(微課版)》全套教學(xué)課件
- 2023-2024學(xué)年廣東省深圳高級中學(xué)七年級(上)期末歷史試卷
- 病例封存應(yīng)急預(yù)案
- GB/T 44800-2024太陽能光熱發(fā)電站儲熱/傳熱用工作介質(zhì)技術(shù)要求熔融鹽
- 2020年國家開放大學(xué)電大《數(shù)據(jù)結(jié)構(gòu)》實驗報告
- 數(shù)據(jù)分析師歷年考試真題試題庫(含答案)
評論
0/150
提交評論