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

TMS320F28377S: 如何将两个hex文件合并成一个

Part Number:TMS320F28377SOther Parts Discussed in Thread:UNIFLASH

你好,我写了bootloader程序和app程序,生成了两个hex文件。想将其合并成一个hex文件,通过uniflash直接进行烧录。需要对这两个hex文件如何处理?

我知道uniflash烧录时可以同时烧写两个hex文件,但是交给车间烧录时最好能合并成一个。

网上搜到资料说需要将第一个hex的最后一行:00000001FF删掉再复制第二个hex文件,但是我试了一下直接将两个hex文件复制到一起是可以进行烧录的,不知道这样操作是否会存在问题?

希望能得到回答。

另外在测试时发现,我自己瞎写了一个hex,在同一个地址0x80000写不同的数据,uniflash居然也能烧录成功。如下图所示,请问是什么原因?

Yale Li:

user5188513 说:00000001FF

这个是hex文件的结束标志;不删除能烧录的话,应该是烧录工具起的作用。建议你将两个文件都转换成bin格式,然后从烧录过的器件中将代码读取出来,比较一下,就可以排除是否存在问题。

user5188513 说:另外在测试时发现,我自己瞎写了一个hex,在同一个地址0x80000写不同的数据,uniflash居然也能烧录成功。

烧写完之后读0x80000的结果是什么?

,

user5188513:

1.我直接将两个hex文件复制到一起,通过uniflash烧录完成后。再在uniflash中重新添加bootloader的hex和app的hex,通过verify image校验出来没有问题。是否能确认复制起来的hex是正确的?

2.读0x80000的结果是第二行的数据。

这个是否和ECC功能有关?我关闭了uniflash里的Auto ECC Generation后烧录就报错,然后里面的数据就是第一行的数据了。

,

Yale Li:

1.不能。verify image是将uniflash选中的image文件和烧录到器件中的内容进行比较;而现在的问题是通过你所述的方式合成的image文件是不是我们想要的烧录文件。

2.ECC的用处不在这里。

我还是建议你比较一下bin

,

user5188513:

1.好的,我到时候对比一下bin文件

2.关于第二个问题,不知道到底是什么原因?

,

Yale Li:

1.好的;

2.我并不清楚uniflash内部是如何工作的,尤其是针对这种有冲突的非正常情况。这个问题大概率也不会得到答案。我们尽量避免这种情况的发生,对于解决这个问题来说,是比较经济高效的方式。

,

user5188513:

你好,我还想问一下。我在unfilash中关闭了Auto ECC Generation,然后烧写正常的程序,为什么程序会跑不起来?不知道能否提供ECC的相关中文文档。

,

Yale Li:

user5188513 说:不知道能否提供ECC的相关中文文档。

没有

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28377S: 如何将两个hex文件合并成一个
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1