为什么会有这种警告

d277135246 2010-04-28 04:09:38
;;;;;;;;;;;;;;;;;;用查寻方式来实现p1.0口输出方波;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;时钟频率为6MHz;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;主程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
MOV TMOD,#10H;使用C/T1 设为16位定时器
SETB P1.0;首先输出高电平
SETB TR1;启动定时器
LOOP: MOV TL1,#00H
MOV TH1,#00H;设置高电平时间
JNB TF1,$;等待定时完成
CLR TF1
CPL P1.0;时间到,输出低电平
MOV TL1,#00H
MOV TH1,#00H;设置低电平时间
JNB TF1,$;等待低电平时间
CLR TF1
CPL P1.0
SJMP LOOP
END
这是我在keil上写的代码
为什么会*** WARNING L5: CODE SPACE MEMORY OVERLAP
FROM: 0000H
TO: 001CH
这样的警告
我在网上搜了一下
说是这是重新定义了定时器,
可我把低电平输出改为T0还是有这样的警告,
这是为啥
...全文
104 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
d277135246 2010-04-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 chutianya 的回复:]

我编译调试了一下你的程序,没有问题也没出现警告。。。
还有你如果想产生方波的话,用中断方式会更容易。。。
ORG 00H
JMP MAIN
ORG 1BH
CPL P1.0
RETI
MAIN:MOV TMOD,#10H
MOV TH1,#00H
MOV TL1,#00H
SET……
[/Quote]
额.. 我知道用中断更好.. 可是这是我们的作业.. 老师指定要用查寻的方式来写..
chutianya 2010-04-28
  • 打赏
  • 举报
回复
嗯 对 还有就是你那个开头都没有定义起始地址什么的,ORG 之类的都没有用,memory 地址随机分配可能出现这种警告,不过我运行你那个居然连警告都没有,挺正常的。。。。。
chutianya 2010-04-28
  • 打赏
  • 举报
回复
我编译调试了一下你的程序,没有问题也没出现警告。。。
还有你如果想产生方波的话,用中断方式会更容易。。。
ORG 00H
JMP MAIN
ORG 1BH
CPL P1.0
RETI
MAIN:MOV TMOD,#10H
MOV TH1,#00H
MOV TL1,#00H
SETB EA
SETB ET1
SETB TR1
SJMP $
END
chutianya 2010-04-28
  • 打赏
  • 举报
回复
我编译调试了一下你的程序,没有问题也没出现警告。。。
还有你如果想产生方波的话,用中断方式会更容易。。。
ORG 00H
JMP MAIN
ORG 1BH
CPL P1.0
RETI
MAIN:MOV TMOD,#10H
MOV TH1,#00H
MOV TL1,#00H
SETB EA
SETB ET1
SETB TR1
SJMP $
END
Peasant_Lee 2010-04-28
  • 打赏
  • 举报
回复
出现WARNING L5: CODE SPACE MEMORY OVERLAP之类的警告,大部分是因为:地址重叠越界了,比如绝对寻址的地址重叠,中断入口地址重叠等等。
Peasant_Lee 2010-04-28
  • 打赏
  • 举报
回复
把工程里的那个STARUP.A51去掉,估计你没去掉,那个文件是为C语言工程生成的。

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧