您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> [求助]如何设置buffer,可以直接把文件fread... 
本帖共有707个阅读者
发表帖子 发表投票 回复主题
[求助]如何设置buffer,可以直接把文件fread到SDRAM里
qianchang(论坛新手)
qianchang
头衔:社区公民
帮派:无帮无派
帖数:7
金钱:166
积分:10
注册时间:2015/7/2
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
[求助]如何设置buffer,可以直接把文件fread到SDRAM里
在用DSP读取电脑上文件的时候,当利用fread读取一个文件,size如果设置成1M就会有“Out of memory in output section 'bsz_L1_data_b' in processor 'p0'
  Total of 0x100034 word(s) were not mapped. ”的错误。 如果我设置成为1K的size,就可以编译成功。
查看了一下buffer的address, 如下图。接着查看了一下手册,发现这个地址是属于L1的data bank B 的。而且这个buffer里面没有读取到任何有效数据。不知为何?


而其实,本想把voice.wav的音频数据存到SDRAM的。 SDRAM和EBIU,PLL都设置好了,但是不知道如何才能把音频数据直接读取到SDRAM。

unsigned char buffer[1024*1024*1];
Set_PLL(16,3);
Init_EBIU();
Init_SDRAM();
fp1 = fopen("../voice.wav", "rb");
fread(buffer, 1, 1024*1024*1, fp1);





「该帖子被 qianchang 在 2015-07-10 08:45:16 编辑过」

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2015/7/10 8:42:17
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
你的工程选项中,LDF部分,SDRAM没有使能,你找找,打开配置好正确的SDRAM大小,打开就好了。
若是打开后还报这个错,你在你声明的数组前面,加上:
section("sdram0_bank1") unsigned char buffer[1024*1024*1];

你可以看我们的教学视频 LDF一章,对这个有介绍。

这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2015/7/13 22:08:19
vim007(论坛新手)
vim007
头衔:社区公民
帮派:无帮无派
帖数:50
金钱:397
积分:53
注册时间:2013/9/3
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
好东东  直接读进sdram

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2015/9/10 16:09:56
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159303 Call, 1 Queries, Processed in 0.064453 second(s),