F2812内部flash烧写问题
想把程序烧写到内部flash中,可是在编译的时候有个警告,看不太懂,希望懂的大侠可以不吝指点一下 能运行吗?你双击一下警告,看出现在哪一行。貌似跟CMD文件有关。 wangch_sh 发表于 2014-3-28 14:41 static/image/common/back.gif
能运行吗?你双击一下警告,看出现在哪一行。貌似跟CMD文件有关。
能写到FLASH,但是无法运行,不知道是CMD文件的问题还是.LIB库的问题,刚接触,还不太懂 感觉像是.cmd的段分配有问题
你换个cmd再试试吧 出现问题很正常,以前我第一次烧写的时候也发现了许多问题。
dsp的flash烧写比较麻烦,有时候光换cmd文件并不能保证程序在flash中正确运行。而且就算能正确运行,程序在flash中运行的速度比ram中要慢很多。这对实时性和通讯影响都非常大。一般都要编写启动代码,让烧写在flash中的程序,在启动的时候搬到ram中运行。这样速度会提高很多。我这里直接将启动代码和相关的flash中给你附上。你要做的就是:
1.将库文件换成我给你的库文件
2.启动代码用汇编编的,将启动代码添加的你的工程中。
3.将原来的flash文件替换为我给你的这两个flash
最后你的工程应该是这样的,这里以ccs5.5为例:
所有选中的文件都要添加。
文件在附件中
用户名忘了 发表于 2014-3-29 21:59 static/image/common/back.gif
出现问题很正常,以前我第一次烧写的时候也发现了许多问题。
dsp的flash烧写比较麻烦,有时候光换cmd文 ...
谢谢“用户名忘了”,我用这个方法下到flash上,程序可以运行了,只是在编译的时候有个警告是:creating output section ".bss" without a SECTIONS specification,是不是.bss段没有定义? zxw_linux 发表于 2014-3-31 10:12 static/image/common/back.gif
谢谢“用户名忘了”,我用这个方法下到flash上,程序可以运行了,只是在编译的时候有个警告是:creating...
这个waring是说你创建了.bss段但是没有给他分配地址空间,这时编译器会自动的给他分配一个空间。分配原则是空间最小且能放下该段的一个空间。你定义一个空间将段放进去就行了。下面是我在ti网站上找的一个解决方案。他这个是以.data段为例
This means the linker may have placed the .data section in the wrong location in memory, which could cause a crash - see Should linker warning #10247-D really be an error for more information.
To resolve this you need to add the .data section to the linker command .cmd file in the project as:
SECTIONS
{
.bss : {} > RAM /* GLOBAL & STATIC VARS */
.data : {} > RAM /* GLOBAL & STATIC VARS */
.sysmem : {} > RAM /* DYNAMIC MEMORY ALLOCATION AREA */
.stack : {} > RAM (HIGH) /* SOFTWARE SYSTEM STACK */ 用户名忘了 发表于 2014-3-31 10:26 static/image/common/back.gif
这个waring是说你创建了.bss段但是没有给他分配地址空间,这时编译器会自动的给他分配一个空间。分配原则 ...
很厉害,学到很多东西,谢谢!
页:
[1]