单片机:下面的程序老是不能生成.hex的,哪里出错了?

来源:百度知道 编辑:UC知道 时间:2024/06/10 03:58:29
OGR 00H
JMP START
OGR 0BH
JMP TIM0
START: MOV TMOD,#01H
MOV IE,#82H
JB P3.4,$
CALL DELAY1
JNB P3.4,$
START0: MOV 31H,#LOW SONG
A,@A+TABEL
MOVC A,@A+DPTR
MOV R2,A
JZ END0
ANL A,#0FH
MOV R5,A
MOV A,R2
SWAP A
ANL A,#0FH
JNZ SING
CLR TR0
JMP D1
SING:DEC A
MOV 22H,A
RL A
MOV DPTR,#TABEL
MOV TH0,A
MOV 21H,A
MOV A,22H
RL A
INC A
MOVC A,@A+DPTR
MOV TL0,A
MOV 20H,A
SETB TR0
D1:CALL DELAY
INC 30H
JMP NEXT
END0:CLR TR0
MOV A,31H
XRL A,#00H
JNZ END1
JB P3.4,$
CALL DELAY1
JNB P3.4,$
INC 31H
MOV 30H,#LOW SONG1
JMP NEXT
END1:MOVA,31H
XRL A,#01H
JNZ START0
JMP START
TIM0:PUSH ACC
PUSH PSW
SETB RS0
CLR RS1
MOV TL0,20H
MOV TH0,21H
CPL P1.4
POP PSW

估计是你的设置问题
如果你是使用keic的话 你在 options 里面有一个out 选项 选中生成 hex 文件就可以

没有搞定就hi我吧

在错误的行改了

OGR 00H ...................ORG 00H
JMP START
OGR 0BH ................ORG 0BH
JMP TIM0
START: MOV TMOD,#01H
MOV IE,#82H
JB P3.4,$
CALL DELAY1
JNB P3.4,$
START0: MOV 31H,#LOW SONG ..... ...
A,@A+TA"BEL"......MOVC A,@A+TA"BLE"
MOVC A,@A+DPTR
MOV R2,A
JZ END0
ANL A,#0FH
MOV R5,A
MOV A,R2
SWAP A
ANL A,#0FH
JNZ SING
CLR TR0
JMP D1
SING:DEC A
MOV 22H,A
RL A
MOV DPTR,#TABEL ........没有tabel只有table
MOV TH0,A
MOV 21H,A
MOV A,22H
RL A
INC A
MOVC A,@A+DPTR
MOV TL0,A
MOV 20H,A
SETB TR0
D1:CALL DELAY
INC 30H
JMP NEXT
END0:CLR TR0
MOV A,31H
XRL A,#00H
JNZ END1
JB P3.4,$
CALL DELAY1
JNB P3.4,$
INC 31H