使用TI-MSP430的C / C ++库或DSP示例代码

时间:2010-12-24 03:05:00

标签: c++ audio signal-processing

我正在研究一个小型dsp项目,该项目使用我的电路板进行实时嵌入的音频处理(例如,奈奎斯特速率采样,过采样和欠采样,重建)。我目前使用的电路板/芯片是德州仪器公司的msp430系列。

MSP430F5438实验板< - (推荐中) http://focus.ti.com/docs/toolsw/folders/print/msp-exp430f5438.html

首先,您会建议购买matlab或octave的副本作为我的主要编码工具。我正在使用德州仪器公司的CCS(Code composer studio)。

其次是c / c ++的DSP(开源)库,我可以用于我的项目。

4 个答案:

答案 0 :(得分:1)

我认为Matlab可能有助于将算法“写在纸上”,而不必担心硬件问题。它对于您可能想要尝试的各种DSP功能也很有用(可以随Matlab一起提供,也可以作为包/工具箱使用)。但是,如果在C / C ++库中不存在,那么在Matlab中“免费”获取的函数将需要重写。

此外,您最终还是需要将代码放入MSP中 - 我过去使用过CCS,以及IAR Systems我非常满意。

对于您的第二个问题,请查看此SO question的答案,并提出相同的问题。一个看起来很有希望的链接是这个:http://spuc.sourceforge.net/

答案 1 :(得分:1)

您的主板应该附带代码示例。根据您上面链接的页面,它附带MSP430F54xx Code Examples (Rev. O) (zip 525 KB)。你尝试过这些例子吗?

答案 2 :(得分:0)

通常,使用高级语言进行算法开发是一个好主意。我听说,尽管不确定,Code Composer Studio已经与MATLAB集成,只要你可以在你的目标上运行MATLAB代码。如果

  • 这是真的,
  • 你有预算,
  • 你并没有试图从芯片中榨取最后一克的性能,

那么这绝对是一个很棒的功能。否则,Octave是一个非常好的选择。它有时比MATLAB慢,并且没有一些更奇特的工具箱,但是对于原型设计和学习它非常适合和免费。

最近我一直在使用Python和NumPy进行原型设计,我对它非常满意。你可能会考虑这个而不是MATLAB / Octave,特别是如果你来自C ++。与MATLAB不同,该语言易于使用,NumPy(有时是SciPy)扩展库提供了许多相同的基本功能。从Python调用C库也很容易,提供了一种简单的方法,可以将高级内容的各个部分迭代地插入到C中。

至于图书馆,我也听过SPUC推荐的gary comtois的好消息。我有一段时间没有使用TI芯片,但他们曾经提供过各种构建模块,如sincosFFTbiquad应用笔记甚至是可链接的库。

答案 3 :(得分:0)

MSP430不是专业的DSP处理器。但是,这并不(必然)意味着您无法使用它处理音频,但可能并不简单。

我可能会尝试以所需的音频采样频率设置定时器中断,该频率从ADC读取样本,对其执行某些操作,然后将其输出到音频DAC。

您只有一个12位ADC,所以不要指望奇迹或CD音质。

void my12KHzTimer()
{
  writeDAC(readADC() / 2); // DSP loop to reduce volume by 6 dB
}
假设writeDAC和r​​eadADC做了他们在锡上说的话......