Keil- C51软件编译中错误解决办法

本文详细介绍了在使用Keil C51进行编译时遇到的各种错误及其解决办法,包括错误C141、L57、L104、L204等,涉及添加分号、选择正确链接器设置、处理多重定义等问题,旨在帮助开发者解决编译过程中的常见问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.main.c(5): error C141: syntax error near '}'报错问题解决办法:

增加“;”分号解决:

 

2.*** WARNING L57: UNCALLED FUNCTION, IGNORED FOR OVERLAY PROCESS报错问题解决办法:

A.Device 下选择如图的LX51 选项:

B.在LX51 Misc 选项下的Misc controls框内写上添加定义:REMOVEUNUSED:

 3.*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS报错问题解决办法:

 把其中一个禁用掉或者移除掉就可以解决问题:

4.*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL 报错解决办法:

                                             错误提示

 

                                                 解决办法

软件设置:
新建工程是需要将STARTUP.A51和L51_BANK.A51加进去,其中STARTUP.A51是新建功能是自动添加,L51_BANK.A51是手动添加的,源文件在keil的安装目录lib下(\keil\C51\lib\L51_BANK.A51)。

1、 首先在keil 中勾选上Use Extended Linker(Lx51) instead of BL51
注意想要使用code bank 功能必须要勾选上这一项。

2、 Target 下勾选code banking, 表示支持code banking 功能,大小根据需求设置:

到这一步为止Keil 上的设置完成,现在我们要修改L51_BANK.A51;

1、先看一下它的配置段, 主要有下面五个变量需要设置:
通常需要修改
B_NBANKS : 指定bank 的数量
B_MODE: 选择bank 切换通过那种方式。

bank 切换的核心:
主要是两个函数 B_BANK&N 和B_SWITCH&N:
B_BANK&N 的作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值