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 28335官方例程中 能下载的那个 CMD文件 28335.CMD 里面只有 把 initflash() 函数搬到 RAM的,
ramfuncs : LOAD = FLASHD,
RUN = RAML0,
LOAD_START(_RamfuncsLoadStart),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart),
PAGE = 0
那其他分配到片内FLASH的 段 比如TEXT CINIT 是DSP 自己搬么?还是 开发板跳线设置了 JUMP TO FLASH就不用自己搬了?
都需要自己搬。
但是关键看是否有必要去搬。
像InitFlash()必须搬移到Ram中。
像一些调用频繁,以及运算量大的可以搬移。
其他的无需搬移,毕竟Ram空间有限。
请问Jones Chen ,
仿照InitFlash的方式,想把.text也COPY至RAMH0中执行
.text : LOAD = FLASH_AB, PAGE = 0
RUN = RAML0L1, PAGE = 0
LOAD_START(_.text_loadstart),
LOAD_END(_.text_loadend),
RUN_START(_.text_runstart)
只写上述代码没有问题,但是main函数中加上
memcpy( &.text_runstart,
&.text_loadstart,
&.text_loadend - &.text_loadstart);
或者example_nonBIOS.h中加上
extern Uint16 .text_loadstart;
extern Uint16 .text_loadend;
extern Uint16 .text_runstart;
都会报错,不知道为什么
我试过自定义的段UserFuncs,按上面3部分写是没有问题的