因此,我首先在MATLAB中对滤波算法建模的DSP设计流程进行了研究,然后利用MATLAB编码器将实际DSP硬件转换为C/C++。我觉得很基本。
所以我的计划是写我自己的C主函数,它从ADC寄存器等获取输入,然后在我的主函数中调用生成的过滤器函数。然后,我将在TI的CodeComposerStudio中将filter.c和filter.h包含在我的项目的源文件中。
我用一个简单的MATLAB函数测试了设计流程,它只需要两个数字并将它们相乘。现在,在这个函数上运行codegen的结果是疯狂的。大约有20个文件被创建。所以,当我在CCS项目中添加源文件时,我实际上必须添加每个库,对吧?在我看来,这段代码不可能高效吗?
我是不是遗漏了一些东西,可以让MATLAB只生成一个简单的头,一个源实现?生成的代码实际有效吗?是否有人实际有使用MATLAB编码器实时DSP的经验?
谢谢。
编辑:我在CCS项目中添加的唯一文件是MATLAB生成的.c和相关的.h文件。这不是一个很简单的链接过程吗?我是否可以通过MATLAB生成一个makefile来帮助这个过程?
发布于 2011-06-17 18:37:33
MATLAB的代码生成利用了它们广泛的、实现良好的库。就开发时间而言,这可以为您带来很大的效率。然而,MATLAB的目标用例是用于桌面开发。如果您正在链接到matlab提供的库,TI CCS构建链可能不会充分利用这些库,如果它甚至可以链接。
我对CCS做了大量的工作,您将用各种暗示性的语用和向量化的函数来手工编写重要的部分。MATLAB不能帮助你,DSP是一个非常不同的野兽与MATLAB的正常目标。它似乎也阻碍了一个框架的干净开始。我的建议是从CCS开始,使用matlab实现进行测试验证。
https://stackoverflow.com/questions/6390087
复制相似问题