久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 4X4矩陣鍵盤0~9輸入 8 位數碼管顯示 [打印本頁]

作者: lianlian    時間: 2015-7-10 01:57
標題: 4X4矩陣鍵盤0~9輸入 8 位數碼管顯示
4D顯示的程序,只有一位顯示。一直想寫個多位顯示的,沒成功,知道問題在于防抖處理,可是無法下手,最后放棄。今天再試,成功了。


;按下4X4矩陣鍵盤之0~9,依次在8 位數碼管上從最低位往高位顯示按鍵的鍵名。8次后,從最低位重新開始。
;E:\DPJ\4X4KEY\4X4KEY_2.ASM           2012 01 03
ORG 00H   
AJMP MAIN   
ORG 30H
MAIN:
MOV SP,#60H
MOV DPTR,#TABLE
MOV A,#10
MOV 30H,A
MOV 31H,A
MOV 32H,A
MOV 33H,A
MOV 34H,A
MOV 35H,A
MOV 36H,A
MOV 37H,A

KEY:
ACALL KEYSCAN   ;調用KEYSCAN,判斷是否有鍵按下
JB F0,$-2   ;無鍵按下,轉ACALL KEYSCAN,繼續掃描
CJNE R0,#1,KEY_1
MOV 30H,R1
AJMP KEY   ;R1為取碼指針
KEY_1:
CJNE R0,#2,KEY_2
MOV 31H,R1
AJMP KEY
KEY_2:
CJNE R0,#3,KEY_3
MOV 32H,R1
AJMP KEY
KEY_3:
CJNE R0,#4,KEY_4
MOV 33H,R1
AJMP KEY
KEY_4:
CJNE R0,#5,KEY_5
MOV 34H,R1
AJMP KEY
KEY_5:
CJNE R0,#6,KEY_6
MOV 35H,R1
AJMP KEY
KEY_6:
CJNE R0,#7,KEY_7
MOV 36H,R1
AJMP KEY
KEY_7:
CJNE R0,#8,KEY_8
MOV 37H,R1
MOV R0,#0
KEY_8:
AJMP KEY
KEYSCAN:    ;按鍵檢測子程序
ACALL DISP
SETB F0   ;設F0=1
MOV R3,#0F7H  ;行掃描指針初值(P2.3=0)
MOV R1,#00H   ;取碼指針初值
L2:
MOV A,R3   ;載入掃描指針
MOV P2,A   ;輸出至P2,開始掃描為0的一行
NOP
MOV A,P2   ;讀入P2
SETB C   
MOV R5,#4   ;檢測P2.7~P2.4,共4 列
L3:    ;檢測4列
RLC A   ;左移一位(P2.7~P2.4)
JNC KEY1   ;檢測到C=0,表示被按下
INC R1   ;無鍵按下則取碼指針加1
DJNZ R5,L3   ;4列檢測完畢?
MOV A,R3   ;載入掃描指針
SETB C
RRC A       ;掃描為0的下一行,
MOV R3,A   ;存回R3掃描指針寄存器
JC L2   ;C=0,表示行掃描完畢
RT:
RET
   
KEY1:
ACALL D10MS   ;防抖
KEY10:
ACALL DISP   ;這里調用一次顯示子程序,按下按鍵,顯示保持連續 。
MOV A,P2
ANL A,#0F0H
ORL A,#0FH
CJNE A,#0FFH,KEY10          ;釋放
CLR F0   ;F0清0 ,表示按鍵按下過
INC R0   ;按鍵按下次數,以確定顯示的位數
RET
DISP:
MOV A,30H
MOVC A,@A+DPTR  ;取碼,關送顯示
MOV P0,A
CLR P1.0
ACALL D1MS
SETB P1.0
MOV A,31H
MOVC A,@A+DPTR  
MOV P0,A
CLR P1.1
ACALL D1MS
SETB P1.1
MOV A,32H
MOVC A,@A+DPTR  
MOV P0,A
CLR P1.2
ACALL D1MS
SETB P1.2
MOV A,33H
MOVC A,@A+DPTR  
MOV P0,A
CLR P1.3
ACALL D1MS
SETB P1.3
MOV A,34H
MOVC A,@A+DPTR  
MOV P0,A
CLR P1.4
ACALL D1MS
SETB P1.4
MOV A,35H
MOVC A,@A+DPTR  ;
MOV P0,A
CLR P1.5
ACALL D1MS
SETB P1.5
MOV A,36H
MOVC A,@A+DPTR  
MOV P0,A
CLR P1.6
ACALL D1MS
SETB P1.6
MOV A,37H
MOVC A,@A+DPTR  
MOV P0,A
CLR P1.7
ACALL D1MS
SETB P1.7
RET
D10MS:
MOV R7,#10
ACALL D1MS
DJNZ R7,$-2
RET
D1MS:
MOV R5,#20
MOV R4,#25
DJNZ R4,$
DJNZ R5,$-4
RET
TABLE:  
DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H ;顯示碼表,共陰

END   









歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲精选一区二区 | 亚洲人成人一区二区在线观看 | 国产黄色麻豆视频 | 国产电影一区二区在线观看 | 在线观看国产视频 | 精品久久久久久久久久久久久久久久久 | 日韩视频在线一区 | 在线视频中文字幕 | 91精品久久久久久久久中文字幕 | 91精品久久久久久久久久小网站 | 99亚洲国产精品 | 99色在线视频 | 国产伦精品一区二区三区照片91 | 欧美天堂在线观看 | av免费网| 91精品国产91久久久久游泳池 | 精品国产乱码久久久久久丨区2区 | 高清国产一区二区 | 亚洲视频一区在线观看 | www.黄色片视频 | 成人在线视频一区二区三区 | 久草资源| 国产精品久久久久久久久久免费看 | 中文字幕在线播放第一页 | 欧美中文字幕一区二区三区亚洲 | 亚洲成人精品一区二区 | 91电影在线| 天天操夜夜操 | 日韩不卡一区二区三区 | 精品自拍视频在线观看 | 中文字幕免费在线 | www国产成人免费观看视频,深夜成人网 | 国产传媒视频在线观看 | 伊人免费观看视频 | 日韩欧美一区在线 | 中文字幕一区二区三区四区五区 | 免费av播放 | 午夜影院黄 | 成人视屏在线观看 | 夜久久| 欧美在线色视频 |