dsp原理及其应用课程设计报告-基于fir的语音信号滤波内容摘要:
fread 和 fwrite 函数。 对于用 DSP器件设计的语音信号滤波器 , 其系统软件设计可使用 CCS (Code Composer Studio)软 件来进行调试。 设计调试时 , 首先应对 各个设备 进行初始化配置 , 然后再调用子程序来处理音频数据的输入和输出。 在子程序中 , 首先初始化语音缓冲区和工作变量 , 等待 MCBSP通道 0传送结束后 , 再采集语音信号 , 然后传送到 MCBSP并保存于左声道缓冲区 , 此时即可调用 材料 计算 FIR滤波输出 , 滤波后的结果存放于右声道缓冲区 , 最后将滤波后的信号输出到 MCBSP 接口 , 再将此信号传送到 TMS320C5410中。 通过 DSP 的串口 0 输入 /输出数据。 在串口通讯中,数据时钟和帧同步信号都由 AC01 产生,所以 VC5410 将使用外部时钟和帧同步信号。 串口设置代码如下: stm 0,spsa0 stm 2020h,spcr10 stm 1,spsa0 stm 0c0h,spcr20 stm 2,spsa0 stm 40h,39h stm 3,spsa0 stm 0,39h stm 4,spsa0 stm 40h,xcr10 stm 5,spsa0 stm 0,39h 基于 FIR 的语音信号滤波 第 16 页 共 34 页 stm 0eh,spsa0 stm 0dh,pcr0 stm 7h,spsa0 stm 8000h,39h rpt 0ffffh nop stm 00h,dxr10 ldm 22h,a stm 1,38h stm 0c1h,39h 完成串口设置后,还需要修改中断向量表以便正确响应串口 0 的接收和发送中断请求。 使用发送中断产生送出滤波之后的数字语音信号;使用接收中断存贮输入的数据,并设置新数据到达标志。 主循环在检测到该标志后,调用 FIR 滤波程序,完成对输入数据的处理。 matlab设计 fir带通滤波器 [n,Wn,beta,ftype]=kaiserord([7 13 17 23],[0 1 0],[ ],100)。 //得出滤波器的阶数 n=38, beta= w1=2*fc1/fs。 w2=2*fc2/fs。 //将模拟滤波器的技术指标转换为数 字滤波器的技术指标 window=kaiser(n+1,beta)。 //使用 kaiser窗函数 b=fir1(n,[w1 w2],window)。 //使用标准频率响应的加窗设计函数 fir1 freqz(b,1,512)。 //数字滤波器频率响应 t = (0:100)/Fs。 s = sin(2*pi*t*5)+sin(2*pi*t*15)+sin(2*pi*t*30)。 //混和正弦波信号 sf = filter(b,1,s)。 //对信号 s进行滤波 基于 FIR 的语音信号滤波 第 17 页 共 34 页 图 滤波前后的波形 运行程序后,使用 DSP 的集成开发环境 CCS 可以将输入数据与滤波结果显示出来,通过与使用 MATLAB 的 SIMULINK 功能仿真出的滤波结果进行比较,可以验证用 DSP 芯片 C54x 实现的该 FIR 滤波器的滤波过程是否正确。 利用MATLAB 的滤波器设计函数 fir1 设计了一个具有线性相位的数字低通 FIR 滤波器,得到了该滤波器的滤波系数及幅频特性曲线、相频特性曲线,并且用MATLAB 的仿真工具 SIMULINK 仿真了该 FIR 滤波器的滤波过程;通过线性缓冲区法对 FIR 滤波器在 DSP 芯片 C54x 的实现做了理论上的分析。 用 MATLAB语言可方便、快捷地设计具有线性相位的 FIR 滤波器,而且对于参数的修改也十分方便。 用 MATLAB 仿真工具可以清晰地仿真出 FIR 滤波器的滤波过程,有利于理解滤波过程,且 可以判断滤波结果的正确性。 利用 DSP 芯片实现 FIR 滤波器,不仅具有准确度高、执行速度快等特点,而且用程序可移植性好 ,实用性强可以十分方便地改变滤波器特性。 在实际应用中,只需要按照要求修改滤波器的参数,并对程序作微小的改动,即可实现不同要求的 FIR 滤波器。 基于 FIR 的语音信号滤波 第 18 页 共 34 页 4 程序编写及调试结果 程序 BSP .set 0。 //当前使用 McBsp0。 McBsp0 内存映射寄存器 SPSA0 .set 038h。 //定义子地址寄存器映射位置 SPSD0 .set 039h。 //定义子块数据寄存器映射位置 DRR10 .set 021h。 //接收数据寄存器 1 映射位置 DRR20 .set 020h。 //接收数据寄存器 2 映射位置 DXR10 .set 023h。 //发送数据寄存器 1 映射地址 DXR20 .set 022h。 //发送数据寄存器 2 映射地址。 McBsp1 //内存映射寄存器 SPSA1 .set 048h SPSD1 .set 049h DRR11 .set 041h DRR21 .set 040h DXR11 .set 043h DXR21 .set 042h。 McBsp Subaddressed Registers SPCR1 .set 00h。 //定义 SPCR10 的映射子地址 SPCR2 .set 01h //定义 SPCR20 的映射子地址 RCR1 .set 02h //接收控制寄存器 1 映射子地址 RCR2 .set 03h //接收控制寄存器 2 映射子地址 XCR1 .set 04h //发送控制寄存器 1 映射子地址 XCR2 .set 05h //发送控制寄存器 2 映射子地址 SRGR1 .set 06h //采样率发生器寄存器 1 映射子地址 SRGR2 .set 07h //采样率发生器寄存器 2 映射子地址 基于 FIR 的语音信号滤波 第 19 页 共 34 页 MCR1 .set 08h //多通道控制寄存器 1 映射子地址 MCR2 .set 09h //多通道控制寄存器 2 映射子地址 RCERA .set 0ah //接收通道控制寄存器 1 映射子地址 RCERB .set 10bh //接收通道控制寄存器 2 映射子地址 XCERA .set 0ch //发送通道使能寄存器 A 映射子地址 XCERB .set 0dh //发送通道使能寄存器 B 映射子地址 PCR .set 0eh //引脚控制寄存器映射子地址 .if BSP = 0 //条件汇编,因为 5402 有两个同步缓冲口如果 BSP=0 则使用同步缓冲口 0 SPSA .set SPSA0 //由于同步缓冲口采用子地址寻址方式 SPSD .set SPSD0 RDRR .set DRR10 RDXR .set DXR10 .endif .if BSP = 1 //条件汇编,因为 5402 有两个同步缓冲口如果 BSP=1 则使用同步缓冲口 1 SPSA .set SPSA1 SPSD .set SPSD1 RDRR .set DRR11 RDXR .set DXR11 .endif //以下程序是写数据的子程序也就是宏 WR_SUB_REG .macro val,addr //写 McBsp 控制寄存器 stm addr,SPSA //将 ADDR 的地址写入 SPSA nop //空操作 stm val,SPSD //将配置值写入 SPSD nop //空操作 基于 FIR 的语音信号滤波 第 20 页 共 34 页 .endm //以下程序是读数据的子程序也就是宏 RD_SUB_REG .macro addr,acc //读 McBsp 控制寄存器 stm addr,SPSA //将 ADDR 的地址写入 SPSA nop //空操作 ldm SPSD,acc //送入累加器保存 nop //空操作 nop nop .endm WAITTRX .macro //等待串口中断宏 WAITR? RD_SUB_REG SPCR1,A and 11, A bc WAITR?, AEQ .endm PROGREG .macro progword //DSP 与 AD50 的二次通讯 (将其最后一位置为 1 便可 ) stm 01h,RDXR WAITTRX stm progword,RDXR WAITTRX .endm //以下程序是等待延时子程序 wait .macro STM 0400h, AR0 RPT *AR0 基于 FIR 的语音信号滤波 第 21 页 共 34 页 NOP .endm .mmregs .global _c_int00 .sect .vectors //以下是中断向量表 RESET b _c_int00 nop nop .space 19*4*16 BRINT0 b recv nop nop BXINT0 rete nop nop nop .space 10*4*16 //以下是主程序 .text _c_int00 ld 0h,DP //设置数据页指针为第 0 页 stm 0ff00h,SP //设置堆栈指针地址为。dsp原理及其应用课程设计报告-基于fir的语音信号滤波
相关推荐
址,抽样点数,数据类型等分别进行设置,输出各种波形。 输出滤波前的信号时域波形。 首先,设置如图9所示,输出滤波前的信号时域波形。 单击OK后生成如下图10波形。 图10为滤波前的信号,波形很杂乱,从时域上很难看出信号的周期性。 修改相应设置,输出如图11所示滤波前信号频谱。 经过滤波后,时域波形如图12所示。 总 结通过本次课程设计,让我了解了数字滤波是信号处理技术中的重要部分
V+专场路演) 成功数十家创客入驻 通过宣传推广和 V+的磁力效应 ,目前已有 20 家 创客 入驻 进来 , 主要以个人创客为主。 部分已入驻 创客 名单 : 序号 创客姓名 联系电话 入驻时间 主要作品 1 赵文亮 爆传 2 集美奢时尚连锁 集美信息科技 app 3 戴彧敏 超恒永动 4 陈晓军 卖易 99 5 微逸环保 除甲醛环保产品 6 创业商社 健康管理及投资 7 姜琪 衣橱 APP
3。 16 6 信 号 发 生 器 软 件 设计 1 7 7 信 号 发 生 器 的 实 物 图 及 其 输 出 波 形 展示 1 8 正 弦 波 测试 18 方波测试 19 7 . 3 三角 波测试 集成电路 课程设计 基于单片机的低频信号发生器设计 XXX 4 20 7 . 4 锯 齿 波 测试 20 8 结束语 22 参 考 文献 23 附录 25 集成电路 课程设计
波 器波 形 输 出 控 制 数 据 图 11:DDS 原理图 波形存储器产生的所需波形的幅值的数字数据通过 D/A转换器转换成模拟信号,经过低通滤波器滤除不需要的分量以便输出频谱纯净的 所需信号。 信号发生器的输出频率 fo 可表示为: NsfMfMf 2..0 ( ) 式中 sf 为系统时钟, f 为系统分辨率, N 为相位累加器位数, M 为相位累加器的增量。 参数确定及误差分析
2、糯玉米在抽雄后25 天前后;秋播糯玉米在抽雄后 28 天前后;春播甜玉米在抽雄后 22 天前后;秋播甜玉米在抽雄后 24 天前后是最佳的采收期。 二看雄穗(天花)颜色:以上采摘适期的玉米雄穗顶端开始变枯,但枯萎部分不超过雄穗的 50%,如果雄穗尚未变色,说明还未到采摘适期。 三看玉米须颜色:未授粉的玉米须呈鲜红色,授粉后花丝颜色渐渐变深,如果花丝开始变焦,则可分批采收。