This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] LP-MSP430FR2476:TCAN4550演示项目构建错误

Guru**** 2387060 points
Other Parts Discussed in Thread: TCAN4550, LP-MSP430FR2476, MSP430FR2476
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1073866/lp-msp430fr2476-tcan4550-demo-project-build-error

部件号:LP-MSP430FR2476
《线程》中讨论的其他部件:TCAN4550MSP430FR2476

我正在尝试获取 TCAN4550_demo p  需要与 LP-MSP430FR2476配合使用。 我收到一个内部版本错误#41,需要一个标识符。 CAN ID 字段出现问题。 我需要有关如何解决这一问题的指导。  

谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    ID 是定时器寄存器之一中的一个字段,在 msp430.h (msp430fr2476.h)中定义。 因为它是#define,所以它在任何地方都是有效的。

    最简单的解决方法可能是找到所有'#include <MSP4C.h>'行,并在每个行之后插入'#UNDEF ID'。

    [编辑:由于我怀疑此结构声明位于.h 文件中,因此您可能只需将'#UNDEF ID'添加到该头文件中。]

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我在项目中的任何位置都找不到 msp430fr2476.h 文件。 也许链接器会注意到这一点? 我的项目中确实有__MSP430FR2476作为预定义符号。 我无法知道 ID 是其中一个计时器寄存器中的字段。 您可以共享使用此字段的确切标题文件吗? 我在数据结构中将 ID 字段更改为 id,就像生产项目一样,生成错误消失了。 现在我知道为什么生产项目 在 tcan 数据结构中编辑了这个 typedef。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    MSP4C.h 包含特定于设备的头文件(可能会进一步间接) 查找安装位置的最简单方法是右键单击“ID”名称和“转到定义”。

    #define 还会影响对字段的任何引用,这些引用可能会在编译过程中显示,也可能不会显示。 我(仍然)建议将'#UNDEF ID'放入头文件中,也许就在字段定义之前,但这是您的要求。

    这一命名也许是不幸的,但它有20多年的历史。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我可以在 timer_a.c ad timer_b.c 文件中将 ID_8作为子字段看到。 这是什么导致了错误? 我永远不会连接这两个设备。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    我已经通知了拥有 TCAN4550设备的团队,因此本演示代码可以帮助您获得正确的软件包。  

    但另一个思路是,您的 CCS 环境是否已设置为调试/编译 MSP430?  它将是您在安装 CCS 时选择的设备之一。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的,我的 CCS 安装中包含 MSP430。 这不是我的第一个 MSP430项目。