查看: 1697|回复: 1
打印 上一主题 下一主题

TI DSP hex2000.exe使用方法

[复制链接] qrcode

282

主题

284

帖子

1263

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1263
楼主
跳转到指定楼层
发表于 2016-4-20 09:20 AM | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
       TI的CCS默认生成的是.out格式的文件,而很多应用场合往往需要的是纯二进制代码,TI提供了一个小工具HEX2000能帮助实现格式的转化,具体的说明还是请参看TMS320C28x Assembly Language Tools手册。这里简单的说明下该工具的使用:
       

       1.hex2000是在ccs安装目录下的。

         2.hex2000 转化工具支持多种输出格式,至于用那种格式,通常是由所用的烧写器来决定的。

        常见的有:
         Ascii hex: 这种格式其实是会将所有的code转化为字符形式,比如本来的0x3132, 它就用\'3\' \'1\' \'3\' \'2\'来表示,当中有空格,这种格式比较使用通过串口等工具来更新数据。
         binary:-b 选项,纯二进制格式。它还支持intel,motorola-s, ti-tagged, tektronix等格式。

        3.hex2000 有memory width的概念,输入文件的(--memwidth)
        一般来说都是16bit的(因为编译出来就是这样的),输出格式--romwidth,可以指定为8或者16(有些格式不支持16)。如果输入16,输出是8,hex工具会自动生成两个文件,一个放低8位的数据,一个放高8位的数据。当然你也可以自己制定这两个文件的名字。

        4.你也可以指定输出文件的字节顺序,默认是little-endian,也可以通过-order LD和-order MS来指定大小端顺序。

        5. -image选项:
        打开该选项,系统会产生一个和你在roms中指定大小一样的文件,不足部分用fill的值来替代。如果没有用该选项,系统只会产生一个实际大小的文件,比如你想要的空间是0x300000-0x330000,但这里面只有0x300000-0x310000空间有数据,那系统只会产生这部分的数据,后面部分不会填0;同事如果不使用-image选项,那如果0x300000-0x330000中仅有两个数据块,且这两个数据不连接,不适用该选项则会出现一个压缩的数据块,且仅有这两个数据块和的outfile。

        6.hex2000工具
        可以通过命令行通过一句话将所有的参数和输入输出写在一起来运行,比如:hex2000 -t firmware -o firm.lsb -o firm.msb
         也可以通过ROMS指令写一个脚本文件,这种脚本文件的好处是可以编写比较复杂的要求,而且易于修改。
回复

使用道具 举报

7

主题

10

帖子

16

积分

禁止访问

积分
16
沙发
发表于 2016-4-20 02:56 PM | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表