矩阵键盘汇编程序Word文档下载推荐.docx
- 文档编号:16039698
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:13
- 大小:24.83KB
矩阵键盘汇编程序Word文档下载推荐.docx
《矩阵键盘汇编程序Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《矩阵键盘汇编程序Word文档下载推荐.docx(13页珍藏版)》请在冰豆网上搜索。
(b7-b5纪录按键状态,b4位为有效位,
b3-b0纪录按键)
KEYRTIME
43H
重复按键时间间隔
SIGNAL
50H
提示信号时间存储单元
KEY
EQU
P3
键盘接口(必须完整I/O口)
KEYPL
P0.6
指示灯接口
RTIME
30
重复按键输入等待时间
KEYCHK:
//=============按键检测程序=============================================
MOV
KEY,#0FH
送扫描信号
A,KEY
读按键状态
CJNE
A,#0FH,NEXT1
ACC<
=0FH
CLR
C
Acc等于0FH,则CY为0,无须置0
NEXT1:
SETB
Acc不等于0FH,则ACC必小于0FH,
CY为1,无须置1
A,KEYNAME
ANL
KEYNAME,#1FH
按键名称屏蔽高三位
RRC
A
ACC带CY右移一位,纪录当前按键状态
A,#0E0H
屏蔽低五位
ORL
KEYNAME,A
保留按键状态
//=============判别按键状态,决定是否执行按键扫描========================
A,#0C0H,NEXT2
110按键稳定闭合,调用按键检测子程序
SJMP
KEYSCAN
NEXT2:
A,#0E0H,NEXT3
111按键长闭合,重复输入允许判断
WAIT
NEXT3:
A,#0A0H,EXIT
101干扰,当111长闭合处理
KEYNAME,#0E0H
WAIT:
A,KEYRTIME
JNZ
EXIT
时间没到,退出
//=============键盘扫描程序==============================================
KEYSCAN:
R1,#0
初始化列地址
R3,#11110111B
初始化扫描码
LOOP:
A,R3
RL
A
R3,A
保留扫描码
KEY,A
送扫描码
读键盘
A,#0F0H
屏蔽高四位
A,#0FFH,NEXT31
A不等于FFH,说明该列有按键动作
INC
R1
列地址加1,准备扫描下一列
R1,#4,LOOP
列地址不等于4,扫描下一列
没有按键,退出
//=============按键判断对应位等于零,说明该行有按键按下==================
NEXT31:
JB
ACC.0,NEXT32
R2,#0
第0行有按键
NEXT5
NEXT32:
ACC.1,NEXT33
R2,#1
第1行有按键
NEXT33:
ACC.2,NEXT34
R2,#2
第2行有按键
NEXT34:
R2,#3
第3行有按键
NEXT5:
计算按键地址
A,R1
列地址乘4(每列对应4行)
ADD
A,R2
加行地址
DPTR,#KEYTAB
MOVC
A,@A+DPTR
送按键(送值的时候已经置按键有效)
KEYRTIME,#RTIME
送重复按键等待时间
KEYPL
打开指示灯
SIGNAL,#10
送信号提示时间(每次按键闪100ms)
EXIT:
KEY,#0FFH
置键盘接口高电平
RET
退出
//=============按键名称表================================================
KEYTAB:
DB
1AH
扫描码0,对应A
******************************************
1BH
扫描码1,对应B
**
**
DB
1CH
扫描码2,对应C
I/O口
PX.4
PX.5
PX.6
PX.7
1DH
扫描码3,对应D
11H
扫描码4,对应1
PX.0
A(0)
1(4)
2(8)
3(C)
14H
扫描码5,对应4
17H
扫描码6,对应7
PX.1
B
(1)
4(5)
5(9)
6(D)
1EH
扫描码7,对应E
12H
扫描码8,对应2
PX.2
C
(2)
7(6)
8(A)
9(E)
15H
扫描码9,对应5
18H
扫描码A,对应8
PX.3
D(3)
E(7)
0(B)
F(F)
**
10H
扫描码B,对应0
13H
扫描码C,对应3
16H
扫描码D,对应6
19H
扫描码E,对应9
1FH
扫描码F,对应F
END
第二种解法
ORG
0000H
START:
MOV
R0,#00H
初始化程序,开始的延时是为了使硬件能够准备好
DJNZ
R0,$
SP,#60H
CALL
KEY
DISPLAY:
A,R4
DPTR,#TABLE;
定义字形表的起始地址
MOVC
A,@A+DPTR
TABLE为表的起始地址
P2,A
LOOP
子程序内容
,P1口的低四位为行线,高四位为列线
KEY:
PUSH
PSW
PUS
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 矩阵 键盘 汇编程序