您的位置: OpenADSP社区论坛 -> SHARC/TigerSHARC专区 -> 新手上路 -> QQ技术问题:21489如何在C语言分配外部存储... 
本帖共有823个阅读者
发表帖子 发表投票 回复主题
QQ技术问题:21489如何在C语言分配外部存储器作为音频缓冲
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5195
金钱:34806
积分:6378
注册时间:2011/6/7
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
QQ技术问题:21489如何在C语言分配外部存储器作为音频缓冲

问题:在C语言中如何分配外部存储器作为音频数据缓冲?

          描述:TI的CCStudio里面,在源程序文件做如下声明:

          #pragma DATA_SECTION(MyBuf,"EXT_Block0")

          float MyBuf[128];

          然后,在cmd文件(相当于VDSP中的LDF文件)中定义如下    

          MEMORY{ ......

            SDRAM   o = 0xC0000000  l = 0x10000000     /* 256MB SDRAM Data */   }                                                                      

          SECTIONS{ ......

              EXT_Block0 > SDRAM  }

          就可以在程序中使用相应的缓冲来缓存音频数据了。

          在VisualDSP里面,我参考IDE帮助,却一直没能定义到可以使用的缓冲。


我是OP...
等级:管理员 参考IP地址:*.*.*.*
2013/8/23 9:52:34
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5195
金钱:34806
积分:6378
注册时间:2011/6/7
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
答:

先通过VDSP下菜单tools - > Expert Lenker ->Create LDF生成LDF文件,然后在你的代码中需要放到SDRAM的数组或者代码前面加上:

section("seg_sdram")

如:section("seg_sdram")  unsigned char buffer[0x100000];

你可以以代码形式打开LDF文件自己配置其空间和片段名。


我是OP...
等级:管理员 参考IP地址:*.*.*.*
2013/8/23 9:52:49
rainbow(论坛新手)
rainbow
头衔:社区公民
帮派:无帮无派
帖数:1
金钱:105
积分:1
注册时间:2013/12/16
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
你好,我用这个方法开发空间,结果编译不成功,老是提示No valid command(s) to build.而且所有工程都不能编译了,请问如何拯救?

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2013/12/16 17:22:47
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159009 Call, 3 Queries, Processed in 0.031250 second(s),