版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、小鍵盤按鍵識別數(shù)碼管移位顯示(一) 實(shí)驗(yàn)?zāi)康恼莆铡靶袙呙琛卑存I識別的原理,并掌握行掃描按鍵識別的編程技術(shù)(二) 實(shí)驗(yàn)內(nèi)容按硬件接好圖接好線路,同行掃描技術(shù)識別小鍵盤,將小鍵盤鍵如的任意長度的有09組成的數(shù)字串,采用左移位顯示的方法顯示在數(shù)碼管上(仿照移動電話顯示屏的顯示效果)當(dāng)小鍵盤按下F鍵時(shí)程序結(jié)束.(三) 相關(guān)知識 Intel8255A-5是一個(gè)為8080.8082和8088微型計(jì)算機(jī)系統(tǒng)設(shè)計(jì)的通用I/O接口芯片通過它可以將CPU的總線直接接向外設(shè)。(CPU總是通過接口電路才能與外設(shè)連接) 并行接口芯片具有以下功能:(1) 兩個(gè)或兩個(gè)以上的具有鎖存器或緩沖器的數(shù)據(jù)端口;(2) 每個(gè)數(shù)據(jù)端口
2、都有與CPU用應(yīng)答方式交換信號所必需的控制和狀態(tài)信息,也有與外設(shè)交換信息所必需的控制和狀態(tài)信息;(3) 通常每個(gè)數(shù)據(jù)端口還具有能用中斷方式與CPU交換信息所必需的電路;(4) 選片和控制電路;(5) 通常這類接口芯片可用程序選擇數(shù)據(jù)端口,選擇端口的傳送方向,選擇與CPU交換信息的方法等,故片中要有能實(shí)現(xiàn)這些選擇的控制字的寄存器,它可由CPU用輸出指令來寫入。注:8255A的端口A的地址為218H端口A的地址為219H控制口的地址為21BH(四) 實(shí)驗(yàn)原理a) 可以把PB2與小鍵盤的列線斷開,不識別S YDENG 8個(gè)功能鍵。b) 在數(shù)據(jù)段設(shè)置兩張表,一張是09的鍵值表,一張是09的字形編碼表,
3、對應(yīng)關(guān)系表如下表所示:字型0123456789ABCDEF編碼 (16進(jìn)制)3F065B4F666D7D077F6F777C395E7971(3)在數(shù)據(jù)段設(shè)置一個(gè)顯示緩沖區(qū),即BUF+6單元,其中,BUFBUF+5單元的初值為數(shù)碼管熄滅的字形碼。程序應(yīng)將當(dāng)前的閉合鍵字形碼存入BUF+6單元,隨后將BUF+1BUF+6單元的內(nèi)容移到BUFBUF+5單元,再掃描顯示BUFBUF+5單元的內(nèi)容,從而使數(shù)碼管顯示左移一位。(3)按鍵的識別方法如下:鍵盤一般都是矩陣排列,行和列分別接微機(jī)的輸出、輸入端口,每個(gè)鍵都跨接在某行和某列上,當(dāng)鍵按下時(shí),該行和該列短路。輸入的端口線一般都通過電阻上拉至高電平。識別
4、鍵盤上的閉合鍵的常用方法有行掃描和行反轉(zhuǎn)法。行掃描法是使鍵盤的某一行輸出為低電平,其余行為高電平,然后讀取列值,如果列值中有某位為低電平,則表明行列交點(diǎn)處的鍵被按下;若為全高則再掃描下一行,直至掃完全部的行線為止。這樣便可以知道是否有鍵被按下,若有鍵按下,還可以知道是哪一行哪一列交點(diǎn)的鍵按下。(4)LED顯示電路:LED顯示電路的核心是6個(gè)共陰極數(shù)碼管,6個(gè)數(shù)碼管的同名陽極段已經(jīng)復(fù)接。6位數(shù)碼LED的結(jié)構(gòu)圖參見如下圖:該電路有兩個(gè)端口:位選口為奇地址,片選信號CS取自“I/O地址譯碼電路”的任一輸出端,如果將口地址譯碼輸出的“200-207”連接到數(shù)碼管電路的CS,則片選地址為200H-207
5、H,此時(shí)有以下兩種情況:A 針對奇地址端口執(zhí)行OUT指令,CS=0,IOW=0,A0=1,數(shù)據(jù)線D0-D7上的字形編碼存入段選鎖存器,其輸出端通過8位同相驅(qū)動器分別驅(qū)動6個(gè)數(shù)碼管的a-h陽極段。B 對偶地址端口執(zhí)行OUT指令,CS=0,IOW=0,AO=0,數(shù)據(jù)線D0-D7上的位選代碼碼存入位選鎖存器,其輸出端通過6位反相驅(qū)動器分別驅(qū)動第1至第6位數(shù)碼管的共陰極。DO-D7依次對應(yīng)6個(gè)數(shù)碼管的a-h段,1-6位數(shù)碼管的共陰極依次和數(shù)據(jù)線D0-D5位一一對應(yīng),因此1-6位數(shù)碼管的位選代碼依次為01H,02H,04H,08H,10H及20H。很顯然,若要6個(gè)數(shù)碼管顯示不同的字形,必須采用“掃描顯示
6、”的方法。掃描顯示的方法是:從第1位到第6位(后者從第6位到第1位),每位顯示一個(gè)數(shù)字后,延時(shí)1ms。電路連接如圖所示:(五) 原理分析 要用8255做小鍵盤的處理電路,首先要將8255按要求初始化。具體要求是:A口方式0輸出,B口方式0輸入。 采用“行掃描”技術(shù)識別閉合鍵 參考程序流程圖:開始8255A初始化:A口為方式0輸出,B口為方式0輸入掃描并顯示BUFBUF+5中的6為位數(shù)行值為0AH,讀B口行列ALAL=3?Y N延時(shí)逐行掃描,鍵值A(chǔ)X查鍵值表BUF+1-BUF+6單元的內(nèi)容上移到BUF-BUF+5單元NAX=“F”鍵值“ Y N返回N取閉合鍵字形碼BUF+6單元(六)程序DELA
7、Y MACRO N1,N2 ; 延時(shí) MOV AH,86H MOV CX,N1 MOV DX,N2 INT 15H ENDMDATA SEGMENTMESG DB READY.,0DH,0AH,$TAB1 DW 17FH,1BFH,1DFH,1EFH,1FEH ;04鍵值 DW 1FDH,1FBH,1F7H,27FH,2BFH ;59鍵值TAB2 DB 3FH,06H,5BH,4FH,66H ;04字形碼 DB 6DH,7DH,07H,7FH,6FH ;59字形碼ORIGIN DB 1BUF DB 0,0,0,0,0,0,? ;顯示緩沖區(qū)LINE DB 11111110B ;行掃描初值A(chǔ)_82
8、55 EQU 220H ;8255A口地址B_8255 EQU 221H ;8255B口地址CON_8255 EQU 223H ;8255控制口地址LED_S EQU 201H ;數(shù)碼管段選口地址LED_B EQU 200H ;數(shù)碼管位選口地址DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATABEG: MOV AX,DATA MOV DS,AX MOV ES,AX MOV AH,9 MOV DX,OFFSET MESG INT 21H CALL I8255 ;8255初始化DISP: CALL DISPLAY ;掃描顯示6位數(shù) MOV DX
9、,A_8255 MOV AL,0 OUT DX,AL ;0-A口 MOV DX,B_8255 IN AL,DX ;讀B口 AND AL,03H ;列值-AL CMP AL,03H JE DISP ;無鍵閉合,轉(zhuǎn) DELAY 1,3880H ;有鍵閉合,延時(shí)80msLAST1: MOV DX,A_8255 ;以下逐行掃描MOV AL,,LINE OUT DX,,AL ;行掃描值-A口 MOV DX,B_8255 IN AL,DX ;讀B口,列值-AL SHR AL,1 JNC O,1 ;PB0列線為0,轉(zhuǎn)OK1 SHR AL,1 JNC OK,2 ;PB1列線為0,轉(zhuǎn)OK2 ROL LINE,1
10、 ;形成下一個(gè)行掃描值 JC LAST1 JMP DISP ;非法鍵入,轉(zhuǎn)顯示OK1: MOV AH,2 ;列值2-AH JMP NEXTOK2: MOV AH,1 ;列值1-AHNEXT: MOV AL,LINE ;行值-AL CMP AX,2F7H ;AX=F鍵的鍵值? JE EXIT ;是F鍵閉合,轉(zhuǎn)退出 MOV SI,OFFSET TAB1 MOV DI,OFFSET TAB2 MOV CX,10AGAIN: CMP AX,SI ;查鍵值表 JE OK ADD SI,2 INC DI LOOP AGAIN JMP DISP ;非法鍵入,轉(zhuǎn)顯示OK: MOV AL,DI ;取字形碼 MO
11、V BUF+6,AL ;送BUF+6單元 MOV SI,OFFSET BUF+1 MOV DI,OFFSET BUF MOV CX,6 ;BUF+1 BUF+6單元 CLD ;6位字形碼 REP MOVS B ;上移1個(gè)單元 JMP DISPEXIT: MOV AH,4CH INT 21HDISPLAY PROC ;掃描顯示6位數(shù) MOV BX,OFFSET BUFLAST2: MOV AL,BX MOV DX,LED_S OUT DX,AL ;輸出字形碼 MOV AL,ORIGIN MOV DX,LED_B OUT DX,AL ;定位顯示 DELAY 0,1000 ;延時(shí)1ms INC BX
12、 SAL ORIGIN,1 TEST ORIGIN,40H JZ LAST2 MOV ORIGIN,1 RETDISPLAY ENDPI8255 PROC MOV DX,CON_8255 ;預(yù)置 MOV AL,10000010B ;A口方式0輸出 OUT DX,AL ;B口方式0輸入 RETI8255 ENDPCODE ENDS END BEG(七)心得體會通過這次課程設(shè)計(jì),我對芯片,CPU,輸入輸出設(shè)備,接口電路等有了更深一層的認(rèn)識,從課堂上到自我實(shí)踐,從似懂非懂到進(jìn)一步的了解,這需要一個(gè)操作的過程。理論應(yīng)用的實(shí)踐,是我們學(xué)習(xí)的目的,計(jì)算機(jī)正是這樣一個(gè)全面要求理論與時(shí)間的學(xué)科。這次課程設(shè)計(jì)后,同學(xué)之間的了解更深了,團(tuán)隊(duì)
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版商鋪出租合同樣本3篇
- 2024物業(yè)管理系統(tǒng)托管服務(wù)合同
- 2024年標(biāo)準(zhǔn)簡易借款合同模板版B版
- 2024年高清安防監(jiān)控系統(tǒng)安裝協(xié)議版B版
- 2024版測量技術(shù)員勞動協(xié)議范本版B版
- 2024年科技型中小企業(yè)借款擔(dān)保服務(wù)協(xié)議3篇
- 2025年度影視拍攝車輛租賃及場景搭建續(xù)約協(xié)議3篇
- 2024年許可使用合同:知名品牌商標(biāo)使用許可協(xié)議
- 2024年股權(quán)轉(zhuǎn)讓介紹協(xié)議
- 2024版攝影棚居間合同
- 2023年全國統(tǒng)一建筑工程預(yù)算工程量計(jì)算規(guī)則完整版
- 大學(xué)《工程力學(xué)》期末考試試題庫含詳細(xì)答案
- cn.7a一種醬香型大曲酒固態(tài)發(fā)酵的生態(tài)控制方法
- TLFSA 003-2020 危害分析與關(guān)鍵控制點(diǎn)(HACCP)體系調(diào)味面制品生產(chǎn)企業(yè)要求
- LY/T 2244.3-2014自然保護(hù)區(qū)保護(hù)成效評估技術(shù)導(dǎo)則第3部分:景觀保護(hù)
- GB/T 8491-2009高硅耐蝕鑄鐵件
- 供水安全與搶修
- DB31 595-2021 冷庫單位產(chǎn)品能源消耗指標(biāo)
- 第三章果蔬采后生理課件
- 【英語手寫體】26英文字母手寫體描紅書寫字帖
- 實(shí)習(xí)護(hù)生壓瘡相關(guān)知識掌握情況及預(yù)防態(tài)度的調(diào)查問卷
評論
0/150
提交評論