keil里面遇到要读取外部数据 程序出现循环 怎么处理?用汇编语言编的,急求!!!!谢谢

 我来答
zhxiufan
2013-04-21 · 知道合伙人软件行家
zhxiufan
知道合伙人软件行家
采纳数:14923 获赞数:38387
国家科技进步奖

向TA提问 私信TA
展开全部
问题不是很清楚,是循环读取外部数据吗?
READEXT:
MOV DPTR,#EXTPORT ;外部数据口地址
MOV R2,#100 ;读取的数据个数
LOOP:
MOVX A,@DPTR
........ ;处理读取的数据,这里未编
INC DPTR
DJNZ R2,LOOP
RET
追问
不是    因为程序是密码锁的要读取外部数据  但是在keil里面执行时我们没法按按钮   因此他就一直在循环执行不下去  怎么能把端口的值直接给他    这样他就能跳出循环   麻烦在帮解答一下   我先选你为最佳答案了  谢谢
追答
EXTPORT EQU 30H    ;33H32H31H30H存端口地址,有键盘输入
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV SP,#5FH
LOOP:
LCALL KEYCHK
JC LOOP
MOV A,31H
MOV B,#10
MUL AB
ADD A,30H
MOV DPL,A
MOV A,33H
MOV B,#10
MUL AB
ADD A,32H
MOV DPH,A
MOVX A,@DPTR
......... ;处理读入得数
LJMP LOOP
KEYCHK:
.......;自己编键盘输入
CLR C ;有效输入C=0返回,地址存在30H~33H中
RET
KEYERR:
SETB C ;无效输入C=1返回
RET
END
guan_zq
2013-04-20 · TA获得超过309个赞
知道答主
回答量:431
采纳率:0%
帮助的人:226万
展开全部
可以用外部中断试试
追问
怎么弄  具体点  谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式