Part Number:TMS320F28075
我的需求是在编写脚本实现提取项目程序中的版本号(使用tokens语句提取指定内容也就是版本号赋值到变量str1),然后再自动编译重命名文件生成带版本号的烧录文件(这里令文件名为new),通过ccs调用后(如上图将脚本写进该框内),生成的文件直接显示为new,而不是我想要的带版本号的文件名,想问如何让这个变量成功赋值显示?
Yale Li:
总结一下,就是:
从源码中提取版本号–>以版本号来命名生成的目标文件
你目前尝试通过bat脚本+CCS Post-build steps来实现。
这个理解正确吗?
,
zyy:
没错是这样的
,
Yale Li:
方便提供一下脚本及后处理命令吗?
,
zyy:
@echo offsetlocal enabledelayedexpansionfor /f "tokens=2,3" %%i in (CFG_SysParaInit.h) do (if %%i==DSP_VERSION (set str1=%%jset str2=TPaa!str1!echo !str2!))for /f "tokens=2,3" %%i in (CFG_SysParaInit.h) do (if %%i==DSP_DEBUG_VERSION (set str3=%%jset str4=_D!str3!set new1=!str2!!str4!_075echo !new1!))for /f "tokens=2,3" %%i in (CFG_SysParaInit.h) do (if %%i==DSP_VERSION2 (set str5=%%jset str6=TPaa!str5!echo !str6!set new2=!str6!!str4!_075echo !new2!))for /f "tokens=2,3" %%i in (CFG_SysParaInit.h) do (if %%i==HIL_TEST (set str=%%jif "!str!"=="0" (cd "../../.././CPU1_FLASH"copy WIS215KW_TL3_inv_f28075.hex WIS215KW_TL3_inv_f28075bak.hexren WIS215KW_TL3_inv_f28075bak.hex !new2!.hex)if "!str!"=="1" (cd "../../.././CPU1_FLASH"copy WIS215KW_TL3_inv_f28075.hex WIS215KW_TL3_inv_f28075bak.hexren WIS215KW_TL3_inv_f28075bak.hex !new1!.hex)))pause
,
Yale Li:
我已经向相关工程师寻求帮助:
https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1272140/tms320f28075-extract-version-number-from-source-code-and-use-it-to-rename-object-file
,
zyy:
好的,麻烦有回复时及时通知我,谢谢!
,
zyy:
或者说有什么其他方法可以调用这个脚本实现提取版本号并生成带版本号的重命名文件?
,
Yale Li:
我们这边提供不了相关的支持。
为什么不手动改一下呢?似乎也并没有多麻烦