立即注册 登录
返回首页

uid:111517的个人空间

日志

keil c报错:*** ERROR L107: ADDRESS SPACE OVERFLOW

已有 1554 次阅读2016-8-26 00:57 | ERROR

【ADDRESS SPACE OVERFLOW】
        //----AT89C52-----//
        地址空间溢出,简而言之就是RAM空间不够用,通常是由于全局变量过多引起:

        解决方法一:
        在部分变量定义时加上 [idata]。(系统默认寻址是0-128字节直接寻址区,加上 idata后可增加128-256的间接寻址区)

        解决方法二:
       在部分只读变量定义时增加关键字[code]

       解决方法三:(慎)
       在部分变量定义时添加关键字[xdata],需要注意的是这个区域的数据不稳定,在一些需要经常改变的变量中用此关键词定义可能出现程序异常。

      解决方法四:
      减少全局变量或其大小,可通过减少全局变量,将int型变量在允许情况下改成char型,或把char型改成bit型,以减少全局变量所占空间。

        注:------------
        网上有人说可通过更改keil所用模式来解决,即可将<small>改为<compact>、<large>来解决,但自己试了下发现程序没有任何变化,所以这种方法觉得待验证,当然也有可能是自己错了,也欢迎大家指正。

路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

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

Powered by 单片机教程网

返回顶部