【TI-CCS笔记】工程编译配置 bin文件的编译和生成 各种架构的Post-build配置汇总

【TI-CCS笔记】工程编译配置 bin文件的编译和生成 各种架构的Post-build配置汇总

TI编译器分类

在CCS按照目录下 有个名为${CG_TOOL_ROOT}的目录

其下就是当前工程的编译器

存放目录为:

c 复制代码
C:\ti\ccs1240\ccs\tools\compiler

按类型分为五种:

c 复制代码
ti-cgt-arm_20.2.7.LTS
ti-cgt-armllvm_2.1.3.LTS
ti-cgt-c2000_22.6.0.LTS
ti-cgt-c6000_8.3.12
ti-cgt-msp430_21.6.1.LTS

其中 后缀表示编译器版本号

每个编译器的目录下都有一个bin目录 用于存放各种编译器的可执行文件

另外 在CCS安装目录下还有一个utils目录 其下有一个tiobj2bin

存放的是转为bin文件的脚本和可执行文件

必须同时调用编译器和tiobj2bin文件才可以进行文件转换

工程配置

在工程属性 build-steps下有个post-build 这里就需要写入脚本(中间每个参数以空格隔开 不能换行)

以TI的毫米波雷达的MSS部分为例(一般为ARM Cortex-R4F架构)

如IWR6843AOP:

其编译器采用ti-cgt-arm_20.2.7.LTS

且编译时 采用的是 armofd armhex 两个可执行文件

注意 第二个参数和第三个参数根据工程实际情况来更改

c 复制代码
"${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${PROJECT_LOC}/Debug/IWR6843AOP_Demo.out" "${PROJECT_LOC}/Debug/IWR6843AOP_Demo.bin" "${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"

其中 我的工程名为:IWR6843AOP_Demo

生成的out、bin文件名也为:IWR6843AOP_Demo

首先 需要调用"${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" 脚本

传入的参数文件就是生成的out文件"${PROJECT_LOC}/Debug/IWR6843AOP_Demo.out"

另外指定生成bin文件的目录"${PROJECT_LOC}/Debug/IWR6843AOP_Demo.bin"

以及两个编译器的链接和mkhex4bin脚本"${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"

最后编译之后 就能在Debug目录下找到bin文件

当然 还有个前提就是工程建立和环境配置完成 且能够生成.out文件

同样在pre-build中可以填入一些参数 用于预编译(如编译前修改或删除一些文件)

如:

c 复制代码
rm -f "${PROJECT_ROOT}/Debug/IWR6843AOP_Demo.bin"

DSS部分代码则为(C6000架构)

c 复制代码
"${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${PROJECT_LOC}/Debug/IWR6843AOP_DSS.out" "${PROJECT_LOC}/Debug/IWR6843AOP_DSS.bin" "${CG_TOOL_ROOT}/bin/ofd6x" "${CG_TOOL_ROOT}/bin/hex6x" "${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"

其用到的编译器为ofd6x和hex6x

Post-build配置

ARM架构

c 复制代码
"${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "out文件路径" "bin文件路径" "${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"

C6000架构

c 复制代码
"${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "out文件路径" "bin文件路径" "${CG_TOOL_ROOT}/bin/ofd6x" "${CG_TOOL_ROOT}/bin/hex6x" "${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"
相关推荐
IT19951 小时前
Qt6文档阅读笔记-RESTful API Server解析
笔记
Rey_family2 小时前
HTML 表单学习笔记
笔记·学习·html
xx24062 小时前
CSS3笔记
笔记·学习·css3
MrsBaek2 小时前
前端笔记-AJAX
前端·笔记·ajax
无心水2 小时前
【Java面试笔记:基础】6.动态代理是基于什么原理?
java·笔记·面试·动态代理·cglib·jdk动态代理
憧憬一下3 小时前
搭建stm32工程
stm32·单片机·嵌入式
大学生亨亨3 小时前
go语言八股文
笔记·golang
姝孟4 小时前
Linux学习笔记2
linux·笔记·学习
抓饼先生4 小时前
关于创建UNIX/Linux daemon进程的笔记
linux·笔记·unix
灏瀚星空5 小时前
画布交互系统深度优化:从动态缩放、小地图到拖拽同步的全链路实现方案
经验分享·笔记·python·microsoft·交互