弱智的c51编译问题!

galle 2003-11-19 11:40:27
原来的程序没有错误,打开汇编后出现下列警告!!
*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL
SYMBOL: ?_SPRINTF?BYTE
MODULE: testlcd.obj (TESTLCD)
ADDRESS: 0184H
*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL
SYMBOL: _SPRINTF
MODULE: testlcd.obj (TESTLCD)
ADDRESS: 0186H
不知如何解决?好像时有从图吧!?
...全文
83 3 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
flowercity 2003-11-22
你当前的函数使用的寄存器组可能和你汇编里用的是一个寄存器组
代码编译经过KEIL优化之后数据覆盖了

你在汇编嵌入一开始push 看看结果如何

  • 打赏
  • 举报
回复
galle 2003-11-20
这个绝对没有,我只是原来的c已经全部ok了,但是要精确定时,所以要嵌入asm
用#pragma asm
DELAY: MOV ACC,#250
DEL: NOP
NOP
DJNZ ACC,DEL
DJNZ R7,DELAY
MOV A,R6
JZ EXIT
DJNZ R6,DELAY
EXIT: nop
#pragma endasm
后出现的问题!!汇编已经打开了!
  • 打赏
  • 举报
回复
zilingzhang 2003-11-20
sprintf是它的库函数你是不是把他做变量名字了,换个名字不要用sprintf
这个警告好像是符号指向外部地址什么的
  • 打赏
  • 举报
回复
相关推荐
发帖
单片机/工控

2.7w+

社区成员

硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
帖子事件
创建了帖子
2003-11-19 11:40
社区公告
暂无公告