首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]因为局部变量引起的问题,和程序大于16K的问题,陈大哥帮忙吧!!

[求助]因为局部变量引起的问题,和程序大于16K的问题,陈大哥帮忙吧!!

在一些函数中定义了局部变量后,会出现L1907:Fixup overflow in F_CLRK type 3,at offset 0x2.我查了一下这个错误,帮助里是这样说的:
An illegal relocation of an object is detected in the object file at address
. The type of the object is given in .
Tips:
Check the relocation at that address. The offset may be out of range for this relocation type. If not it may be caused by a corrupt object file.
Check if all objects are allocated in the correct area. Is the object correctly declared?
This error might occur if the zero paged variables are allocated out of the zero page.
我将一些函数中的局部变量定义成全局变量就没有这个问题了,我的程序现在大于16K,我只是在PRM文件中, INTO ROM_C000/*, ROM_4000*/;改成了INTO ROM_C000, ROM_4000;可是我发现还有这么一段话/* in case you want to use ROM_4000 here as well, make sure that all files (incl. library files) are compiled with the option: -OnB=b */,我没看懂是什么意义,请问如果程序大于了16K的话,该如何设置呢??
陈大哥请费心解答啊!!

飞思卡尔带我走进神奇的单片机世界
返回列表