为你解答: 你使用哪个
寄存器啊? 就替你选择使用R5寄存器吧 另外寄存器加1功能
的实现的 最好使用现成的单片机本身就有的加1指令 INC R5;就可以实现寄存器R5的加1 ;如果使用 ADD指令 一条完成不了 ADD指令必须以累加器A做为目的操作数 需要用到
MOV A,R5 ;
ADD A,#1 ;
MOV R5,A
三条指令才能实现来 指令代码长 执行速度慢.
你的要求是每次按下 P1.3 寄存器内容加1 对吧
参考程序如下:
ORG 0000H
LJMP MAIN
ORG 0100H
MAIN: MOV R5,#0 ; 寄存器清零
SETB P1.3 ; 置P1.3口线为读状态
LL: JB P1.3, LL ; 等待P1.3键按下
LCALL YS ; 延时去键盘 抖动
SETB P1.3 ; 置P1.3口线为读状态
JB P1.3, LL ; 判断P1.3键按下否? 如果没有按下 转LL继续 等待P1.3键按下
INC R5 ;如果按下P1.3键 则入寄存器R5加1
SJMP LL ;循环继续等待P1.3键按下
YS: MOV R7,#15 ;延时子程序
YY: MOV R6,#200
SS; DJNZ R6, SS
DJNZ R7,YY
RET
END
哈哈 帮你做完了 没有加分没关系 请替俺选择(满意回答)就可以