【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"
相关推荐
几度春风里4 小时前
嵌入式Linux系统编程 — 7.2 进程的环境变量
嵌入式·linux系统编程·进程的环境变量
muren8 小时前
昇思MindSpore学习笔记2-01 LLM原理和实践 --基于 MindSpore 实现 BERT 对话情绪识别
笔记·深度学习·学习
渔舟小调8 小时前
技术浅谈:如何入门一门编程语言
经验分享·笔记
Beast Cheng8 小时前
07-7.1.1 查找的基本概念
数据结构·笔记·考研·算法·学习方法
~山花~9 小时前
Vue3实战笔记(64)—Vue 3自定义指令的艺术:实战中的最佳实践
javascript·vue.js·笔记·自定义指令·vue3实战笔记
鱼仰泳9 小时前
【笔记】解决 CSS:backface-visibility:hidden; 容器翻转 引起的容器内 input不可用
前端·css·笔记
观鉴词recommend11 小时前
【c++刷题笔记-贪心】day30:56. 合并区间 、 738.单调递增的数字
c++·笔记·算法·leetcode
北辰202312 小时前
conda
笔记·conda
科学的发展-只不过是读大自然写的代码13 小时前
qt 开发笔记堆栈布局的应用
笔记·qt·堆栈布局
阿飞不修电脑14 小时前
《Linux开发笔记》C语言编译
c语言·开发语言·笔记