单片机ORG 0000H怎么错误
答案:2 悬赏:40 手机版
解决时间 2021-03-24 08:47
- 提问者网友:黑米和小志
- 2021-03-24 00:24
单片机ORG 0000H怎么错误
最佳答案
- 五星知识达人网友:逃夭
- 2021-03-24 00:54
;试试下面的,已经不报告错误了。
ORG 0000H
JMP START
ORG 000BH
JMP TIME0
START:
MOV TMOD, #00000001B
MOV IE, #10000010B
SETB TR0
L1:
CALL KEY
CLR EA
JB F0, L1
;-------------------------
MOV A, 22H
MOV DPTR, #TABLE1
MOVC A, @A + DPTR
MOV P0, A
MOV A, 22H
RL A
MOV DPTR, #TABLE
MOVC A, @A + DPTR
MOV TH0, A
MOV 21H, A
MOV A, 22H
RL A
INC A
MOVC A, @A + DPTR
MOV TL0, A
MOV 20H, A
L2:
CALL KEY
SETB EA
JB F0, L1
JMP L2
KEY:
SETB F0
MOV R3, #0F7H
MOV R1, #00H;R1
L3:
MOV A, R3
MOV P2, A
MOV A, P2
SETB C
MOV R5, #04H
L4:
RLC A
JNC KEYIN
INC R1
DJNZ R5, L4
MOV A, R3
SETB C
RRC A ;行右移
MOV R3, A
JC L3
RET
;-------------------------------
KEYIN:
MOV 22H, A
CLR F0
RET
;-------------------------------
TIME0:
MOV TL0, 20H
MOV TH0, 21H
CPL P1.0
RETI
TABLE:
DW 64021, 64103, 64260, 64400
DW 64524, 64580, 64684, 64777
DW 64820, 64898, 64968, 65030
DW 65058, 65110, 65157, 65178
TABLE1:
DB 0CH, 98H, 48H, 40H, 1EH
DB 9FH, 25H, 0DH, 99H, 49H, 41H, 1FH
DB 11H, 01H, 63H, 03H
END
ORG 0000H
JMP START
ORG 000BH
JMP TIME0
START:
MOV TMOD, #00000001B
MOV IE, #10000010B
SETB TR0
L1:
CALL KEY
CLR EA
JB F0, L1
;-------------------------
MOV A, 22H
MOV DPTR, #TABLE1
MOVC A, @A + DPTR
MOV P0, A
MOV A, 22H
RL A
MOV DPTR, #TABLE
MOVC A, @A + DPTR
MOV TH0, A
MOV 21H, A
MOV A, 22H
RL A
INC A
MOVC A, @A + DPTR
MOV TL0, A
MOV 20H, A
L2:
CALL KEY
SETB EA
JB F0, L1
JMP L2
KEY:
SETB F0
MOV R3, #0F7H
MOV R1, #00H;R1
L3:
MOV A, R3
MOV P2, A
MOV A, P2
SETB C
MOV R5, #04H
L4:
RLC A
JNC KEYIN
INC R1
DJNZ R5, L4
MOV A, R3
SETB C
RRC A ;行右移
MOV R3, A
JC L3
RET
;-------------------------------
KEYIN:
MOV 22H, A
CLR F0
RET
;-------------------------------
TIME0:
MOV TL0, 20H
MOV TH0, 21H
CPL P1.0
RETI
TABLE:
DW 64021, 64103, 64260, 64400
DW 64524, 64580, 64684, 64777
DW 64820, 64898, 64968, 65030
DW 65058, 65110, 65157, 65178
TABLE1:
DB 0CH, 98H, 48H, 40H, 1EH
DB 9FH, 25H, 0DH, 99H, 49H, 41H, 1FH
DB 11H, 01H, 63H, 03H
END
全部回答
- 1楼网友:梦中风几里
- 2021-03-24 02:32
是51单片机吧?是的话是语法错误。
无条件转移的指令是LJMP或AJMP
子程序调用指令是LCALL或ACALL
JMP是散转指令格式是JMP @A+DPTR
没有CALL指令
还有没写全的。还是找书在学学吧,错误挺多。
无条件转移的指令是LJMP或AJMP
子程序调用指令是LCALL或ACALL
JMP是散转指令格式是JMP @A+DPTR
没有CALL指令
还有没写全的。还是找书在学学吧,错误挺多。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯