找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

求助51单片机空间溢出问题

查看数: 4372 | 评论数: 5 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2018-9-22 10:07

正文摘要:

谁知道51单片机编程编译时空间溢出咋解决呀,而且我用的是STC12C5A60S2芯片,其存储空间不是很大的吗,我才用了一点点咋就溢出了

回复

ID:458348 发表于 2019-3-23 22:23
花开半夏 发表于 2018-10-13 16:57
谢谢各位大神,溢出问题已解决

请问楼主,c51地址空间溢出怎么解决的?
ID:142817 发表于 2018-10-13 16:57
谢谢各位大神,溢出问题已解决
ID:387733 发表于 2018-9-23 08:19
嵌入式系统的内存资源是很有限的,特别是51系统,分成了BDATA,DATA,IDATA,XDATA,使用的时候要引起注意,最好的DATA段也是最应该节约的,因为该段可以直接寻址,而R0~R7,BDATA段都在该区段内,使得仅有的128个字节更加紧张,能用IDATA段的尽量用IDATA段,像数组本来就不需要直接寻址的,建议放在IDATA段。但是要注意的是必须留出足够的堆栈空间。
ID:388197 发表于 2018-9-22 23:28
程序全局或者静态变量估计有点多,建议把数组前面加个CODE,放在程序区里去.
点击"options for target"(就是第一次编译要生成HEX那个按钮),然后点选target标签,下面有两个下拉菜单,标题分别是Memory mode 和 Code Rom size,前者是RAM大小,后者是ROM,分别可以改为大中小,你更改下RAM设置再试试编译.

评分

参与人数 1黑币 +50 收起 理由
admin + 50 回帖助人的奖励!

查看全部评分

ID:61973 发表于 2018-9-22 22:58
你这个是变量太多了,在定义变量的前面加上xdata

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

Powered by 单片机教程网

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