BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #11988同步于 2012/3/29
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖

【TI—DSP,菜鸟求助】有关:数据转换器支持插件

FengChao
2012/3/29镜像同步3 回复
大家好!事情是这样的: 书上有一句话“ccs的数据转换器支持包,可以自动生成代码。程序员可以在程序中直接使用生成的标准数据读写函数,因此大大简化了数据转换期间支持代码的开发过程。” 于是,我就按照书上的步骤,使用TLV320AIC10(一种codec)作为数据转换器。设置好了“data converter support”之后,果然,自动生成了一大堆文件。。。 比如:dc_conf.h/tidc_api.h/taic10_fn.h/taic10_ob.c/tidc_api.c。。。总共五个文件。 然后我大概花了两天时间,详细地看了一下这五个文件,大概摸清了这五个文件是干嘛的。我又照着书上的代码,写了一个c文件,在main函数里,调用了该codec的api,结果程序跑不动。 一开始的时候,error表示:不存在regs54xx.h,然后我从某个地方,把这个.h文件弄过来,后来由于regs54xx.h里,还include了一个regs.h,我又把这个.h文件弄了过来,还是不行。compile能过,build过不了。symbol referencing errors - ./Debug/Codec.out not built。 我有几个疑问,恳请老手们不吝赐教呀~ 1,tidc,这个单词,含义是什么?dc是什么? 2,其实我学这个DSP,只是为了实现AD和DA,然后弄个FFT,就这样的简单功能,但是倒腾将近一周了,也没有什么进展。大家学这个,入门用了多久呀? 3,symbol referencing errors,是什么意思呢?我完全是按照书上的做法去做的,应该是细节上的错误,比如,什么应该声明的没声明,什么应该include的没有include进去。。。╮(╯▽╰)╭ 谢谢!!!
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
nickluchen机器人#1 · 2012/3/30
1. tidc, 我猜就是ti+data converter。 2. 有人带着会很快 3. 链接时错误,有符号无法解析。应该是你的程序代码中(不一定局限于你写的代码)调用了某些系统库函数,而在链接的符号解析阶段,链接器找不到这些函数的实现。通俗地讲,就是你程序中调用了一个foo()函数,这个函数很可能定义在一个库中。编译的时候编译器不会检查这个函数是不是真的定义了。而在链接的符号解析阶段,链接器真正的要去找这个函数是在哪儿实现的,把你代码中的调用和真正的被调用的函数对应起来。现在链接器在所有文件中都找不到,所以就报错了。 不妨说一下哪个符号解析失败了。
FengChao机器人#2 · 2012/3/30
哈,谢谢! 有一个warning Warning: The project has no cmd file while the Text Linker is selected error是这样的: undefined first referenced symbol in file --------- ---------------- _HWI_enable D:\TI\myprojects\Codec\Debug\taic10_ob.obj >> error: symbol referencing errors - ./Debug/Codec.out not built 【 在 nickluchen 的大作中提到: 】 : 1. tidc, 我猜就是ti+data converter。 : 2. 有人带着会很快 : 3. 链接时错误,有符号无法解析。应该是你的程序代码中(不一定局限于你写的代码)调用了某些系统库函数,而在链接的符号解析阶段,链接器找不到这些函数的实现。通俗地讲,就是你程序中调用了一个foo()函数,这个函数很可能定义在一个库中。编译的时候编译器不会检查这个函数是不是真的定义了。而在链接的符号解析阶段,链接器真正的要去找这个函数是在哪儿实现的,把你代码中的调用和真正的被调用的函数对应起来。现在链接器在所有文件中都找不到,所以就报错了。 : ...................
nickluchen机器人#3 · 2012/3/30
你这个工程是不是带DSP/BIOS操作系统的?HWI是硬件中断,这个函数应该在DSP/BIOS的某个库中定义了。确认下你是不是设置了DSP/BIOS? Warning是缺少一个链接脚本文件.cmd,如果你只是软仿的话,找CCS的hello world工程的cmd文件使用就行了。如果要在硬件上跑的话,需要查查手册,看看地址空间是什么样的,要正确的写在cmd文件里。