Part Number:TMS320F28388D
大家好,
我目前在实现基于以太网的固件升级功能,我将工程的.out文件通过hexC2000.exe转换为了txt格式,在进行Flash扇区烧录的时候发现烧写进去的是ANSI编码格式,而实际通过烧录器烧写的是ASCII编码格式,所以当我烧写完成后运行时进入了非法中断,请问是否需要将烧录文件转换为ASCII编码进行烧写,但我在Ti基于SCI串口固件升级的例程中也没有进行格式转换,所以有这个疑问,为啥使用txt格式烧录后和烧录器烧录的数据格式不一致。
Yale Li:
我已经咨询了相关工程师,请关注下方链接:
https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1326581/tms320f28388d-issue-about-the-firmware-upgrade-file-transfer-data-format
,
MTFT:
你好,我补充一个问题,就是我用CCS生成Intel hex文件,查看数据发现有在Flash地址以外的数据,但这些数据无法通过Flashapi进行烧写,请问这些数据该如何烧写?
红框内表示的是地址0x00001500的数据
红框外的表示的是Flash地址0x00080000之后的数据
,
Yale Li:
那边的工程师有回复了,你先看一下,我再一并跟进过去
,
MTFT:
好的,麻烦帮忙回复一下
我们是基于以太网的固件升级方案,我使用CCS生成intel hex格式的升级文件,将升级文件通过TFTP协议发送给DSP进行升级,一开始我们使用上位机直接将hex文件发送给DSP,发现DSP接收的是下图红框部分的数据,所以导致程序无法正常使用。
后来才发现在将hex文件发送给DSP之前需要将hex文件转换为右边部分的数据,因为我发现例程并没有这个转换的过程,所以我以为使用sci方案升级是直接将hex文件发送给DSP。
另外我还有个问题就是我用CCS生成Intel hex文件,查看数据发现有在Flash地址以外的数据,但这些数据无法通过Flashapi进行烧写,请问这些数据该如何烧写?
红框内表示的是地址0x00001500的数据
红框外的表示的是Flash地址0x00080000之后的数据
同样,在CM也有类似的情况
,
Yale Li:
好的,我跟进过去了
,
MTFT:
你好,帮我回复一下。
在生成的intel hex文件中那些在flash地址以外的数据是代表需要copy到RAM的数据吗?在烧写该hex文件时是不是需要忽略这部分数据?
,
Yale Li:
好的,我跟进过去了