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:SysConfig -在配置 CPU1_RAM 时编译和运行工程、但使用 CPU1_FLASH 时 SysConfig 错误会上升(C2000Ware 5.1.0.00和 SysConfig 1.18.0)

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1370551/tms320f28379d-sysconfig---project-compiles-and-run-when-configuration-cpu1_ram-but-a-sysconfig-error-rises-when-using-cpu1_flash-c2000ware-5-1-0-00-and-sysconfig-1-18-0

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

工具与软件:

硬件:控制卡 F28379D

产品:C2000Ware 5.1.0.00和 SysConfig 1.18.0


问题:

一个  包含 SysConfig 文件的闪烁项目、用于设置外设。

SysConfig 会生成在将构建配置用作 CPU1_RAM 时编译和正常运行的代码、但在设置活动配置 CPU1_FLASH 时、SysConfig 会在构建中显示错误:

Building file: "../config.syscfg"
Invoking: SysConfig
"C:/ti/ccs1250/ccs/utils/sysconfig_1.18.0/sysconfig_cli.bat" -s "C:/ti/C2000Ware_5_01_00_00/.metadata/sdk.json" -d "F2837xD" --script "C:/git/firmware/f28379d_dev/sysconfig/project/config.syscfg" -o "syscfg" --compiler ccs
Running script...
subdir_rules.mk:16: recipe for target 'build-427106431' failed
Error: cannot set '$assign' to 'hsecDigital.69': No option named hsecDigital.69 defined, valid options are
Any
GPIO18
ball.9
GPIO62
ball.57
GPIO70
ball.76
GPIO10
ball.100
GPIO13
ball.4
GPIO17
ball.8
GPIO21
ball.13
GPIO73
ball.81
    at setHelper (C:\ti\ccs1250\ccs\utils\sysconfig_1.18.0\dist\webpack:\src\pinmux\services\objectManagers\proxyHandlers\managedObjectProxyHandler.ts:162:10)
    at Object.set (C:\ti\ccs1250\ccs\utils\sysconfig_1.18.0\dist\webpack:\src\pinmux\services\objectManagers\proxyHandlers\managedObjectProxyHandler.ts:29:10)
    at scriptFunc (C:\git\firmware\f28379d_dev\sysconfig\sysconfig-base-perphase\config.syscfg:200:27)
    at cb (C:\ti\ccs1250\ccs\utils\sysconfig_1.18.0\dist\webpack:\src\pinmux\services\scripting\runScript.ts:112:7)
    at Object.withDeprecatedAccess (C:\ti\ccs1250\ccs\utils\sysconfig_1.18.0\dist\webpack:\src\pinmux\services\deprecatedAccessGuard.ts:14:10)
    at Object.runAsUserScript (C:\ti\ccs1250\ccs\utils\sysconfig_1.18.0\dist\webpack:\src\pinmux\services\scripting\scriptingGuard.ts:61:3)
    at iteratee (C:\ti\ccs1250\ccs\utils\sysconfig_1.18.0\dist\webpack:\src\pinmux\services\scripting\runScript.ts:110:5)
    at baseEach (C:\ti\ccs1250\ccs\utils\sysconfig_1.18.0\dist\webpack:\node_modules\lodash\lodash.js:530:11)
    at Function.each (C:\ti\ccs1250\ccs\utils\sysconfig_1.18.0\dist\webpack:\node_modules\lodash\lodash.js:9409:52)
    at C:\ti\ccs1250\ccs\utils\sysconfig_1.18.0\dist\webpack:\src\pinmux\services\scripting\runScript.ts:108:6
gmake[1]: *** [build-427106431] Error 1
gmake[1]: Target 'main-build' not remade because of errors.
gmake: *** [all] Error 2
makefile:140: recipe for target 'all' failed

**** Build Finished ****

SysConfig 文件的内容如下:

/**
 * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
 * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
 * @cliArgs --board "/boards/TMDSCNCD28379D" --context "CPU1" --product "C2000WARE@5.01.00.00"
 * @versions {"tool":"1.18.0+3266"}
 */
 
/**
 * Import the modules used in this configuration.
 */
const can  = scripting.addModule("/driverlib/can.js", {}, false);
const can1 = can.addInstance();
const sci  = scripting.addModule("/driverlib/sci.js", {}, false);
const sci1 = sci.addInstance();
const sci2 = sci.addInstance();
const spi  = scripting.addModule("/driverlib/spi.js", {}, false);
const spi1 = spi.addInstance();

/**
 * Write custom configuration values to the imported modules.
 */
can1.useCase              = "CUSTOM";
can1.useInterfacePins     = ["CANRX@","CANTX@"];
can1.startModule          = false;
can1.$name                = "CANDSP";
can1.can.canrxPin.$assign = "hsecDigital.69";
can1.can.cantxPin.$assign = "hsecDigital.67";
scripting.suppress("Connected to hardware,@@@.+?@@@ is connected to SPIA on the Control Card F28379D\\. Consider selecting it in 'use hardware' above\\. @@@.+?@@@", can1.can, "canrxPin");
scripting.suppress("Connected to hardware,@@@.+?@@@ is connected to SPIA on the Control Card F28379D\\. Consider selecting it in 'use hardware' above\\. @@@.+?@@@", can1.can, "cantxPin");

sci1.$name                 = "UART";
sci1.sci.scirxdPin.$assign = "hsecDigital.73";
sci1.sci.scitxdPin.$assign = "hsecDigital.71";
scripting.suppress("Connected to hardware,@@@.+?@@@ is connected to SPIA on the Control Card F28379D\\. Consider selecting it in 'use hardware' above\\. @@@.+?@@@", sci1.sci, "scirxdPin");
scripting.suppress("Connected to hardware,@@@.+?@@@ is connected to SPIA on the Control Card F28379D\\. Consider selecting it in 'use hardware' above\\. @@@.+?@@@", sci1.sci, "scitxdPin");

sci2.$name                 = "UART_POCKETBEAGLE";
sci2.sci.$assign           = "SCIA";
sci2.sci.scirxdPin.$assign = "hsecDigital.121";
sci2.sci.scitxdPin.$assign = "hsecDigital.122";

spi1.$name                   = "SPI_DAC1";
spi1.mode                    = "SPI_MODE_CONTROLLER";
spi1.useCase                 = "3-WIRE MASTER";
spi1.spi.spi_picoPin.$assign = "hsecDigital.125";
spi1.spi.spi_clkPin.$assign  = "hsecDigital.108";
spi1.spi.spi_ptePin.$assign  = "hsecDigital.110";

/**
 * Pinmux solution for unlocked pins/peripherals. This ensures that minor changes to the automatic solver in a future
 * version of the tool will not impact the pinmux you originally saw.  These lines can be completely deleted in order to
 * re-solve from scratch.
 */
can1.can.$suggestSolution = "CANB";
sci1.sci.$suggestSolution = "SCIB";
spi1.spi.$suggestSolution = "SPIB";

这是 SysConfig 的错误吗、还是遗漏了什么?

谢谢!

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

    您好!  

    在 SysConfig GUI 中打开 SysConfig 文件时、是否显示任何被抑制的错误或警告?

    此错误似乎与 pinmux 有关,其中引脚未配置不可用。  

    可以点击 SysConfig GUI 上的"Info"图标以显示配置中是否报告了任何问题。

    此致

    Siddharth

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

    感谢您发送编修。

    我只需使用构建配置作为 CPU1_RAM 打开 SysConfig GUI。 将构建配置用作 CPU1_FLASH 时、SysConfig 会返回错误。

    同时使用 构建 配置作为 CPU1_RAM

    我抑制了13个警告、这些警告我已使用硬件规范进行验证(以及项目编译)。

    另一方面、使用构建 配置 CPU1_FLASH  SysConfig 会触发错误、即使在兼容模式下也无法打开。

    编辑:排版错误

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

    Andre

    您是否可以共享 CCS 工程和 SysConfig 文件以进行查看?

    此致

    Sidjartj

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

    Andre

    如果您正在使用 C2000Ware 中提供的任何项目、请分享的 CCS 项目、请告诉我其路径。

    此致

    Siddharth