找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 295|回复: 8
打印 上一主题 下一主题
收起左侧

*** WARNING L30: MEMORY SPACE OVERLAP

[复制链接]
跳转到指定楼层
楼主
我刚用stc8H的库函数来开发,碰到一个问题,只要一使用定时器,就报
*** WARNING L30: MEMORY SPACE OVERLAP
    FROM:    C:00000BH   
    TO:      C:00000EH   


注释掉就不报,大家碰到过这种问题吗?怎么解决的






分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1034262 发表于 2025-8-21 22:52 | 只看该作者
地址重叠,看看m51文件吧。
回复

使用道具 举报

板凳
ID:672895 发表于 2025-8-22 07:33 | 只看该作者
coody_sz 发表于 2025-8-21 22:52
地址重叠,看看m51文件吧。

谢谢您的回复,能说详细一点吗,我初学者
回复

使用道具 举报

地板
ID:672895 发表于 2025-8-22 07:47 | 只看该作者
coody_sz 发表于 2025-8-21 22:52
地址重叠,看看m51文件吧。


我百度了一下,找到了map文件,确实是重叠了,请问怎么解决,谢谢
回复

使用道具 举报

5#
ID:744809 发表于 2025-8-22 10:35 | 只看该作者
空间不够了吧
回复

使用道具 举报

6#
ID:672895 发表于 2025-8-22 14:26 | 只看该作者

应该不是,芯片有64K,hex文件只有37K
回复

使用道具 举报

7#
ID:67199 发表于 2025-8-22 17:10 | 只看该作者
看看整个程序有没有重复定义  interrupt 1,别外中断内代码尽量简洁,别执行太大的程序,可以设置状态标志位,把程序放主程序内,通过状态标志位来判断执行现与否,执行后清除标志。
回复

使用道具 举报

8#
ID:879809 发表于 2025-8-26 11:35 | 只看该作者
代码空间够用,链接脚本有问题?
回复

使用道具 举报

9#
ID:69038 发表于 2025-8-26 15:27 | 只看该作者
这个代码架构有问题:
按你的图中TL0=0x40,TH0=0xA2 ,假设主频为12M,在1T时,约为2ms一中断,
再看你图中的中断ISR函数中都有什么:
除了有最基本的计数,
还有JDQ,有LED1、有LED2执行驱动的代码,
还有GET_ADC、OLED_Show、这样本该在中断外执行的函数
还有一大堆的if ( )、有的if ()还是一连串的&&..
你有没有大约算一下,进中断,完整走完再出来,需花费多少时间?
会不会直接干翻了这个2ms的中断?
这明显是把餐后甜点当主食了,能行吗?

如果你在main()中调用了GET_ADC、OLED_Show等函数,又在中断中调用了同样的函数,很容易出问题的。
你说你注释了中断代码就OK,也说明上述的理论是正确的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表