BF592资料里写的是有32K的SRAM,我写了下这段程序:
#include <cdefBF592-A.h>
unsigned char test[16252];
void main()
{
while(1);
}
发现定义的数据最多只能为16252 BYTE,如果超出就编译出错,请问是什么原因引起?我应该怎么样才能用到32K的空间?我这样的定义语法应该是存在内部32K的SRAM没错吧?谢谢!
建议生成ldf文件,然后通过
#pragma section("L1_data")
unsigned char test[];
把数组放到data SRAM中。
2. 对ROM的操作请在下面网址中搜索EE351,这篇文档中详细介绍了ROM的具体操作
http://www.analog.com/en/technical-documentation/application-notes-whitepapers/application-notes/resources/processors-dsp/blackfin/listing.html
3. Data RAM和instruction RAM是分开的,没有办法把指令RAM配置成数据RAM
4. 右键单击工程,选择project options->Link->General,在Additional Outpt中勾选Generate symbol map,编译后在debug文件夹下双击打卡后缀名为.xml的文件,里面详细描述了每个section的空间占用,您可以看到L1 DATA SRAM中都放了哪些数据,占用了多少空间等等信息