This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于3.3下TMS320C6416烧写flash

1:用合众达提供的FLASH_PRG程序,步骤是先load要下载的程序,然后LOAD flash_Prg程序,然后运行,这个程序是分段将程序烧写进入flash的,但是我不明白的是连续两次LOAD PROGRAM,text等程序段的地址应该是后一个LOAD的程序的地址吧,个人愚见。用这个方法也确实把数据写进了但是程序不运行。
2:然后我用了另一种简单粗暴的方法,LOAD 要下载的程序,然后把整个内存区(FILE-DATA-SAVE)分两部分全都存起来,再LOAD烧写flash的程序,然后再把存储起来的数据LOAD到0x80000中,然后再烧写到flash中,连续烧写两次。然后程序写进flash了,但是呢,依然上电没用。
3:考虑二次引导,二次引导用的是boot.c,以前师兄用这个成功写进,也成功启动了。。。。所以我就没办法了。
4:然后发现每次load同一个程序,内存的变化不一样。。0x400前几个数据都有细微的差别。。。我也是崩溃了。。。不知道这个是随机变化的还是怎么样。。。
5:板子的boot方式是没有问题的,和师兄用的板子boot方式已经检查过了。
6:求助,用什么方法可以观察dspboot的过程,看到底是什么地方出了错误。

  • 看不出上面的思路。

    首先C641x的bootloader只能boot 1Kbyte代码,如果代码超过1K,则要用用二级boot,也就是前面的1K代码实现二级boot的功能。

    至于烧写,如果按你前面的方法,即要将FLASH_PRG的代码在CMD文件里偏离被烧写文件的地址范围。

    下面链接是将.out转换成boottable格式的工真,可以将.out转成.bin用file I/O读入烧写,或.h加入烧写工程,这样方便一些。

    http://www.ti.com/lit/an/sprab60/sprab60.pdf