您的位置 首页 传感器

keil过错ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

在利用KeilC51编程时,发现程序逻辑上没有错误,但在连接时却出现了错误,如下:***ERRORL107:ADDRESSSPACEOVERFLOWSPACE:…

在使用Keil C51编程时,发现程序逻辑上没有过错,但在衔接时却呈现了过错,如下:

*** ERROR L107: ADDRESS SPACE OVERFLOW

SPACE: DATA

SEGMENT: ?DT?GMNS_3V4

LENGTH: 0014H

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: RECEIVE_TIMER

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: DUAL_REC_BUF

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: LAST_SEND_TIME_COUNT

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: POW_STATUS

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: POW_STATE

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: GROUP_TEST

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: S_COUNT_P

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: R_COUNT_P

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: RING_JUDGE_STATEB1

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: RING_JUDGE_STATEB0

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: YAOXIN_CHECK_STATUS4

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: YAOXIN_CHECK_STATUS3

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: YAOXIN_CHECK_STATUS2

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: YAOXIN_CHECK_STATUS1

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: YAOXIN_CHECK_STATUS0

SEGMENT: ?DT?GMNS_3V4

*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT

SYMBOL: YAO_XIN_COUNT

SEGMENT: ?DT?GMNS_3V4

呈现以上过错的原因主要是第一个原因,第一个原因导致了它下面一切过错,第一个原因是:

ERROR L107: ADDRESS SPACE OVERFLOW

SPACE: DATA

SEGMENT: ?DT?GMNS_3V4

LENGTH: 0014H

阐明data空间现已不够用,原因是你可能有许多函数,而函数内部的局部变量又没有界说其空间,这种状况下,体系会将变量分配到你在Otions for Target 对话框里的设置的空间。假如你在下图所示中的 Memory Model 里设置成 Small:variables in DATA,则DATA空间很快便用完,导致data空间不够用。处理的方法有两种,一是经过更改Memory Model设置,能够设置成pdata或xdata,以便有足够大的空间,但这又带来新的问题,程序运转速度减慢,并且code代码也会加大,由于假如一个局部变量被存放在了xdata空间,汇编语言拜访xdata空间的代码巨细要比拜访data空间的代码大,变量一旦许多,程序的代码也会逐步增大;二是依据自己的要求设置变量的空间。所以这涉及到代码优化的问题,遇到具体问题时,在运转速度和代码巨细之间获得合适自己的状况。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/chuanganqi/276888.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部