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/LAUNCHXL-F280049C:如何传输 Boostxl-Buckconv CCS 项目

Guru**** 2460850 points
Other Parts Discussed in Thread: LAUNCHXL-F280049C, BOOSTXL-BUCKCONV, TIDM-DC-DC-BUCK, C2000WARE, SFRA, TMS320F280025C, POWERSUITE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/963239/ccs-launchxl-f280049c-how-to-transfer-boostxl-buckconv-ccs-project

器件型号:LAUNCHXL-F280049C
主题中讨论的其他器件: BOOSTXL-BUCKCONVTIDM-DC-DC-BUCKC2000WARESFRATMS320F280025CpowerSUITE

工具/软件:Code Composer Studio

你(们)好

我想使用 F280025C 将 Boostxl-Buckconv 项目的代码从 LAUNCHXL-F280049C 转移到我们自己的电路板上吗? 除了需要更改引脚配置外、请建议如何执行此操作。

BR

HK Woo

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

    香港宇人会

    与器件相关的主要更改主要集中在:

    • buck_user_settings.h
    • BUCK_hal.c
    • buck_hal.h

    大多数 driverlib API 应直接从 F28004x 传输到 F28002x。

    TIDM-DC-DC-BUCK 文档的"适应此解决方案"部分中有一个层次结构图、可能会有所帮助。

    Tommy

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

    你(们)好

    感谢您的信息。 我应该对将代码从 LaunchxL-F280049C 传输到我们自己的 F280025C 电路板有一些疑问。

    1.正如您提到的,修改将侧重于这3个文件。 我想知道、什么是项目、它只是与为自己的电路板分配引脚的不同功能相关。 如果为 true、我只需要在这些文件中使用不同的引脚宏名称。 正确吗?

    2."大多数 driverlib API 应直接从 F28004x 传输到 F28002x。"。 这是什么意思? 你能给我举个例子吗?”

    3."层次结构图"。 您是否会向我显示实际的文档名称?

    谢谢

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

    [引用 user="Hung Kai Wood1">如您所述,修改将侧重于这3个文件。 我想知道、什么是项目、它只是与为自己的电路板分配引脚的不同功能相关。 如果为 true、我只需要在这些文件中使用不同的引脚宏名称。 它是否正确?

    如果仔细查看这些文件、您将看到引脚资源(编号)是通过设置文件中的#define pragma 进行选择的。  HAL 文件托管特定于器件的配置、这些配置可能因平台而异。

    [引用 user="Hung Kai Wood1"]:大多数 driverlib API 应直接从 F28004x 传输到 F28002x。" 这是什么意思? 您是否会向我展示一个示例。"

    您可以在 C2000Ware 示例中看到这一点。  例如、如果比较 F8002x 和 F28004x 之间的 EPWM_ex1_TRIP_Zone.c 源、则会发现除了 GPIO 引脚编号的更改外、函数调用是相同的:

    ~\C2000Ware_XXXX\driverlib\f28002x\examples\ePWM\ePWM_ex1_trip_zone.c
    ~\C2000Ware_XXXX\driverlib\f28004x\examples\ePWM\ePWM_ex1_trip_zone.c

    [引用 user="Hung Kai Wood1"]“层次结构图”。 您是否会向我显示实际的文档名称?

    产品页面为 TIDM-DC-DC-BUCK。  这是 指向文档的直接链接。

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

    你(们)好

    我根据您的建议进行了修改。 但是、我仍然收到如下错误消息


    ****为项目 BUCK_F280025C 构建配置版本****

    "C:\\ti\\ccs1011\\ccs\\utils\\bin\\gmake"-k -j 8 all -O
     
    构建目标:"Buck_F280025C.out"
    调用:C2000链接器
    "c:/ti/ccs1011/ccs/tools/compiler/ti-cgt-c2000_20.2.3.LTS/bin/cl2000 "-v28 -ml -mt ---cla_support=cla0 -float_support=fpu32 -idiv_support=idiv0 -tmu_support=tmu0 -O3 -opt_for_speed=5 -fp_mode=relaxed -advice:performance_173=TI_suppress-define -define_diag=-define_superve=-define -guide-cep-cature=-cep-model_superve_display-guide-define=-cep-cep-cep-guide-model=100_model=-cep-define=-cep-define=2-ag=-cep-cep-supervate-supervId=2-ag=2-ag=2-ag=2-ag_supervId=2-ag=2-ag_off-cep-supervate-superv quiet --gen_func_subsections=on --abi=eabi --cla_signed_compare_workarit=on -k --asm_listing -z -m"buck_F280025C.map"--heap_size=0x200 --stack_size=0x400 --warn_sections --i"c:/ti/ccs1011/ccs/tools/compiler/ti-cgt-c2000_20.2.3.LTS/lib /Users/hkwoo/workspace_v10/buck_F280025C/libraries/sfra /Users/hkwoo/workspace_v10/buck_F280025C/libraries/FPUfastRTS /ti/ccs1011/ccs/tools/compiler/ti-cgt-c2000_20.2.3.LTS/include -iclus_exclus_clus_cluse-inue_inue_intrad-ine-ine-excluse-ine"---inue_link_clus-exclus-ine"/Users/hkwoo/workspace_v10/buck_F280025C/libraries/CLAmath ---ine-ine-ine-ine_inue_exclus-inue_exclus-ine"--ine_inue_inue_inue_intrad_ine-exclus-ine-exclus-ine-exclus-ine-ine-ine-ine-ine-ine-ine-ine-ine-/Users/hkwoo/workspace_v10/buck_F280025C/libraries/SFO /Users/hkwoo/workspace_v10/buck_F280025C/device/driverlib rom_model -o "buck_F280025C.out""./buck.obj "./buck_hal.obj "./buck_main.obj "./device/device.obj /device/f28002x_codestartbranch.obj "./libraries/DCL/DCL_DF22_L2L3.obj /libraries/DCL/DCL_error.obj /libraries/sfra/sfra_gui_scicomms_driverlib.obj /libraries/CLAmath/cla2_math_library_fpu32_eabi.lib /libraries/FPUfastRTS/rts2800_fpu32_fast_supplement_eabi.lib "./libraries/DCL/DCL_clamp_L1.obj /device/driverlib/driverlib_eabi.lib /libraries/SFO/SFO_v8_fpu_lib_build_c28_driverlib_eabi.lib ".clabi"".pru2.tisf_labi_lib_lib.32_pru_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib.32.rabi.rabi_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_2.t.32_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib_lib.32.t.32._lib_lib_lib_lib_lib_lib_lib_lib_lib.32./libraries/sfra/sfra_f32_tmu_eabi.lib  
     
    >>编译失败
    Makefile:174:目标'BUCK_F280025C.OUT'的配方失败
    警告#10247-D:在没有 SECTIONS 规范的情况下创建输出段"ramfuncs"
    警告#10247-D:在不使用 SECTIONS 规范的情况下创建输出段"isrcodefuncs"
    警告#10247-D:在不使用 SECTIONS 规范的情况下创建输出段"SFRA_F32_Data"
    警告#10247-D:在不使用 SECTIONS 规范的情况下创建输出段"FPUMATHTables"
    "./280025_flash_lnk.cmd"、第57行:错误#10099-D:程序将不能放入可用存储器、或者该段包含需要无法为此段生成的 trampoline 的调用站点。 对".stack"段大小为0x400PAGE 0的运行定位/分块失败。  可用存储器范围:
      RAMM1       大小:0x3f8       未使用:0x3f8       最大孔:0x3f8     
    错误#10010:链接期间遇到错误;未生成"Buck_F280025C.out"
    gmake.1]:***[Buck_F280025C.out]错误1.
    gmake:***[全部]错误2.
    Makefile:170:目标'all'的配方失败

    ****构建完成****

    我认为这可能是因为.cmd 链接文件、但我不知道在 google 错误消息后如何修复它。

    请建议如何解决。

    随附的 zip 是我从"buck_F280049C" e2e.ti.com/.../buck_5F00_F280025C.zip 修改的项目

    此外、我使用 TMS320F280025C 将程序烧录到自己的板上、并使用 CCS 和 XDS110调试探针器件(从 TI 购买)。 它成功并开始逐步运行程序。 但是、在 device.c 中运行 SYSCTL_setClock (device_setClock_CFG)时会出现错误消息 消息为"无法在/home/ubnuser/ti/repos/c2000ware/repos/f28004x/release_pkg/driverlib/f28004x/driverlib/sysctl.c 找到源文件"
    找到文件或编辑源查找路径以包括其位置。"。 代码似乎仍然指向某个位置。

    我已检查其中的内容、请按如下所示找到屏幕点

    我不知道会发生什么

    HK Woo

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

    香港宇人会

    您的 F28002x .CMD 文件似乎没有为 F28004x 降压示例定义的等效段、并且分配的空间不足、无法适应程序。  您可以看到有关 CMD 文件基础知识的这篇文章。   C28x C 编译器指南 也可能有所帮助。

    Tommy

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

    你(们)好

    感谢您的信息。 基于此、我使用了"2800Cx_general_flash_lnk.cmd"文件并对其进行了修改。 重建项目后没有更多错误。 我不确定是否没有错误、这意味着环境设置对于从49C 迁移到25C 是正确的?

    基本上、我进行了以下修改。  

    将目录器件下的这些文件替换为 c:\ti\c2000\C2000Ware_3_03_00_00\device_support\f28002x\common\source\device.c

    将目录器件下的这些文件替换为 c:\ti\c2000\C2000Ware_3_03_00_00\device_support\f28002x\con\include\device.h

    将目录器件下的这些文件替换为 c:\ti\c2000\C2000Ware_3_03_00_00\device_support\f28002x\con\include\driverlib.h

    将目录器件下的这些文件替换为 c:\ti\c2000\C2000Ware_3_03_00_00\device_support\f28002x\common\source\f28002x_codestartbranch.asm

    修改了"28002x_general_flash_lnk.cmd"

    上述修改仅适用于 CCS 环境设置。

    注意:我没有在 device\driverlib 下替换"driverlib_eabi.lib"、因为我无法在28002x 中找到它。 请告知我是否应继续使用原版本。

    请注意 、这是正确的迁移方式、因为我对 TI MCU 很了解、请找到随附的 zip 文件供您参考。

    此外、我使用具有 CCS 10V 和 XDS110调试探针(从 TI 购买)的 TMS320F2800C25C 将程序刻录到自己的电路板上。 没关系。 我使用 CCS 分步调试程序。 但是、运行 SYSCTL_setClock (DEVICE_SETLOCK_CFG)时出错。 请按如下所示查找屏幕截图

    请告知解决方案。 谢谢

    BR

    hk Wooe2e.ti.com/.../8267.buck_5F00_F280025C.zip

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

    香港宇人会

    是的、您采取的方法是正确的。  对于 driverlib 库、您可以使用~\C2000Ware_XXXX\driverlib\f28002x\driverlib\ccs 的调试或发布版本中的 driverlib.lib 文件

    F28004x 编译器支持 COFF 和 EABI 输出、因此需要指定使用哪个选项来构建库。  F28002x 编译器仅支持 EABI、因此未指定命名。

    该错误很可能与您将 F28004x 库与 F28002x 项目资源混合在一起这一事实有关。

    Tommy

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

    你(们)好

    感谢您的反馈。 我已经介绍了设置。 我真的不知道导致 F280049C 和 F280025C 混合的设置是什么。 您能否提供更具体的步骤来检查它。

    谢谢

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

    香港宇人会

    我认为本次 F28004x 介绍性技术讲座 可能会帮助您解释有关 C2000开发环境和器件架构的一些问题。  F28002x 和 F28004x 共享同一个架构平台、因此您可以将 F28004x 概念直接应用于 F28002x。

    Tommy

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

    你(们)好

    我已经介绍过手册、但仍然无法找到根本原因。 请帮助。

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

    Hipommy

    我修复了该问题、并按照我的预期运行代码。 不过,我仍然有一些问题。 发现程序在"release"下自动生成了头文件"buck_settings.h"、并使用它来编译程序。 我不想使用"Back _settings.h"。 我想使用我自己的参数、而不是 CCS 生成的参数。 当然、我可以在 buck_user_settings.h 上的这些头文件中添加新的宏名称、但我不想这样做、因为我想保留这些宏名称。

    请建议如何操作。

    BR

    HK Woo

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

    香港宇人会

    避免 buck_settings.h 自动生成的建议方法是使用 TIDM-DC-DC-BUCK 设计指南中所述的非 powerSUITE 工程

    Tommy

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

    我按照文档禁用 powerSUITE 功能、但仍然失败。 但是、我发现已将 powerSUITE 从 main.syscfg 和 buck_settings.h 删除到目录中。 还可以。

    但我仍有2个问题、如下所示

    在我编译文件时出现警告。 CCS 提示"#10068-D no matching section"。 发现它与链接文件相关、如下所示为红色

          .TI.ramfunc
          {
              l sfra_F32_TMU_eabi.lib
          }
          ramfuncs

    json 文件 C:\Users\hkwoo\workspace_v10\buck_F280025C\release\syscfg\buck\F28004x\Kit.json 不再生成。 我想知道这一原因。

    谢谢

    HK Woo

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

    [引用 user="Hung Kai Wood1">但是,我发现已将 powersuite 从 main.syscfg 和 buck_settings.h 删除到目录。 还可以。 [/报价]

    powerSUITE 基本上植根于 main.syscfg、因此您根本不应使用该 GUI 界面。  该项目应使用本机 CCS 工具构建。  您可以在 CCS 在线文档中找到 CCS 介绍性信息。

    [引用 user="Hung Kai Wood1">编译文件时出现警告。 CCS 提示"#10068-D no matching section"。 发现它与以下红色部分中的链接文件相关

    这是一个广泛的信息、可能是由一些问题引起的。  您是否在示例中使用 SFRA 调用?  如果不是、可能是因为库未被使用而未被加载。  (参考: https://e2e.ti.com/support/microcontrollers/c2000/f/171/t/584948

    在大多数情况下、您应该能够继续使用此警告进行开发。  如果它仍然存在、您可以开始使用新的线程、以吸引合适的专家来解决该问题。

    [引用 USER="Hung Kai Wood1]json 文件 C:\Users\hkwoo\workspace_v10\BUCK_F280025C\release\syscfg\BUC\F28004x\Kit.json 不再生成。 我是否可以知道这一原因。[/引述]

    JSON 文件是 powerSUITE 组件、因此在使用 nonpowerSUITE 项目时不会生成该文件。

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

    谢谢