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.

[参考译文] TMS320F28379D:如何将 CCS 更改为使用不同版本的 C2000 ware>

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware

器件型号:TMS320F28379D
主题中讨论的其他器件:C2000WARETMS320F28377D

我有一个使用版本1.04开发的项目。 我想使用最新的3.04版本、并想知道如何设置 CCS 以使用新版本。 我看到许多明确指向1.04目录的包含路径。 是否有一种简单的方法来进行全局更改? 我已经安装了 p3.04产品、我认为可以这样做、但我无法确定。

我必须有一种简单的方法来遗漏。

我的 include 文件夹如下所示;

我的路径如下所示。 如您所见、我尝试将所有内容都指向3.04、但 CCS 未按预期响应。

谢谢  、Dave ...

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

    在"CCS Project Properties General -> Products"下、您是否已尝试"Edit"选项来更改所用的 C2000Ware 版本?

    在用于上述的 PC 上、仅安装了一个 C2000Ware 版本、因此尚未测试是否更改版本。

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

    是的、我已经这么做了、但"Includes"项目没有改变。 C2000ware 的路径似乎包含在 s 系统变量中。

    因此、为了弄清这一点、我完成了以下操作:

    我导入了一个示例项目"Blinky_dc_cpu01 - CPU1_RAM_DEBUG"-没问题。 我看到它设置为使用 C2000WARE 版本2.00.00.02。  因此、我将产品更改为3.4.0.00。 我本以为这足以将所有内容都指向该产品。 但"Includes"项目文件夹仍然指向2.00.02。

    我无法更改与使 CCS 使用不同版本的 C2000 Ware 相关的任何内容。

    此问题似乎与名为  "INSTALLROOT_F2837XD"的系统变量有关 。此变量的内容似乎包含另一个系统变量 "ORIGINAL_PROJET_ROOT......... "  --见下面的屏幕截图。

    现在 、该变量包含项目闪烁的路径。

    现在问题是我无法编辑此变量或任何变量的内容。 我只能“扩展”它,我不知道这意味着什么。

    我一定要错过一些东西,因为没有人必须挖这么深的洞来做这样简单的改变。

    我觉得这非常令人沮丧。 我是否可以阅读一些有关如何按照我希望的方式设置开发环境的文档?  我现在创建了全新的空项目并添加了3.04 C2000器件、并且在"Includes project folder"中没有该产品的引用。 我对这一切感到完全困惑。

    谢谢。   戴夫·····

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="343055" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware/3836879 #3836879"]我发现它已设置为使用 C2000WARE 版本2.00.00.02。  因此、我将产品更改为3.4.0.00。 我本以为这足以将所有内容都指向该产品。[/引述]

    现在安装了多个 C2000Ware 版本、以便研究 TMS320F28377D 的示例。

    首先从 C2000Ware 3.01.00.00导入 LED_ex1_blinky、 后者在编译器包含和链接器库路径中包含 C2000Ware_3_01_00_00_Software:

    Building file: "../device/device.c"
    Invoking: C2000 Compiler
    "C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/bin/cl2000" -v28 -ml -mt --cla_support=cla1 --float_support=fpu32 --tmu_support=tmu0 --vcu_support=vcu2 -Ooff --include_path="C:/Users/mr_halfword/workspace_v10/led_ex1_blinky" --include_path="C:/Users/mr_halfword/workspace_v10/led_ex1_blinky/device" --include_path="C:/ti/C2000Ware_3_01_00_00_Software/driverlib/f2837xd/driverlib" --include_path="C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/include" --define=CPU1 --diag_suppress=10063 --diag_warning=225 --diag_wrap=off --display_error_number --abi=eabi --preproc_with_compile --preproc_dependency="device/device.d_raw" --obj_directory="device"  "../device/device.c"
    Finished building: "../device/device.c"
     
    Building target: "led_ex1_blinky.out"
    Invoking: C2000 Linker
    "C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/bin/cl2000" -v28 -ml -mt --cla_support=cla1 --float_support=fpu32 --tmu_support=tmu0 --vcu_support=vcu2 -Ooff --define=CPU1 --diag_suppress=10063 --diag_warning=225 --diag_wrap=off --display_error_number --abi=eabi -z -m"led_ex1_blinky.map" --stack_size=0x100 --warn_sections -i"C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/lib" -i"C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/include" --reread_libs --diag_wrap=off --display_error_number --xml_link_info="led_ex1_blinky_linkInfo.xml" --entry_point=code_start --rom_model -o "led_ex1_blinky.out" "./led_ex1_blinky.obj" "./device/F2837xD_CodeStartBranch.obj" "./device/device.obj" "../2837xD_RAM_lnk_cpu1.cmd" "C:/ti/C2000Ware_3_01_00_00_Software/driverlib/f2837xd/driverlib/ccs/Debug/driverlib.lib"  -llibc.a 
    <Linking>
    Finished building target: "led_ex1_blinky.out"
    

    在上面的示例中、在"General -> Products"下的"CCS Project Properties"中、只需将 C2000Ware 版本从 3.1.0.00更改为3.4.0.00。 重建显示编译器和链接器路径已更改为 C2000Ware_3_04_00_00_Software:

    Building file: "../device/device.c"
    Invoking: C2000 Compiler
    "C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/bin/cl2000" -v28 -ml -mt --cla_support=cla1 --float_support=fpu32 --tmu_support=tmu0 --vcu_support=vcu2 -Ooff --include_path="C:/Users/mr_halfword/workspace_v10/led_ex1_blinky" --include_path="C:/Users/mr_halfword/workspace_v10/led_ex1_blinky/device" --include_path="C:/ti/C2000Ware_3_04_00_00_Software/driverlib/f2837xd/driverlib" --include_path="C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/include" --define=CPU1 --diag_suppress=10063 --diag_warning=225 --diag_wrap=off --display_error_number --abi=eabi --preproc_with_compile --preproc_dependency="device/device.d_raw" --obj_directory="device"  "../device/device.c"
    Finished building: "../device/device.c"
     
    Building target: "led_ex1_blinky.out"
    Invoking: C2000 Linker
    "C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/bin/cl2000" -v28 -ml -mt --cla_support=cla1 --float_support=fpu32 --tmu_support=tmu0 --vcu_support=vcu2 -Ooff --define=CPU1 --diag_suppress=10063 --diag_warning=225 --diag_wrap=off --display_error_number --abi=eabi -z -m"led_ex1_blinky.map" --stack_size=0x100 --warn_sections -i"C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/lib" -i"C:/ti/ccs1040/ccs/tools/compiler/ti-cgt-c2000_20.2.5.LTS/include" --reread_libs --diag_wrap=off --display_error_number --xml_link_info="led_ex1_blinky_linkInfo.xml" --entry_point=code_start --rom_model -o "led_ex1_blinky.out" "./led_ex1_blinky.obj" "./device/F2837xD_CodeStartBranch.obj" "./device/device.obj" "../2837xD_RAM_lnk_cpu1.cmd" "C:/ti/C2000Ware_3_04_00_00_Software/driverlib/f2837xd/driverlib/ccs/Debug/driverlib.lib"  -llibc.a 
    <Linking>
    Finished building target: "led_ex1_blinky.out"
    
    因此、上述操作可在不同 v3版本之间切换 C2000Ware 版本。

    至于从 v1或 v2导入的工程更改版本的问题、将检查工程的设置方式。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="91588" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware/3836885 #3836885"]对于从 v1或 v2导入的工程更改版本的问题,将检查工程的设置情况。

    无法重复以下问题:

    1. 从 C2000Ware 2.0.0.03导入了一个示例、当将"常规"->"产品"下的 C2000Ware 版本更改为 3.4.0.00时、编译器路径会更新。
    2. 从 C2000Ware 1.0.06.00导入了一个示例、 当将"常规"->"产品"下的 C2000Ware 版本更改为 3.4.0.00时、编译器路径会更新。

    C2000Ware 1.0.06.00是 Resource Explorer 中显示的最早版本。

    [引用 userid="343055" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware/3836879 #3836879"]此变量的内容似乎包含另一个系统变量 "original_projet_root ......... "  --请参阅下面的屏幕截图。[/引述]

    在 CCS Project Properties 中,在 Resource -> Linked Resources -> Path Variables is H存在"ORIGINAL_PROJECT_ROOT ......... "变量、它设置为什么?

     ORIGINAL_PROJECT_ROOT 部分变量是之前用于选择产品路径的机制。

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

    哎呀、我点击了错误的东西、并指出这解决了我的问题。 不是。

    我首先尝试了您对更改产品的描述。 我很惊讶它能为您提供帮助。

    我使用 的 CCS 版本:10.4.0.00006。 是 CCS 问题还是项目问题?

    我无法回答您的问题“ORIGINAL_PROJECT_ROOT……”。 "变量及其设置为什么?" 因为我已经删除了该项目并将再次从头开始尝试。

    是否可以设置包含路径、让我们说"C:\ti\C2000Ware\C2000Ware_3_04_00_00\device_support\f2837xd\common"、编译器和链接器是否会搜索所有子文件夹以查找其所需内容? 或者、您是否必须为所有内容提供显式路径?

    所有这些系统变量都用于什么? 是否有适合他们的文档或标准? 他们是否只是别人的好主意留下的残余?

    我还可以尝试其他什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="343055" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware "]

    如您所见、我尝试将所有内容都指向3.04、但 CCS 未按预期响应。

    [/报价]

    屏幕显示 了在项目中连接 C:\ti\C2000Ware_1_00_04_software\driverlib\f2837xd\driverlib 的硬编码路径。 在最初创建工程时可能已硬编码。

    您应该能够选择路径  C:\ti\C2000Ware_1_00_04_software\driverlib\f2837xd\driverlib 并将其从搜索路径中删除。

    [引用 userid="343055" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware/3836894 #3836894"]这是 CCS 问题还是项目问题?

    我怀疑这是一个项目问题、因为每个项目的路径设置可能不同。

    [引用 userid="343055" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware/3836894 #3836894">所有这些系统变量都用于什么? 是否有任何文档或标准?[/quot]

    好的问题-我无法找到不同 CCS 产品将变量设置为什么的说明。

    从尝试调查产品版本控制的内容:

    a. COM_TI_C2000WARE_SOFTWARE_PACKAGE_INSTALL_DIR 路径变量取决于常规->项目下设置的 C2000Ware 产品版本

    b. 中不存在 COM_TI_C2000WARE_SOFTWARE_PACKAGE_INSTALL_DIR 路径变量  文件中的内容。

    c..cproject 文件使用如下行记录 C2000Ware 版本:

    即 CCS 10.4似乎会根据 所选的 C2000Ware 版本自动填充 COM_TI_C2000WARE_SOFTWARE_PACKAGE_INSTALL_DIR 路径变量。

    [引用 userid="343055" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware/3836894 #3836894"]我还可以尝试什么?

    编译器和链接器路径中到 C2000Ware 的路径需要通过 某种方式从 COM_TI_C2000WARE_SOFTWARE_PACKAGE_INSTALL_DIR 派生的变量进行设置。

    您是否能够发布完整的项目、或者无法发布 .ccsproject、 .cproject 和 .project 文件?

    如果可以查看所有项目设置、则更容易给出更明确的建议。

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

    我进行了大量调查、寻找根本原因;我希望您尝试一下;

    从某个修订版中导入 blinky。 哪一个无关紧要。
    现在、将产品更改为其他版本、并查看是否正确更改了包含项。
    这应按预期工作。
    现在再次执行该操作、除非 在导入时选中"copy projects into workspace"复选框。
    现在将产品更改为其他版本、查看是否正确更改了包含项。
    我预测、包含内容不会改变。
    请告诉我发生了什么、我将向您详细介绍我今天发现的内容。

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

    David、

    如果工程具有到  C2000Ware 版本1_00_04的硬编码路径、则必须手动更新该工程以使用其他版本。  在 CCS 中更改产品没有帮助。

    此致

    Siddharth

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

    嗯、问题是它们不是硬编码的。 它们使用的系统变量还使用另一个未正确更新的系统变量。

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

    David、  

    请在更新系统变量后通过双击它来尝试编译、如下所示。  

    此致

    Siddharth

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

    Siddharth、很显然、您并未阅读所有此主题。 我尝试弄清楚为什么这不起作用的过程我已经完成了至少75个编译、更改了各种内容、包括您要求我执行的操作。 实际上、这是我尝试的第一件事。


    下面是我找到的内容;

    如果您从任何版本的 C2000ware 导入工程而不更改原始源代码、则将工程复制到工作区并选中"将工程复制到工作区"这个小框、是的、它会复制源代码、但工程仍在从复制位置引用内容。 因此、在我的情况下、我不想修改 C2000ware 安装中包含的原始项目、因此我勾选了"将项目复制到工作区"小框、认为我将在我的工作区中工作、而不是在原始位置工作。 嗯、这部分是正确的。 如果您未选中此框、则一切都按预期工作、因为您正在使用 C2000WARE Verxxxx。 文件夹。 但是、如果选中"将项目复制到工作区"复选框、则不会按预期工作、因为我发现您正在更改原始位置的某些项目内容、而不是本地复制的项目。

    我发现在导入函数中使用这个小框"将工程复制到工作区"会产生误导。 这意味着您可以将项目从神圣的源复制到本地项目文件夹(确实如此)、但当您编译它时、实际上是在原始源位置编译项目。 看起来和感觉都完全是从本地副本中操作、但实际上不是。 这就是为什么更改产品不会更改"Includes"项目文件夹中的任何内容、因为它引用了原始位置。

    应该有一个大警告标志、指出"Copy projects into workspace modes a local copy but the original project may be modified"或类似的内容。 工程编译的结果位于原始位置、而不是本地工程文件夹中。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="343055" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware/3836987 #3836987"]
    现在、将产品更改为其他版本、并查看是否正确更改了包含项。
    这应按预期工作。
    [/报价]

    是的、这很奏效。

    [引用 userid="343055" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037626/tms320f28379d-how-to-change-ccs-to-use-a-different-version-of-c2000-ware/3836987 #3836987"]
    现在再次执行该操作、除非 在导入时选中"copy projects into workspace"复选框。
    现在将产品更改为其他版本、查看是否正确更改了包含项。
    我预测、包含内容不会改变。
    [/报价]

    未更改包含项。

    这两者之间的差异似乎是 在导入工程后如何填充 ORIGINAL_PROJECT_ROOT 路径变量:

    1.当中的 C2000Ware 版本发生更改时、包含路径会发生变化、然后 从 COM_TI_C2000WARE_SOFTWARE_PACKAGE_INSTALL_DIR 路径变量派生 original_project_root、例如

    2.当更改 C2000Ware 版本时包含路径不变时、 ORIGINAL_PROJECT_ROOT 设置为导入 C2000Ware 版本的固定路径基础。 例如:

    编辑 ORIGINAL_PROJECT_ROOT 路径变量以使用${COM_TI_C2000WARE_SOFTWARE_PACKAGE_INSTALL_DIR}代替硬编码路径、然后允许根据在"CCS General"->"Products"下选择的 C2000Ware 版本选择包含路径

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

    切斯特感谢您的所有帮助。 以免您重现导致我困惑的事情。

    Dave。。