主题:controlSUITE中讨论的其他部件
工具/软件:TI C/C++编译器
您好,
我有一个F28M35 Concerto设备项目,它使用C28_F28M35x v207库。 如果我生成此库,然后生成并链接主项目,则如果 库生成中包含文件F28M35x_SWPrioritizeDefaultIsr.c,链接器将失败。 如果我从构建文件 F28M35x_SWalitizeDefaultIsr.c中排除,则主项目链接成功。
链接程序错误包括:
错误#1.0056万:重新定义符号"_illegal _ISR":首先在中定义
"C:/Projects/CACU/库/C28/F28M35xLib_207/Release/C28_F28M35xLib_207.lib
<F28M35x_SWPrioritizeDefaultIsr.obj>";在中重新定义
"C:/Projects/CACU/库/C28/F28M35xLib_207/Release/C28_F28M35xLib_207.lib
<F28M35x_DefaultIsr.obj>"
错误#1.0056万:重新定义符号"_EPWM8_INT_ISR":首先在中定义
"C:/Projects/CACU/库/C28/F28M35xLib_207/Release/C28_F28M35xLib_207.lib
<F28M35x_SWPrioritizeDefaultIsr.obj>";在中重新定义
"C:/Projects/CACU/库/C28/F28M35xLib_207/Release/C28_F28M35xLib_207.lib
<F28M35x_DefaultIsr.obj>"
错误#1.0056万:重新定义符号"_CFLSINGERR_ISR":首先在中定义
"C:/Projects/CACU/库/C28/F28M35xLib_207/Release/C28_F28M35xLib_207.lib
<F28M35x_SWPrioritizeDefaultIsr.obj>";在中重新定义
"C:/Projects/CACU/库/C28/F28M35xLib_207/Release/C28_F28M35xLib_207.lib
<F28M35x_DefaultIsr.obj>"
错误#1.0056万:重新定义符号"_EPWM6_INT_ISR":首先在中定义
"C:/Projects/CACU/库/C28/F28M35xLib_207/Release/C28_F28M35xLib_207.lib
<F28M35x_SWPrioritizeDefaultIsr.obj>";在中重新定义
"C:/Projects/CACU/库/C28/F28M35xLib_207/Release/C28_F28M35xLib_207.lib
<F28M35x_DefaultIsr.obj>"
依此类推,适用于 F28M35x_SWPrioritizeDefaultIsr.c中定义的所有函数
似乎 F28M35x_SWPrioritizeDefaultIsr.c中的每个函数 都已在F28M35x_DefaultIsr.c中定义
将库与F28M35x_SWPrioritizeDefaultIsr.c一起使用 排除在主项目构建,链接和工作之外。
顺便说一句,我有另一个项目使用同一个库(相同的二进制文件,它们都是同一工作空间的一部分),对于该项目,不需要为了生成和链接主项目而将F28M35x_SWPrioritizeDefaultIsr.c排除在生成之外
为什么会发生这种情况?
谢谢
Fabio