首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是什么导致CCS6生成像"__TI_int47“这样的符号?

是什么导致CCS6生成像"__TI_int47“这样的符号?
EN

Stack Overflow用户
提问于 2014-09-28 05:48:40
回答 2查看 479关注 0票数 1

在CCS6中编译时,我遇到了以下错误:

代码语言:javascript
复制
#10056 symbol "__TI_int47" redefined

(由德州仪器公司使用Composer为MSP430编译)

在声明中断服务例程时会发生这种情况,例如:

代码语言:javascript
复制
#pragma vector=PORT1_VECTOR
__interrupt void P1input_ISR ()
{
    P1IFG &= ~BIT0; // mark interrupt as "handled"
}

是什么原因产生了这些匿名的符号?

如何跟踪生成符号的代码?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-09-28 05:56:54

符号__TI_int47可能是您的ISR函数的某种别名。它只是一个内部实现细节,用于说明编译器的一个部分如何将您定义的is的信息传递给另一个部分。您发布的语用可能会导致定义它。我敢打赌,PORT1_VECTOR被处理器特定的头文件定义为47。

听起来,您的项目中有多个代码段定义相同的ISR,因此您需要从另一个ISR中删除其中一个或调用其中一个。

票数 1
EN

Stack Overflow用户

发布于 2014-09-28 05:59:20

PORT1_vector是47岁。CCS和IAR中的#pragma vector 47将导致为中断47安装以下功能。显然,它通过定义一个名为__TI_int47的符号来实现这一点,链接器稍后将使用该符号填充中断向量表。出现此错误是因为为同一个向量定义了两个不同的函数,这是不可能的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26082058

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档