找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2923|回复: 3
收起左侧

.\test.axf: Error: L6200E: Symbol USART2_IRQHandler multiply defined (by rs48...

[复制链接]
ID:920172 发表于 2021-5-12 17:39 | 显示全部楼层 |阅读模式
.\test.axf: Error: L6200E: Symbol USART2_IRQHandler multiply defined (by rs485.o and usart2.o).
Not enough information to list image symbols.
Not enough information to list the image map.
Finished: 2 information, 0 warning and 1 error messages.
".\test.axf" - 1 Error(s), 0 Warning(s).
感觉试了好久用了好多方法都改不对,是哪里出了问题啊?

回复

使用道具 举报

ID:827243 发表于 2021-5-13 12:48 | 显示全部楼层
你在rs485.c 和 usart2.c 里都定义了 USART2_IRQHandler 串口2中断函数所以报错了。
回复

使用道具 举报

ID:371185 发表于 2021-5-13 13:46 | 显示全部楼层
USART2_IRQHandler 串口中断函数重复定义,所以报错了。先找一找有没有重复定义的地方,注释掉编译试试;若是没有用的,我个人感觉,系统生成的.C文件是不是有重复的,可以去掉某一个编译试试。
回复

使用道具 举报

ID:255794 发表于 2022-2-11 17:15 | 显示全部楼层
还可能是Keil5不支持在其他文件中定义全局变量,若想在其他文件中使用全局变量,只能以在main.c文件中定义,之后在其他文件中声明进行使用。我今天刚刚碰到过,以前也有,只不过我以前碰巧直接定义在main.c文件中了,没出问题就没注意。今天碰到查了半天发现没有重复定义或使用,然后对比以前写的程序才找出的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

Powered by 单片机教程网

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