




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
單片機(jī)與接口技術(shù)第12日IO口控制鍵盤例7.
如圖所示的8鍵鍵盤,用P1口連接成并行輸入形式。要求識(shí)別按下的鍵,并將相應(yīng)的值通過P0口送至LED顯示。
ORG 0000H
LJMP LOOP ORG 0100HLOOP:
MOV
A,P1
CPL
A
MOV
P0,A
LJMP LOOPEND太簡單了,就不解釋了。。。例8.如圖所示的8鍵鍵盤,用P1口連接成并行輸入形式。要求識(shí)別按下的鍵,并將相應(yīng)的值通過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 ;如果沒有任何一位按下則不顯示
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
鍵盤可分為編碼式鍵盤和非編碼式鍵盤。(1)編碼鍵盤能夠由硬件自動(dòng)提供與被按鍵對(duì)應(yīng)的ASCII碼或其它編碼。但是它要求采用較多的硬件,價(jià)格昂貴。(2)非編碼鍵盤則僅提供行和列的矩陣,其硬件邏輯與按鍵編碼不存在嚴(yán)格的對(duì)應(yīng)關(guān)系,而要由所用的程序來確定。非編碼鍵盤的硬件接口簡單,但是要占用較多的CPU時(shí)間。本課程研究非編碼鍵盤的實(shí)現(xiàn)。矩陣鍵盤接口非編碼鍵盤接口技術(shù)主要是如何確定被按鍵的行、列位置,即鍵碼(值)。按鍵識(shí)別是接口技術(shù)的關(guān)鍵問題。常用按鍵識(shí)別方法有行/列掃描法(Row/column-Scanning)。典型非編碼鍵盤結(jié)構(gòu)
非編碼鍵盤大都采用按行、列排列的矩陣開關(guān)結(jié)構(gòu),這種結(jié)構(gòu)可以減少硬件和連線。
數(shù)據(jù)總線行驅(qū)動(dòng)列驅(qū)動(dòng)+VccR1R2R3R4行掃描法識(shí)別按鍵
行掃描法是采用步進(jìn)掃描方式,CPU通過輸出口把一個(gè)“步進(jìn)的0”逐行加至鍵盤的行線上,然后通過輸入口檢查列線的狀態(tài)。由行線列線電平狀態(tài)的組合來確定是否有鍵按下,并確定被按鍵所處的行、列位置。列信息行信息R1R2R3R4C1C2C3C40111列信息行信息1011列信息行信息1101列信息行信息1110例9.
如圖所示的4×4鍵盤,用P3口連接成矩陣形式。要求識(shí)別按下的鍵,并將相應(yīng)的值通過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ù))共陽極接法段碼(十六進(jìn)制數(shù))SEG001111113F40SEG+1100001100679SEG+2210110115B24SEG+3310011114F30SEG+4411001106619SEG+5511011016D12SEG+6611111017D02SEG+7700001110778SEG+8811111117F00SEG+9911001116F18SEG+10A11101117708SEG+11B11111007C03SEG+12C01110013946SEG+13D10111105E21SEG+14E11110017906SEG+15F1110001710E開始行號(hào)=4?NP1左移一位讀取P3查詢碼字刷新P0顯示行號(hào)+1Y開始:
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 ;沒有鍵按下使拉低,跳到驅(qū)動(dòng)第2列
MOV
A,#0 ;第1列有鍵按下使拉低,跳到讀取顯示碼
LJMP
CHECKCOLUM2: JB
ACC.1,COLUM3 ;沒有鍵按下使拉低,跳到驅(qū)動(dòng)第3列
MOV
A,#1 ;第2列有鍵按下使拉低,跳到讀取顯示碼
LJMP
CHECKCOLUM3: JB
ACC.2,COLUM4 ;沒有鍵按下使拉低,跳到驅(qū)動(dòng)第4列
MOV
A,#2 ;第3列有鍵按下使拉低,跳到讀取顯示碼
LJMP
CHECKCOLUM4: JB
ACC.3,NEXT
;沒有鍵按下使拉低,跳到掃描下一行
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. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 美術(shù)備課組創(chuàng)意教學(xué)計(jì)劃
- 瀝青路面施工人員安全防護(hù)措施
- 小學(xué)三年級(jí)班級(jí)安全防范設(shè)施維護(hù)工作計(jì)劃
- 初三數(shù)學(xué)課堂問題解決計(jì)劃
- 康復(fù)治療計(jì)劃結(jié)合智能醫(yī)療技術(shù)
- 初三化學(xué)上期實(shí)驗(yàn)復(fù)習(xí)總結(jié)計(jì)劃
- 幼兒園新教師試用期自評(píng)報(bào)告范文
- 四年級(jí)一班學(xué)生自主管理質(zhì)量分析和改進(jìn)措施
- 校外活動(dòng)學(xué)生離校安全責(zé)任書范文
- 水利工程施工進(jìn)度計(jì)劃及保障措施
- 礦山行業(yè)生產(chǎn)制造執(zhí)行系統(tǒng)(MES)
- 微電網(wǎng)優(yōu)化調(diào)度
- 《新印象 CINEMA 4D電商設(shè)計(jì)基礎(chǔ)與實(shí)戰(zhàn) 全視頻微課版 》讀書筆記思維導(dǎo)圖
- 2023年北京市海淀區(qū)小升初英語考試題庫及答案解析
- 代謝性腦病的病例分析
- YY/T 1849-2022重組膠原蛋白
- GB/T 31227-2014原子力顯微鏡測(cè)量濺射薄膜表面粗糙度的方法
- GB/T 17669.1-1999建筑石膏一般試驗(yàn)條件
- 七年級(jí)生物下填圖題(識(shí)圖題)總復(fù)習(xí)
- 高效執(zhí)行四原則授課版
- 養(yǎng)老機(jī)構(gòu)消防安全管理規(guī)范
評(píng)論
0/150
提交評(píng)論