主题中讨论的其他器件:SysConfig、 C2000WARE
工具与软件:
硬件:控制卡 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 的错误吗、还是遗漏了什么?
谢谢!