28335例程中加printf显示一些cmd文件出错

2019-03-24 09:37发布

我在头文件里面include了stdio.h并在main里面使用了pfrintf。后来系统编译的时候说我.text的段内存不够大。我看了一下初始时的cmd里面,text是放在page0里面的,长度只有0x1000。加上stdio.h之后,编译器说.text需要占用长度2200。因为cmd里有所有的段地址都安排好的,而且几乎是相邻的。那我就重新定义了一个段RAML9,选取了一个空间,定义了长度,将.text指定到这个段去。结果编译的时候就出现C28xx: Loader: One or more sections of your program falls into a memory region that is not writable.
我觉得了修改段长度或是自己定义一个新的段这是允许的,但我不知道是不是有些段不能给用户操作使用。请问出现这个错误是什么原因呢?但我不修改的话,加了新的头文件进来,对.text的长度要求增大了啊,那必须是要做修改的啊。
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
15条回答
bkn1860
2019-03-25 06:38
jonny0811 发表于 2015-12-16 12:50
这样确实可以,但我看了内存映射表,你看一下就会发现里面还有很多区域的reserved的,没被使用的哦!{:1_ ...

Flash和RAM的分配主要还是参照Memory Map来修改 。28335 能使用的RAM L0~L7(双映射),M0,M1。其他地址是不能使用的

一周热门 更多>

相关问题

    相关文章