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.

[参考译文] 在代码中实现项目名称- C2000

Guru**** 2573695 points


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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1179183/implementing-project-name-in-code---c2000

器件型号:TMS320F28379D

您好!
我想在代码中动态实施项目名称。 是否有简单的方法来实现它?

我可以想到的唯一解决方案是将在编译之前运行的编写脚本、它将替换代码中的一行、添加实际的项目名称。 但是、也许有人愿意通过使用编译器中实现的 SoM 函数来执行类似的操作?

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

    我仍然尝试了一种添加命令的解决方案
    --define=C28_boot_project_name="DMU_FT350_1500_v1012"添加到编译器。

    但这会在代码中产生错误

    if (strlen (C28_boot_config_project_name)< C28_boot_project_name_size)

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

    这或许是解决您问题的提示:

    Now 语句、例如...

    strlen(BUILD_PC_CPU1)

    将会编译。

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

    以下是需要考虑的替代方案。  将此设置添加到您的 CCS 项目...

    请注意它如何依赖于内置 CCS 变量 ProjName

    在 C 代码中,编写类似于...的内容。

    #define EVAL_TO_STR(arg) #arg
    #define MKSTR(arg) EVAL_TO_STR(arg)
    
    /* many lines later */
    
            char *pn;
            for (pn = MKSTR(PROJECT_NAME); *pn; pn++)
                putchar(*pn);

    谢谢、此致、

    乔治

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

    最后、它只需使用即可
    C28_boot_project_name="${ProjName}\"

    非常感谢