各位好,
我是新接触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。
TI中文支持网



