打印

请指点一二

[复制链接]
1249|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ptt1234|  楼主 | 2007-8-21 16:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在仿真下图过程中,按下按键,这时其对应的另一边的电压为不确定值(假如兰色为低,红色为高,其按下后为灰色)
查询程序为:
KEY_QUERY:           ;//QUERY PRESSED KEY
MOV P2,#8FH
NOP
MOV P2,#0FH         ;//P2.7下降沿74LS373锁存
NOP
MOV A,P2
ORL A,#0F0H
RET

CJNE A,#0FFH,KEY_VALUE ;//有键按下,查值
可总是表示无键按下,为什么?
图形如下:

相关帖子

沙发
ptt1234|  楼主 | 2007-8-21 16:27 | 只看该作者

KEY_QUERY



KEY_VALUE: ;//QUERY THE VALUE OF THE PRESSED KEY
MOV DPTR,#1000H
MOV R6,#0EFH
KEYLOOP:
MOV P2,R6
NOP
MOV A,P2
ORL A,#0F0H
CJNE A,0FFH,KEYLOOP1
MOV A,R6
RL A
MOV R6,A
CJNE A,#7FH,KEYLOOP
AJMP RM
KEYLOOP1:
ANL A,#0FH
MOV R5,A
MOV A,R6
ANL A,#0F0H
ORL A,R5
MOV KEYH,A
KEYLOOP2:
MOV A,KEY
INC KEY
MOVC A,@A+DPTR
CJNE A,KEYH,KEYLOOP2
RM:
DEC KEY
RET
ORG 1000H
DB    0E7H,0EBH,0EDH,0EEH,0D7H,0DBH,0DDH,0DEH,0B7H,0BBH,0BDH,0BEH          ;//0,1,2,3,4,5,6,7,8,9,Y,N,SET

使用特权

评论回复
板凳
ptt1234|  楼主 | 2007-8-21 16:49 | 只看该作者

有键按下

我从新试了一下,好象有键按下,但查询键值有问题.并:我已把程序修改了一下:
KEYLOOP:
MOV P2,R6
NOP 
MOV A,R6
ANL A,#7FH
MOV P2,A   //P2.7 下降沿锁存
NOP
MOV A,P2
.......

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

31

主题

121

帖子

0

粉丝