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.

[参考译文] CCS/TMS320C6657:什么是CCS中C6657的宏标志

Guru**** 2534260 points
Other Parts Discussed in Thread: TMS320C6657

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/570427/ccs-tms320c6657-what-s-the-macro-flag-for-c6657-in-ccs

部件号:TMS320C6657

工具/软件:Code Composer Studio

在一些CCS示例项目中,我看到了“#if defined(_TMS320C6400)"或 “#if defined(_TMS320C6740)",但 我正在为TMS320C6657寻找宏标志,以便在代码中执行“#if defined(_TMS320C6657)”。

请问,C6657的旗帜名称是什么?在哪里可以找到?

谢谢。

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

    您好,

    通常在项目生成属性中定义该标志的时间。 您可以使用--define build选项自己定义一个:

    谢谢

    KI

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

    您好!

    如果我的目标是正确的,那么您正在尝试使预处理程序宏与您的设备完全匹配,而不是与设备系列匹配。 简单的答案-没有这样的宏。 请参阅第2.6 .1条。  编译器用户指南中预定义的宏名称。 你会发现这里

    _TMS320C6x 始终定义
    _TMS320C6200 如果目标为C6200则定义
    _TMS320C6400 如果目标是C6400,C6400+,C6740或C6600,则定义
    _TMS320C6400_plus 如果目标是C6400+,C6740或C6600,则定义
    _TMS320C6600 如果目标为C6600则定义
    _TMS320C6700 如果目标是C6700,C6700+,C6740或C6600,则定义
    _TMS320C6700_plus 如果目标是C6700+,C6740或C6600,则定义
    _TMS320C6740 如果目标为C6740或C6600则定义
    __TMS320C6x__ 始终定义为用作_TMS320C6x的备用名称

    如您所见,这些定义仅定义系列,而不是设备。

    如果你很需要区别对待精确的设备,那么你必须按照李基洙解释的那样定义自己的宏。

    希望这会有所帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您的支持。
    对于C6657器件,我们应该使用表中的哪个预处理程序宏? _TMS320C6600?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    据我所知,我们必须定义target --silit_revision或等效的-mv选项,以便编译器以最佳方式处理正在考虑的设备的代码。 在编译器用户指南的第2.3 .5条中。  选择目标CPU版本(--silit_version选项)时,他们以有点误导的方式描述了此选项。 示例显示,可以将目标处理器定义为-mv6412,即准确指定您的部件。 但是,对于不同的keystones没有有效的选项,并且您拥有的唯一选项是-mv6600。

    接下来,定义芯片版本时,编译器将定义匹配的宏名称。 假设您指定了-mv6600,则将定义_TMS320C6600。 但是,正如您在上表中可能注意到的,除了_TMS320C6600外,您还将定义_TMS320C6400,_TMS320C6400_plus,_TMS320C6700和_TMS320C6740。 因此,检查_TMS320C6600可以确定器件是否为Keystone。 但是,检查_TMS320C6400不能分辨的是C64x系列或Keystone中的任何一个,我认为嵌套的#if->#Elif检查都能完成任务。

    希望这会有所帮助。