打印
[其他ST产品]

stm32的SysTick_Handler()等中断处理函数的重复定义

[复制链接]
473|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
海滨消消|  楼主 | 2023-12-20 11:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
项目工程里使用了RTX实时内核,包含了RTX.lib的库文件,其它关于添加文件到工程目录,初始化等都按常规方式操作,最后编译说提示如下错误信息:
linking...
.STM3210E-EVALSTM3210E-EVAL.axf: Error: L6200E: Symbol SVC_Handler multiply defined (by hal_cm3.o and stm32f10x_it.o).
.STM3210E-EVALSTM3210E-EVAL.axf: Error: L6200E: Symbol PendSV_Handler multiply defined (by hal_cm3.o and stm32f10x_it.o).
.STM3210E-EVALSTM3210E-EVAL.axf: Error: L6200E: Symbol SysTick_Handler multiply defined (by hal_cm3.o and stm32f10x_it.o).
.STM3210E-EVALSTM3210E-EVAL.axf: Not enough information to list image symbols.
.STM3210E-EVALSTM3210E-EVAL.axf: Not enough information to list the image map.
.STM3210E-EVALSTM3210E-EVAL.axf: Finished: 2 information, 0 warning and 3 error messages.
Target not created

        把stm32f10x_it.c文件里的SVC_Handler、PendSV_Handler、SysTick_Handler三个函数注释掉,则编译时不报错,但程序在硬件上运行不起来,烦请各高手指教!!!

使用特权

评论回复
沙发
laocuo1142| | 2023-12-21 09:28 | 只看该作者
这个错误提示表明在链接阶段出现了符号重复定义的问题。具体来说,SVC_Handler、PendSV_Handler和SysTick_Handler这三个函数在多个文件中被定义了。

使用特权

评论回复
板凳
flycamelaaa| | 2023-12-21 09:29 | 只看该作者
检查源文件

使用特权

评论回复
地板
powerantone| | 2023-12-21 09:29 | 只看该作者
编译器有没有使用错误的编译器选项或标志

使用特权

评论回复
5
stormwind123| | 2023-12-21 09:33 | 只看该作者
如果使用的是链接脚本,请检查脚本中是否正确处理了符号定义。

使用特权

评论回复
6
classroom| | 2023-12-21 09:34 | 只看该作者
使用最新版本的库

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

237

主题

1588

帖子

2

粉丝