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.

[参考译文] TMS320F28388D:C2000 Ware_Digital 示例项目中的 SYSCFG

Guru**** 2538950 points
Other Parts Discussed in Thread: C2000WARE, POWERSUITE, TIDM-1000, SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1351324/tms320f28388d-syscfg-in-c2000ware_digitalpower-exemplary-project

器件型号:TMS320F28388D
主题中讨论的其他器件:C2000WARETIDM-1000powerSUITESysConfig

尊敬的 TI 专家:

我将与您联系、要求您澄清安装后在 C2000 Ware_Digital 示例项目中使用 SYSCFG 工具遇到的几个问题(如下所示)。

(1)我注意到 SYSCFG 工具中标记为"INCR_BUILD"的设置。 我假定对此设置的更改将反映在代码片段中的"VIENNA_INCR_BULD"值中。 但是、改变"INCR_BULD"值似乎对相应的代码没有影响。 您能否提供有关如何将该设置与代码交互的指导?

(2)此外、SYSCFG 工具通常在 C2000Ware 内的许多示例项目中自动生成"board.c"或"board.h"文件。 在本例中、我无法找到这些文件。 SYSCFG 会在此上下文中创建一组不同的文件、或者缺少这些常用文件会如何影响代码结构?

谢谢。

埃里克

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

    您好、Eric、

    对于 C2000_SCSDK, Ware_Digital 大部分的参考解决方案都使用了经过修整的 syscfg 向下版本,我们称之为 powerSUITE。 它不会生成或提供配置器件模块的选项、它仅提供特定于参考设计(TIDM-1000)的配置。 因此在这里您不会看到 syscfg 用于寻址器件模块的 board.c 或 board.h、这些模块会手动包含在代码中。

    关于"INCR_BUILD"、它反映的是"VIENNA_INCR_BUILD"、 可能是您没有重新编译工程、只有在编译时构建工具才会调用 syscfg 来重新编译和更改生成源代码。  

    我希望这对您有所帮助、如果您有任何进一步的问题、请告诉我。

    此致!

    王森

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

    尊敬的 Sen:

    感谢您之前的答复。 我有两个后续问题来进一步阐明  本示例工程中 SYSCFG 工具或 powerSUITE 的功能:(1) 关于常规 ePWM、ADC 等的 SYSCFG 设置、您是否认为这些是虚拟设置、因为它们不会生成相应的"board.c"文件? 如果可以、您能否在此 SYSCFG 工具中说明这些设置的预期功能? (2) powerSUITE 如何影响"VIENNA_INCR_BULD"的值? 我注意到、参数是在"vien_settings.h"中定义的、这似乎是 powerSUITE 自动生成的唯一影响代码的文件。 您能否提供有关 powerSUITE 中的更改如何转换为该文件中的修改的更多详细信息?

    谢谢。

    埃里克

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

    您好、Eric、

    我想我明白您的困惑、尽管 powerSUITE 使用 syscfg GUI 框架、但 它们有两个完全不同的用途:

    • C2000ware syscfg:用于器件特定模块(ADC、EPWM、UART、CRC、某些软件库等)的自动代码生成工具
    • powerSUITE:自动配置生成工具、用于 TI 参考设计特定的设置(控制器参数、开/闭环、运行模式等)

    board.c 是设置器件模块的 syscfg 生成的工件。 TIDM-1000 (以及大多数其他 DPSDK 设计)不使用 c2000ware syscfg。 这些 器件 模块配置和设置都是 手动写入 TIDM-1000中的、您可以在以"hal"后缀结束的文件中找到这些手动编写的代码。 (DPSDK/solutions/tidm_1000/device_name/drivers/下的"vien_hal.c"和"ethernet_hal")

    对于第二个问题、powerSUITE 将根据您在 GUI 上的输入生成"VIENNA_INCR_BULD"值。 我们提供了四种不同的工作模式、通过在 GUI 中选择每种模式(在 CCS 中打开 main.syscfg 时使用 GUI)、生成的工件将更新"VIENNA_INCR_BULD"宏值。   通过使用 C 预处理器(如#ifdef、#if 等)、在实际代码中引用该宏值来确定程序的工作流。

    如果希望简化操作而不使用 powerSUITE、我们还提供了一个在将工程导入 CCS 时不使用 powerSUITE 的.projectspec。

    我希望这对您有所帮助、如果您有任何进一步的问题、请告诉我。

    此致!

    王森

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

    尊敬的 Sen:

    我知道 powerSUITE 是专为某些 TI 参考设计而设计的。 但是、当我打开 main.syscfg 时、会在左列显示一个 GUI、其中包含两个设置选项、我认为这对应于 powerSUITE 和 C2000Ware syscfg。 我的剩余问题是:main.syscfg 中的 C2000Ware syscfg 是否正常运行如果要添加一些函数? 因为没有自动生成的 board.c "

    谢谢。

    埃里克

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

    您好、Eric、  

    保留的外设仍是 powerSUITE 的一部分、遗憾的是、这些外设不会像 C2000ware syscfg 那样生成任何依赖项或函数调用。  

    此致!

    王森

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

    您好、Eric、

     如果希望获得 C2000Ware syscfg 支持并自动生成器件文件、则可以使用名称中包含非 powerSUITE 的 projectspec、并在 projectspec 本身中添加以下几行、在 projects 中添加以下几行:

    sysConfigBuildOptions="--product ${COM_TI_DIGITAL_POWER_C2000WARE_SDK_SOFTWARE_PACKAGE_INSTALL_DIR}/c2000ware/.metadata/sdk.json
    ${POWERSUITE_ROOT}/.metadata/product.json --device=F28003x --output=${PROJECT_ROOT} package 100PZ --part F28003x_100PZ"

    -- device、package 和- part 值将因您的设备而异、您可以使用 C2000Ware 中的示例 SysConfig 项目来计算这些参数的值。

    将项目导入 CCS 后、右键单击项目本身并选择"属性"、确保产品为 C2000Ware_DIgitalPower_SDK、否则宏 ${COM_TI_DIGITAL_POWER_C2000WARE_SDK_SOFTWARE_PACK_INSTALL_DIR}将不起作用。

    最后一步是将一个 c2000ware syscfg 文件添加到工作区、您可从 C2000Ware 中的相同示例 SysConfig 工程中复制(.syscfg)文件。

    但是、这种方式意味着您将不再需要通过 GUI 配置 powerSUITE 参数、并且必须手动编辑"settings.h"以与代码进行交互、就像 powerSUITE 所做的那样。

    此致!

    王森

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

    谢谢