2022年11月5日(纠正与补充)
无论是生成Dat文件还是生成Bin文件都必须使用TI官方的“Hex6x.exe”软件。
关于该“Hex6x.exe”软件的使用,请参考:SPRU186W 第十一章 Hex Conversion Utility Description。
“Hex6x.exe”软件,需要 直接参数或者RMD文件,将“.out”文件转换成ASCII编码的文本文件。生成的文本文件的内容是用户程序编码中的各个段落。
在我们使用CCS烧录程序的时候,可以选择烧录bin格式的程序或者是dat格式的程序。在这两者中,bin文件的空间大小更小。
本文8月1日的内容,关于生成bin文件的方式存在错误。在此纠正。
1. 生成bin格式的文件
之前的理解都是,bin文件是按照地址位置摆放数据,但凡两个段之间相距很远,就会填充很多的0。这种生成的方式会导致bin文件很大(100M+)。
CCSv5下载使用的bin文件,是将段追加在一起,每个段前,记录这段的大小以及段的存放位置。
1.1 步骤
(1)使用hex工具,将out文件生成“btbl文件”(文本文件)。
(2)使用“btoccs”工具,将btbl文件中的字符合并成4字节16进制的数(文本文件)。
(3)使用“ccstobin”工具,将4字节16进制的字符数转换成真实数值,以二进制文件存放。
Hex工具是不开源的,而btoccs和ccstobin是开源的。
2022年8月1日
参考链接:
知乎讲解《CCS如何生成hex和bin文件》
官网资料《构建前和构建后的步骤》
请添加图片描述
1. 生成BIN文件
1.1 ofd6x工具
将.out文件转换为一个xml文件。
1.2 mkhex4bin工具
为 TI的十六进制转换工具hex6x 创建一个文件。
该文件可用于将xml文件转换为一个临时文件。
1.3 hex6x工具
十六进制转换实用程序。将来自mkhex4bin的临时文件和.out文件一起,转换为一个bin文件。
这个问题,不如去搜“为什么要有交叉编译”在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,我们就称这种编译器支持交叉编译。这个编译过程就叫交叉编译。 简单地说,就是在一个平台上生成另一个平台上的可执行代码。
首先,在项目的起始阶段,目的平台尚未建立,因此需要做交叉编译,以生成我们所需要的bootloader(启动引导代码)以及 *** 作系统核心;其次,当目的平台能启动之后,由于目的平台上资源的限制,当我们编译大型程序时,依然可能需要用到交叉编译。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)