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.

DSP/BIOS的Flash烧写不成功

首先,烧写RAM里面运行没有问题,没有DSP/BIOS的情况下采用官方DSP28_CpuTimers.c和Example_Flash2812_API.cmd可以实现Flash烧写运行没有问题;

然后,问题来了,现在我需要让DSP/BIOS烧写到FLASH里面运行,我将上述两个东西结合起来,在修改.cmd文件的时候,首先删除默认的MEM下面的FLAS内存分配H用Example_Flash2812_API.cmd里面的分配,修改其他内存冲突单元后出现,编译没有问题两种情况:

 1.如图,不勾选项,采用默认默认配置,编译没有错下载程序,在快结束的时候报错

出现如下错误,无法运行。

Data initialized through the linker is Load time Initialization option must be located in writable memory 
load time initialization record start start address: 0x0000544f
load time initialization record length: 0x00004d07

2.将上面的配置勾上,采用我自己的.cmd,修改编译没有问题,下载时又出现这种情况

可以运行,但是重新上电后无法运行。

现在我不清楚加了有个DSP/BIOS后引导变成什么样了,没有DSP/BIOS的时候我理解的引导应该是:上电->系统复位->boot_ROM(.cmd将codestart函数存在这里)->_c_int00(创建C语言环境)->main(),根据上面的情况,我是这样子理解的,在boot_ROM->_c_int00这个过程中是不是少了一步从FLASH将DSP/BIOS拷到内存里面?然后在_c_int00->main()之间还要加载并启动DSP/BIOS?还有一个问题是DSP/BIOS要怎么分配存储(下图框住的几个夹下面的配置)。