版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單片機(jī)與接口技術(shù)第12日IO口控制鍵盤(pán)例7.
如圖所示的8鍵鍵盤(pán),用P1口連接成并行輸入形式。要求識(shí)別按下的鍵,并將相應(yīng)的值通過(guò)P0口送至LED顯示。
ORG 0000H
LJMP LOOP ORG 0100HLOOP:
MOV
A,P1
CPL
A
MOV
P0,A
LJMP LOOPEND太簡(jiǎn)單了,就不解釋了。。。例8.如圖所示的8鍵鍵盤(pán),用P1口連接成并行輸入形式。要求識(shí)別按下的鍵,并將相應(yīng)的值通過(guò)P0口送至數(shù)碼管顯示。 ORG 0000H
LJMP START
ORG 0100HSTART:
MOV P0,#0 ;全部熄滅
MOV DPTR,#TABLE ;顯示碼表初始化:TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;0-7的代碼查詢鍵位:LOOP:
MOV
A,P1 ;讀取P1口
JNB
ACC.0,KEY0 ;如果第0位按下,跳轉(zhuǎn)KEY0
JNB
ACC.1,KEY1
JNB
ACC.2,KEY2 JNB
ACC.3,KEY3 JNB
ACC.4,KEY4 JNB
ACC.5,KEY5 JNB
ACC.6,KEY6 JNB
ACC.7,KEY7
MOV
P0,#0 ;如果沒(méi)有任何一位按下則不顯示
LJMP LOOP ;繼續(xù)循環(huán)顯示數(shù)字:KEY0: MOV
A,#0 ;查表地址偏移量
MOVC
A,@A+DPTR ;查表
LCALL
DISP ;調(diào)用顯示程序
LJMP
LOOP ;返回循環(huán)查詢KEY1: MOV A,#1
MOVC A,@A+DPTR LCALL DISP
LJMP LOOPKEY2: MOV A,#2
MOVC A,@A+DPTR
LCALL DISP
LJMP LOOP……(總共8段)DISP:
MOV
P0,A
RET
鍵盤(pán)可分為編碼式鍵盤(pán)和非編碼式鍵盤(pán)。(1)編碼鍵盤(pán)能夠由硬件自動(dòng)提供與被按鍵對(duì)應(yīng)的ASCII碼或其它編碼。但是它要求采用較多的硬件,價(jià)格昂貴。(2)非編碼鍵盤(pán)則僅提供行和列的矩陣,其硬件邏輯與按鍵編碼不存在嚴(yán)格的對(duì)應(yīng)關(guān)系,而要由所用的程序來(lái)確定。非編碼鍵盤(pán)的硬件接口簡(jiǎn)單,但是要占用較多的CPU時(shí)間。本課程研究非編碼鍵盤(pán)的實(shí)現(xiàn)。矩陣鍵盤(pán)接口非編碼鍵盤(pán)接口技術(shù)主要是如何確定被按鍵的行、列位置,即鍵碼(值)。按鍵識(shí)別是接口技術(shù)的關(guān)鍵問(wèn)題。常用按鍵識(shí)別方法有行/列掃描法(Row/column-Scanning)。典型非編碼鍵盤(pán)結(jié)構(gòu)
非編碼鍵盤(pán)大都采用按行、列排列的矩陣開(kāi)關(guān)結(jié)構(gòu),這種結(jié)構(gòu)可以減少硬件和連線。
數(shù)據(jù)總線行驅(qū)動(dòng)列驅(qū)動(dòng)+VccR1R2R3R4行掃描法識(shí)別按鍵
行掃描法是采用步進(jìn)掃描方式,CPU通過(guò)輸出口把一個(gè)“步進(jìn)的0”逐行加至鍵盤(pán)的行線上,然后通過(guò)輸入口檢查列線的狀態(tài)。由行線列線電平狀態(tài)的組合來(lái)確定是否有鍵按下,并確定被按鍵所處的行、列位置。列信息行信息R1R2R3R4C1C2C3C40111列信息行信息1011列信息行信息1101列信息行信息1110例9.
如圖所示的4×4鍵盤(pán),用P3口連接成矩陣形式。要求識(shí)別按下的鍵,并將相應(yīng)的值通過(guò)P0口送值數(shù)碼管顯示。R10123R24567R389ABR4CDEFC1C2C3C4鍵位與行列線關(guān)系表
上表列出了識(shí)別按鍵位置與各行之間的關(guān)系。其中,R1、R2、R3、R4表示行,C1、C2、C3、C4表示列。
當(dāng)掃描第一行時(shí),R1=0,若讀入的列值C1=0,則表明按鍵0被壓下,如果C3=0,則表明按鍵2被壓下。第一行掃描完畢后再掃描第二行,逐行掃描至最后一行為止,即可識(shí)別出所有的按鍵(注意,節(jié)省硬件資源的代價(jià)是時(shí)分復(fù)用)。存儲(chǔ)器地址顯示數(shù)字共陰極接法的七段狀態(tài)gfedcba共陰極接法段碼(十六進(jìn)制數(shù))共陽(yáng)極接法段碼(十六進(jìn)制數(shù))SEG001111113F40SEG+1100001100679SEG+2210110115B24SEG+3310011114F30SEG+4411001106619SEG+5511011016D12SEG+6611111017D02SEG+7700001110778SEG+8811111117F00SEG+9911001116F18SEG+10A11101117708SEG+11B11111007C03SEG+12C01110013946SEG+13D10111105E21SEG+14E11110017906SEG+15F1110001710E開(kāi)始行號(hào)=4?NP1左移一位讀取P3查詢碼字刷新P0顯示行號(hào)+1Y開(kāi)始:
ORG 0000H
LJMP START
ORG
0100HSTART:
MOV
P0,#0 ;顯示清零 MOV
DPTR,#TABLE
MOV B,#4 ;4列
MOV R0,#0 ;行號(hào)(初值)
MOV
R1,#0 ;列號(hào)(初值)
MOV
R2, #11111110B ;行碼(初值)TABLE:
DB
3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H讀取P3口:SCAN:
MOV
A,R2
;掃描行
MOV
P3,A
MOV
A,P3 ;讀取狀態(tài)
SWAP
A ;高低字節(jié)交換
JB
ACC.0,COLUM2 ;沒(méi)有鍵按下使拉低,跳到驅(qū)動(dòng)第2列
MOV
A,#0 ;第1列有鍵按下使拉低,跳到讀取顯示碼
LJMP
CHECKCOLUM2: JB
ACC.1,COLUM3 ;沒(méi)有鍵按下使拉低,跳到驅(qū)動(dòng)第3列
MOV
A,#1 ;第2列有鍵按下使拉低,跳到讀取顯示碼
LJMP
CHECKCOLUM3: JB
ACC.2,COLUM4 ;沒(méi)有鍵按下使拉低,跳到驅(qū)動(dòng)第4列
MOV
A,#2 ;第3列有鍵按下使拉低,跳到讀取顯示碼
LJMP
CHECKCOLUM4: JB
ACC.3,NEXT
;沒(méi)有鍵按下使拉低,跳到掃描下一行
MOV
A,#3 ;第4列有鍵按下使拉低,跳到讀取顯示碼
LJMP
CHECK
CHECK:
MOV
R1,A
;暫存列號(hào)
MOV
A,R0
;調(diào)取行號(hào)
MUL
AB
ADD
A,R1
;獲取碼字地址偏移量
MOVC
A,@A+DPTR ;查表
MOV
P0,A
;顯
溫馨提示
- 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ù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《社區(qū)足球賽方案》課件
- 《汽車客運(yùn)站調(diào)研》課件
- 2024年黑龍江林業(yè)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)完整答案
- 單位管理制度集合大全【人事管理篇】
- 《綜合分析觀點(diǎn)類》課件
- 單位管理制度匯編大全【人員管理】
- 2024的前臺(tái)工作計(jì)劃(35篇)
- 單位管理制度范文大合集【職工管理篇】
- 單位管理制度范例匯編【人員管理篇】十篇
- 《禽流感的預(yù)防措施》課件
- 國(guó)家開(kāi)放大學(xué)電大??啤吨袊?guó)當(dāng)代文學(xué)》2024期末試題及答案
- 經(jīng)顱多普勒超聲(TCD)
- 激勵(lì)約束考核實(shí)施細(xì)則
- 抽獎(jiǎng)券模板(可修改)
- 高壓蒸汽滅菌效果監(jiān)測(cè)記錄簿表(完整版)
- 人教版物理八年級(jí)上冊(cè)全冊(cè)知識(shí)點(diǎn)總結(jié)
- 編織密度自動(dòng)計(jì)算
- 硝酸及液體硝酸銨生產(chǎn)行業(yè)風(fēng)險(xiǎn)分級(jí)管控體系實(shí)施指南
- 瑤醫(yī)目診圖-望面診病圖解-目診
- 染色體標(biāo)本的制作及組型觀察
- 導(dǎo)游實(shí)務(wù)課件
評(píng)論
0/150
提交評(píng)論