TI中文支持网
TI专业的中文技术问题搜集分享网站

【新人贴,求指导】C6678的EDMA数据传输

各位好,

我是新接触C6678的小白,现在在学习edma,实现简单功能就是DDR3内存中的数据搬到L2中,做个处理,再搬回去。

这里请教各位的是:  

    1 有没有例程可以学习,我在自己的安装路径下没找到;

    2 做处理之前假设我需要的数据已经存在DDR3内存中了,这个怎么把数据事先存到DDR3中(数据是固定不变的);

先这么多,先谢过各位了!!

Yantao Gao:

回复 Andy Yin1:

谢谢你的回答,十分有帮助!

我刚也在论坛上搜到了例程,发现它在pdk的安装路径下。

然后导入数据是这样的:  

    1 数据是通过matlab生成的,这样的话load对数据类型/格式有什么要求?

    2 matlab数据倒入DDR3内存有相关例子吗?

先行谢过!

Yantao Gao:

回复 Andy Yin1:

你好,我用edma例程有个问题:

undefined                                                      first referenced symbol                                                                in file ———                                                             —————- CSL_edma3ChannelClose                          ./edma_test.obj CSL_edma3ChannelOpen                           ./edma_test.obj CSL_edma3Close                                        ./edma_test.obj CSL_edma3GetHwStatus                            ./edma_test.obj CSL_edma3GetParamHandle                      ./edma_test.obj CSL_edma3HwChannelControl                   ./edma_test.obj CSL_edma3HwChannelSetupParam           ./edma_test.obj CSL_edma3HwChannelSetupQue               ./edma_test.obj CSL_edma3HwChannelSetupTriggerWord ./edma_test.obj CSL_edma3HwControl                                 ./edma_test.obj CSL_edma3Init                                             ./edma_test.obj CSL_edma3Open                                         ./edma_test.obj CSL_edma3ParamSetup                             ./edma_test.obj CSL_edma3ParamWriteWord                      ./edma_test.obj

error: unresolved symbols remain

error: errors encountered during linking;

是链接的问题,我想应该是link时候csl库没有加进去;link命令如下:

'Building target: Oct10thC6678EDMA.out''Invoking: C6000 Linker'"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/bin/cl6x" -mv6600 -g –diag_warning=225 –abi=eabi -z -m"Oct10thC6678EDMA.map" –warn_sections -i"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/lib" -i"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/include" –reread_libs –rom_model -o "Oct10thC6678EDMA.out" "./edma_test.obj" -l"libc.a" "../edma_test.cmd"

我的问题是这样的:

1 原因是不是我想的那样,csl的库没有被link进去?

2 是的话,怎么才能加进去呢?

ps: CCS版本ccs_base_5.0.3.00023,pkd版本是pdk_C6678_1_0_0_9_beta2。例程是C:\Program Files\Texas Instruments\pdk_C6678_1_0_0_9_beta2\packages\ti\csl\example\edma下的edma_test.c,test_lik.cmd,自己新建工程建立的。。

Many thanks!

Yantao Gao:

回复 Andy Yin1:

你好,我刚试了把csl的库加到link path里去,是这样的:

'Building target: Oct10thC6678EDMA.out''Invoking: C6000 Linker'"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/bin/cl6x" -mv6600 -g –diag_warning=225 –abi=eabi -z -m"Oct10thC6678EDMA.map" –warn_sections -i"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/lib" -i"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/include" -i"C:/Program Files/Texas Instruments/pdk_C6678_1_0_0_9_beta2/packages/ti/csl/lib" –reread_libs –rom_model -o "Oct10thC6678EDMA.out" "./edma_test.obj" -l"libc.a" "../edma_test.cmd"

结果的现象仍是一样!

另外,以CSL_edma3ChannelClose为例,查询了整个工程,只找到声明和引用,没有找到这个函数的定义。

所以,我的问题是:

1 这样在link path里加入csl库的思路对不对?

2 如果思路没错的话,这里面是不是csl的lib库有问题?(我是下载pkd软件包后,安装,然后就没进行其他操作了)

Many thanks!

Yantao Gao:

回复 Andy Yin1:

跟    C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/lib

        C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/include

对比过之后,我发现问题了:

C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/lib下是

而C:/Program Files/Texas Instruments/pdk_C6678_1_0_0_9_beta2/packages/ti/csl/lib下是

后者没有库文件。

那么,我的问题是:

1 上面分析的有没有错?

2 如果没有错,那么怎么能像C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000/lib一样,有个csl的库呢?

Many thanks!

Yantao Gao:

回复 Andy Yin1:

csl库问题已解决,原来是我理解有误!这种类型的库文件,要直接include library file。

赞(0)
未经允许不得转载:TI中文支持网 » 【新人贴,求指导】C6678的EDMA数据传输
分享到: 更多 (0)