基于DSP和MATLAB的语音数据采集和处理系统
3.2 上位机部分
---本次设计中比较新颖的地方就是上位机部分采用MATLAB控制串口接收并处理数据。比起VC或者VB,用MATLAB作上位机程序有其独特的优势。MATLAB自带很庞大的函数库,控制串口有serial等函数,语音的回放有wavread函数,至于信号处理更是MATLAB的强项,它自带的信号处理工具箱函数大大的缩短了系统软件开发的周期。另外,MATLAB作人机交互界面也很方便,其自带的GUI工具包使整个过程快捷、流畅,比起VB也逊色不了多少。
---3.1.1 MATLAB的人机交互软件设计
---用MATLAB控制串口接收数据有以下几步:
---1. 先进行串口的初始化操作,然后打开串口,用到的函数为:serial和open。
---2. 设定MATLAB和DSP的握手方式,可通过串口目标的FlowControl属性设定。
---3. 接收和发送数据,用到fread和fwrite函数。
---界面如图5所示,调试时注意MATLAB本身的GUI环境下设计的软件界面不能使用全局变量,若是使用会出现函数使用错误。另外,接收和发送数据之前要清PC的数据缓冲区,以免接收到或发送的数据不是当前数据。最后,接收到的数据应以文件的形式存储下来,以便后续的系统处理。
---3.1.2 信号处理系统设计
---上位机的信号处理系统的设计思路是这样的,信号首先以文件的形式输入处理系统进行频谱分析,观察信号是否被噪声污染。若其频谱含有噪声谱则马上进入滤波器模块进行滤波,以滤除信号中的噪声。然后,再将滤波后的信号送入编解码模块进行编码或解码(在这里用户可以选择不同的编解码方式)。最后将信号送入通信仿真模块进行各种调制或解调处理及相应波形的显示。
结束语
---TMS320C5410作为高速数字信号处理器具有快速的运算能力,结合MATLAB强大的信号处理能力,完全可以达到较复杂的语音信号处理要求。而且系统的可扩展能力很强,可对软件进行修改或者添加新的快速的算法提高系统信号处理的实时性。
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)