标题:
我因怎样修改程序
[打印本页]
作者:
一通百通
时间:
2004-11-17 08:54
使用JMP @A+DPTR指令,每个子程序调用指令用“LCALL”占三个字节,即累加器A是三的倍数,“DPTR”是第一个“LCALL”指令所对应的PC值。
作者:
sysnorton
时间:
2004-11-18 17:57
TAB: DB 03H,02H,01H
DB 06H,05H,04H
DB 09H,08H,07H
DB 0BH,00H,0AH
END
那这是不是要加DW指今,在每一排如:
DB 03H,02H,01H
DW TB03,TB02,TB01
这样就可以啦
作者:
sysnorton
时间:
2005-1-10 22:56
标题:
我因怎样修改程序
ORG 00H
START: MOV R4,#06H
MOV R0,#30H
CLE: MOV @R0,#00H
INC R0
DJNZ R4,CLE
L1: MOV R3,#0F7H
MOV R1,#00H
L2: MOV A,R3
MOV P2,A
MOV A,P2
MOV R4,A
SETB C
MOV R5,#03H
L3: RLC A
JNC KEY
INC R1
DJNZ R5,L3
CALL DISP
MOV A,R3
SETB C
RRC A
MOV R3,A
JC L2
JMP L1
KEY: MOV R7,#60
D2: MOV R6,#248
DJNZ R6,$
DJNZ R7,D2
D3: MOV A,P2
XRL A,R4
JZ D3
MOV A,R1
MOV DPTR,#TAB
MOVC A,@A+DPTR
XCH A,30H
XCH A,31H
XCH A,32H
XCH A,33H
XCH A,34H
XCH A,35H
CALL DISP
JMP L1
DISP: MOV A,35H
ADD A,#50H
MOV P0,A
CALL DELAY
MOV A,34H
ADD A,#40H
MOV P0,A
CALL DELAY
MOV A,33H
ADD A,#30H
MOV P0,A
CALL DELAY
MOV A,32H
ADD A,#20H
MOV P0,A
CALL DELAY
MOV A,31H
ADD A,#10H
MOV P0,A
CALL DELAY
MOV A,30H
ADD A,#00H
MOV P0,A
CALL DELAY
RET
DELAY: MOV R7,#06
D1: MOV R6,#248
DJNZ R6,$
DJNZ R7,D1
RET
ORG 300H
TAB: DB 03H,02H,01H
DB 06H,05H,04H
DB 09H,08H,07H
DB 0BH,00H,0AH
END
如果我要添加12个子程序,每个按件跳至相应的子程序,要怎样修改
在这里先谢谢各位了
作者:
sysnorton
时间:
2005-1-10 22:56
问一下,为什么有中断程序在的时候,按件的处理程序好像有点不受控,是怎么回事?
如果有关系在,那它们的关系是怎样的,如定1000u秒,中断250次,因在按件
程序中设几个延时,才能正常使用按件。谢谢大家
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0