TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320F28069: hex2000是否可以自动把单独生成的page1文件和page0的hex文件合并?

Part Number:TMS320F28069

目前我的固件用到了CLA, CLA1mathTables和.const_cla两个段放到了Page1,结果就是编译完成的时候输出了两个hex文件,

1).hex结尾的hex文件,包括了Page0所有代码

2).i10结尾的hex文件,包括Page1的数据

编译器给出了一个警告,warning: Data is being written to auto-generated file XXXX.i10

如果没有这个警告,100%的用户hex文件会因为缺少.i10文件内容无法运行,即使有这个警告,也会有很多用户忽视警告造成hex文件不完整。这种方式的好处暂时没发现,坏处很明显:给用户挖坑。

我目前是每次手动合并两个hex文件,非常麻烦。是否可以给hex2000.exe工具加一个选项,比如–merge,自动合并两个生成的hex文件?两个文件内容地址并不冲突,手工合并可以做到,hex2000.exe自动合并自然也不是问题。

搜了一些解决方案,有提到改cmd将所有的Page1改为Page0,比如:

https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_C2000_2014744

这样来做,即使能够实现,也很不优雅,改变了cmd文件的语义,得不偿失。最优雅的方法是给hex2000.exe工具增加一个合并输出hex文件的选项。

Green Deng:

似乎是将.econst段和const段定义在了page1中,所以才会生成两个hex文件。

就程序本身来说,目前的解决方案就是更改page分区,其他的基本都需要事后操作或者用第三方软件去合并。你可以更改.econst段和const段的分区后试一下能否生成一个hex文件,这样相对来说能优雅一点。

,

Xiao Dong:

我的两个段都和cla有关,不管是CLA1mathTables还是.const_cla理论上都是数据,确实应该放到Page1。发这个帖子只是建议hex2000.exe增加自动合并功能。

,

Green Deng:

额,那我就不知道开发人员是出于什么考虑才设置生成两个hex文件,或者没能设计出只生成一个hex文件的方法。不过个人认为这个情况存在的时间很长了,至今没有解决的话可能更多的还是有他们的考虑吧

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28069: hex2000是否可以自动把单独生成的page1文件和page0的hex文件合并?
分享到: 更多 (0)