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.

[参考译文] Code Composer Studio芯片定义变量?

Guru**** 2587345 points


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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1088810/code-composer-studio-chip-define-variable

线程中讨论的其他部件:TMS320F2.8335万TMS320F2.8377万D

是否有一种简单的方法可以使用#ifdef来检测特定版本中使用的芯片?

我们正在更新一些头文件,以便用于TMS320F2.8335万和2.8377万D芯片组的项目。

与特定于设备的寄存器发生冲突,并尝试确定是在不同的位置中使用单独的头文件,还是使用#ifdef的单个头文件是正确的解决方案。

我一直在寻找构建变量,试图找出芯片定义,但我认为我可能错过了显而易见的答案。

感谢您的建议,

Neal

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

    您好,  

    将它们保存在两个单独的文件中是一个很好的解决方案。 CCS项目可以有两种不同的生成配置-每个设备一种,设备的预定义符号作为 编译选项。

    此致

    Siddharth

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

    芯片名称可通过字符串变量设备(例如  TMS320F2.8377万D)。 您可以在预定义符号中将其设置为#define,如下所示:

    __CHIP_=\"${DEVICE}\"

    用法示例:

    const char target_chip[] = __CHIP__;

    但是,我不确定如何使用它,正如您在#ifdef中描述的那样,在代码中执行一项操作,而不是另一项操作,因为预处理程序不会比较字符串。

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

    一个额外的想法。 您可以在预构建步骤中使用${device}作为批处理文件的参数,以便在编译和链接之前执行不同的操作。

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

    感谢所有的建议。
    我们现在似乎正在处理两个单独的文件。但$(DEVICE)选项看起来像我所寻找的替代选项。

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

    我将继续并结束此线程。

    此致

    Siddharth