什么情况

[复制链接]
1078|17
 楼主| yinxiangh 发表于 2015-7-22 12:40 | 显示全部楼层 |阅读模式
Build target 'Target 1'
assembling STARTUP.A51...
assembling lamp5.ASM...
linking...
*** WARNING L5: CODE SPACE MEMORY OVERLAP
FROM: 0000H
TO: 0002H
*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL
SYMBOL: ?C_START
MODULE: .\STARTUP.obj (?C_STARTUP)
*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL
SYMBOL: ?C_START
MODULE: .\STARTUP.obj (?C_STARTUP)
ADDRESS: 008DH
Program Size: data=9.0 xdata=0 code=146
"lamp5" - 0 Error(s), 3 Warning(s).
请问是什么原因?
 楼主| yinxiangh 发表于 2015-7-22 12:40 | 显示全部楼层

ORG 0000H
LJMP MAIN
ORG  0080H

MAIN:MOV P1,#0
END
上面是我的源程序。
pangb 发表于 2015-7-22 12:41 | 显示全部楼层
STARTUP.a51里已经定义了ORG 0000H,所以lamp5.ASM里不要再定义了
chenjunt 发表于 2015-7-22 12:41 | 显示全部楼层
用汇编了,那个“startup.a51"就不要用了
ousj 发表于 2015-7-22 12:41 | 显示全部楼层
是啊,、可以在生成工程时选择
morrisk 发表于 2015-7-22 12:42 | 显示全部楼层
pangb 发表于 2015-7-22 12:41
STARTUP.a51里已经定义了ORG 0000H,所以lamp5.ASM里不要再定义了

没有写ORG 0000H,也有警告。我写了 MOV P1,#0,也警告的。
 楼主| yinxiangh 发表于 2015-7-22 12:42 | 显示全部楼层

是不是用C需要用STARTUP.A51啊?这个文件起什么作用?
zyf部长 发表于 2015-7-22 12:42 | 显示全部楼层
asm一样可以使用STARTUP.A51文件,当然有些地方是要修改一下的
小小猫咪 发表于 2015-7-22 12:43 | 显示全部楼层
8楼可否举个例子
zyf部长 发表于 2015-7-22 12:43 | 显示全部楼层
比如?C_START这个标号,因为这是C编译器里的符号,自然你的汇编程序是没有这个符号的
小小猫咪 发表于 2015-7-22 12:44 | 显示全部楼层
怎么办呢?
zyf部长 发表于 2015-7-22 12:44 | 显示全部楼层
哈哈,换个自己的名字
kangzj 发表于 2015-7-22 12:44 | 显示全部楼层
用dos版的asm51
限制没那么多!
ORG 0000H
LJMP MAIN
ORG  0080H

MAIN:MOV P1,#0
END
完全可以通过
小小猫咪 发表于 2015-7-22 12:45 | 显示全部楼层
我明白了,不知楼主明白了吗?
 楼主| yinxiangh 发表于 2015-7-22 12:45 | 显示全部楼层
俺一直暗暗关注呢,呵呵,明白了
liuzaiy 发表于 2015-7-22 12:45 | 显示全部楼层
使用c语言需要引用的是“<inclde REG52_H>”
houcs 发表于 2015-7-22 12:46 | 显示全部楼层
只需要把工程里的startup文件删除即可。
 楼主| yinxiangh 发表于 2015-7-22 12:46 | 显示全部楼层
知道了,结贴了啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

723

主题

7134

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部