语音噪声滤波_第1页
语音噪声滤波_第2页
语音噪声滤波_第3页
语音噪声滤波_第4页
语音噪声滤波_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、DSP课程设计实验报告语音噪声滤波学院: 电子信息工程学院小组成员: 指导老师: 一.实验内容:基本部分:(1)对DMA进行初始化;(2)对A/D、D/A进行初始化;(3)编写DMA中断服务程序和滤波算法程序,实现语音信号的实时滤波;发挥部分:(1)使用DSP产生带回波的语音信号;(2)利用自适应滤波实现语音信号的回波对消。要求完成的任务(1)编写C语言程序,并在CCS集成开发环境下调试通过;(2)将包含噪声的语音信号进行滤波,从扬声器输出端口输出,比较滤波前后的信号的变化;(3)按要求撰写设计报告。二.实验任务通过查询资料我们得知,典型语音通信系统中的噪声来自三个方面:信号处理设备产生的电噪

2、声及传输信道中的电噪声;信号发送端空间环境中的音频噪声信号经麦克风变换为电信号之后,与有用信号其同传递到接收端;信号接收端空间环境中的音频噪声对信号接收者的影响。噪声是由于发生体作无规则振动产生的。DSP利用直接存储器访问方式DMA(Direct Memory Access)采集数据时不打扰CPU,因此利用DMA方式工作时,CPU可以对语音信号进行实时地滤波。本设计要求利用DSP的DMA方式进行信号采集和信号输出,对语音信号进行数字编码,滤波后进行解码。对信号实时的滤波我们采用FIR滤波器,这是最常见的一种,而对于回波的消除我们采用自适应滤波。自适应滤波不仅能够选择信号,而且能够控制信号的特性

3、。自适应滤波器具有跟踪信号和噪声变化的能力,它的系数能够被一种自适应算法所修改。利用DSP可以实时地对信号进行自适应滤波。DSP利用直接存储器访问方式DMA采集数据时不打扰CPU,因此CPU可以对信号进行实时地滤波。本设计要求利用DSP的DMA方式进行信号采集和信号输出,同时对外部输入的信号进行数字滤波。三.实验分析:1. 基本部分:a. DMA通道的介绍:TMS320VC5502共有三个多通道缓冲串口,分别为McBSP0、McBSPl、McBSP2,提供了以下功能:全双工通信、拥有两级缓冲发送和三级缓冲接收数据寄存器,允许连续数据流传输、为数据发送和接收提供独立的帧同步脉冲和时钟信号、可以与

4、IOM一2、SPI、AC97等兼容设备直接连接、串行字长度可选,包括8、12、16、20、24和32位。C5502的McBSP串口接口包括:接收信号DR、发送信号DX、发送时钟信号CLKX、接受时钟信号CLKR、接收帧同步信号FSR、发送帧同步信号FSX和外部输人时钟信号CLKS。其中通过DX和DR引脚来实现DSP与外部设备进行通信数据交换,DSP通过一系列存储器映射控制寄存器来进行配置和操作。直接内存存储(DMA)可以在无需CPU介入的情况下,在内部存储器、外部存储器和片上外设之间传送数据,VC5502的DMA有六个通道,可以设置各个通道的优先级,每个通道的传输都可以由特定的事件触发,当传输

5、完毕以后,DMA控制器可以向CPU发出中断请求,利用DMA方式通过McbSP进行数据传输时,有McBSP产生一个事件报告DMA控制器,从而触发DMA模式进行数据传输,DMA将设定的数据传输完毕以后,触发DMA中断,CPU响应DMA中断而进行中断服务程序。b. FIR滤波函数:通过对以前<<数字信号处理>>的学习我们对FIR滤波器的原理及应用已经有了初步的了解,统一的讲,数字滤波器是语音、图象处理、模式识别以及谱分析中的重要的处理运算环节。DSP由于其本身具有并行的硬件乘法器、流水结构以及快速的片内存储器等资源,其技术已广泛地应用于噪声及振动的各个领域。因此用DSP芯片实

6、现FIR数字滤波,除具有准确度高、不受环境影响等优点外,由于DSP芯片具有可编程特性,程序的可移植性好,灵活性强。实际应用时只需按要求修改滤波器参数,并对程序作较少的改动,即可实现不同截止频率的低通FIR滤波器,实用性较强。下面简单介绍一下数字滤波器的基本原理。数字滤波器原理一般具有如下差分方程:y(n)=akx(n-k)+ bky(n-k) (1)式中x(n)为输人序列,y(n)为输出序列,ak和bk为滤波器系数,,N是滤波器阶数。当所有的bk均为零,则有y(n)= akx(n-k) (2)(2)式是FIR滤波器的差分方程,其一般形式为y(n)= h(k)x(n-k) (3)对(3)式进行z

7、变换,整理后可得FIR滤波器的传递函数:H(Z)= =h(k)z-k (4)FIR数字滤波器的设计方法主要有窗函数法和频率抽样设计法,其中窗函数法是基本而有效的设计方法。下面简单介绍一下FIR滤波器的算法实现方法。FIR滤波为有限冲击响应滤波,其滤波结构是一个分节的延时线,每节的输出加权累加,得到滤波器的输出。由前面的分析知,FIR滤波器数学上可表示为:y(n)= h(k)x(n-k) (5)式(5)中 xn为最近(t=nT)的输人信号,xn-k是延时了k个取样周期的输人信号,hk是第k个延时节的加权值(即滤波器系数),可由MATLAB设计出来,yn是时刻t=nT时滤波器的输出信号,N是滤波器

8、的阶数也称滤波器的抽头数,为实整数,且须满足N*t<1/fs,其中fs为采样频率,,tmac为每个抽头数乘加运算的时间,从这个式子和结构可以看出,为什么称之为有限冲激响应滤波器。因为该滤波器的冲激响应在N个周期后变为0也就是每次乘加运算都要用到之前N个数。滤波器系数可通过MATLAB设计得到,若采用海明窗设计的FIR滤波器是一个17阶的低通滤波器,截止频率为2000Hz.由“MATLAB设计FIR滤波器”可得h(n),这样设计的滤波系数再经过量化即得。本次设计实验中,FIR滤波器可以通过编写滤波算法程序,或调用DSPLIB中的滤波函数来实现。但一般调用DSPLIB中的滤波函数不能够达到很

9、好的滤波效果,所以我们采用编写滤波算法程序来实现FIR滤波器。滤波器的设计可以通过MATLAB实现,具体操作我们下面会介绍.c. A/D,D/A转换器:在其他课程中我们对A/D转换已经理解的很透彻,顾名思义,A/D转换器能够将接收的语音信号(模拟信号)转化为数字信号,供CPU进行处理;D/A转换器能够将数字信号转换为语音信号送SPEAKER端口输出.使用A/D和D/A转换器,必须首先对A/D和D/A转换器进行初始化设置,即设置A/D转换器的工作模式(15+1bit模式,16bit模式)、输入增益(0dB,6Db,12dB)以及抽样频率(8000Hz,16000Hz)等,对于具体参数的设置在程序

10、中已经给出了详细说明。d. 自适应滤波算法(LMS算法):最小均方(LMS,least-mean-square)算法是构建自适应消噪滤波器的主要算法。假设原始输入为:主信号x(n)=s(n)+vo(n); vo(n)是加性零均值Gauss白噪声。本地参考信号为 v1(n )vm(n ),参考输入为v1(n )vm(n ),v1(n )vm(n )与 v0(n)相关与信号 s(n)不相关,可用原理图表示如下:其包括横向滤波器和自适应权值控制算法两部分.这两部分构成一个反馈环,如图3所示。首先有一个横向滤波器(围绕它构造LMS算法);该部件的作用在于完成滤波过程。其次,有一个对横向滤波器抽头权值进

11、行自适应控制过程的算法。横向滤波器各部分的细节如图4所示。抽头输入u(k),u(k-1),u(k-M+1)为MX1抽头输入向量a(k)元素,其中M+1是延迟单元的个数;这些输入张成一个多维空间。相应的ho(k), hi(k), ., hm-1(k)为Mxl抽头权向量h(k)的元素。通过LMS算法计算这个向量所得的值表示一个估计,当迭代次数趋于无穷时,该估计的期望值可能接近维纳最优解在滤 波 过程中,期望响应d(k)与抽头输入向量z(k)一道参与处理。在这种情况下,给定一个输入,横向滤波器产生一个输入,横向滤波器产生一个输出y(k)作为期望响应d(k)的估计。因此,我们可把估计误差e(k)定义为

12、期望响应与实际滤波器输出之差,如图4所示。估计误差e(k)与抽头输入向量z(k)都被加到自适应部分,因此围绕抽头权值的反馈环是闭环的。图3. 自通应横向滩波器框圈图4. 横向渡波器结构框图2. 发挥部分:回声消除器的基本原理:声学回声消除的功能原理框图如图5所示:图5.回声消除器原理框图回声消除的基本原理可以概括如下:自适应地合成回声,并从有回声干扰地信号中减去该合成回声。图6.回声消除器的基本原理图一般回声消除算法通过自适应滤波来完成,其基本原理如图6所示。其中,远端信号城x(k)通过回声信道h产生回声y(k),近端信号d(k)是由回声y(k)和近端声音代句(可包含噪声信号)得到。通过使用M

13、抽头的FIR自适应滤波器来模拟回声信道h,可以使所得y(k)通近回声信号,进而达到回声消除的目的由此可见,回声消除的关键是自适应地调整使其通近h,可通过现有的各种自适应滤波算法实现。这个实验采用的LMS算法,即最小均方误差算法设计的自适应滤波器进行未知系统识别,以将回声信号滤除。该自适应滤波器是FIR横向滤波器,可以根据输出自动修改滤波器的权系数,从而逼近未知系统回声通道。算法的实现基于TMS320C5402DSP芯片和CCS系统的C语言。 远端的信号通过回声通道产生回声信号d(n),该信号一般为远端信号的衰减和延迟。远端信号通过自适应滤波器产生回声预测信号y(n)。在k时刻,它们之差为剩余回

14、声信号:用它来控制LMS自适应滤波器的系数(n)其中为自适应步长因子,一般取01,可视为常数,k时刻滤波器的输出为:以上三个方程是LMS最小均方误差算法的核心方程,也是C语言编程的依据。四.实验主要函数:Dsplib库中的dlsm函数和fir函数的子程序:Dlsm.h的程序如下,路径:C:tic5500dsplibEXAMPLESdlms/*/ Filename: dlms_t.c/ Version: 0.01/ Description: test for dlms routine/*/#include <math.h>#include <tms320.h>#inclu

15、de <dsplib.h>#include "test.h"short i;short eflagr= PASS;short eflagh= PASS;void main() / clear for (i=0;i<NH;i+) hi =0;/ clear coeff buffer (optional) for (i=0;i<NX;i+) ri =0;/ clear output buffer (optional) dbuffer0 = 0; / clear index for (i=1; i<NH+2; i+) dbufferi = 0; /

16、clear delay buffer (a must) / compute dlms(x,h,r,des,dbuffer,STEP, NH, NX); / test eflagr = test(r, rtest, NX, MAXERROR);/ for r eflagh = test(h, htest, NH, MAXERROR);/ for h if( (eflagr != PASS) | (eflagh != PASS) ) exit(-1); return;FIR.h的程序如下,路径:C:tic5500dsplibEXAMPLESFIR/*/ Filename: fir_t.c/ Ver

17、sion: 0.01/ Description: test for fir routine/*#include <math.h>#include <tms320.h>#include <dsplib.h>#include "test.h"short i;short eflag1= PASS;short eflag2= PASS;DATA *dbptr = &db0;void main() / 1. Test for single-buffer / clear for (i=0; i<NX; i+) ri = 0; / cle

18、ar output buffer (optional) for (i=0; i<NH+2; i+) dbi = 0; / clear delay buffer (a must) / compute fir(x, h, r, dbptr, NX, NH); / test eflag1 = test (r, rtest, NX, MAXERROR); / 2. Tets for dual-buffer / clear for (i=0; i<NX; i+) ri = 0; / clear output buffer (optional) for (i=0; i<NH+2; i+)

19、 dbi = 0; / clear delay buffer (a must) dbptr = &db0; / compute if (NX>=4) fir(x, h, r, dbptr, NX/4, NH); fir(&xNX/4, h, &rNX/4, dbptr, NX/4, NH); fir(&x2*NX/4, h, &r2*NX/4, dbptr, NX/4, NH); fir(&x3*NX/4, h, &r3*NX/4, dbptr, NX/4, NH); / test eflag2 = test (r, rtest,

20、NX, MAXERROR); if( (eflag1 != PASS) | (eflag2 != PASS) ) exit(-1); return;这两个函数是用C5000汇编语言编写的,具有很高的执行效率,使用这个函数可以大大提高运算速度,以解决用C语言编写的程序效率不能满足要求的问题。下面以dlsm.h为例,其使用方法如下:ushort oflag = dlms(DATA *x, DATA *h, DATA *r, DATA *des, DATA *dbuffer, DATA step, ushort nh, ushort nx);上述语句是在Dsplib.h中可以找到其路径为:C:tic

21、5500dsplibInclude.下面参看其C子函数定义的各个变量的意义:oflag 溢出错误标志,=1时在计算过程中发生了数据溢出;=0时无数据溢出。x 输入信号数组h 自适应滤波器系数矢量r 输出数组dbuffer 延迟缓冲区,用来存放上一时刻的输出数据des 理想输出信号数组step 2*, 为自适应滤波器的自适应步长因子,一般取0<<1,可视为常数。但为了适应DSP定点数的运算一般取STEP为327nx 向量x中的个数nh 系数的个数注意:h和d的存储地址要求起点必须位于Kbit边界处,即起始地址值的最低有效位必须是0,必须在CMD文件中开辟对齐1K边界的空间,并且只能在

22、头文件中进行段的配置。否则编译无法通过。同理,FIR.h的使用方法如下:oflag = ushort fir(DATA *x, DATA *h, DATA *r, DATA *dbuffer, ushort nx, ushort nh);oflag 溢出错误标志,=1时在计算过程中发生了数据溢出;=0时无数据溢出。x 输入信号数组h FIR滤波器的系数矢量,也是要逼近的对象r 输出数组dbuffer 延迟缓冲区,用来存放上一时刻的输出数据nx 向量x中的个数nh 系数的个数注意:h、d的地址要求同dlms()函数中的h、d参数。DATA 为tms320.h中定义的short整型。五.实验程序设

23、计及调试:1. 滤波器的设计:噪声信号利用MATLAB产生一个信号,由于声音信号属于低频段,所以采用FIR低通滤波器来设计。设计过程如下:利用FDATOOL来设计低通滤波器,所取的设计参数如下:生成的头文件程序如下,我们用到的就是程序中的数组./* * Filter Coefficients (C Source) generated by the Filter Design and Analysis Tool * * Generated by MATLAB(R) 7.6 and the Signal Processing Toolbox 6.9. * * Generated on: 09-Ju

24、l-2012 16:57:23 * */* * Discrete-Time FIR Filter (real) * - * Filter Structure : Direct-Form FIR * Filter Length : 17 * Stable : Yes * Linear Phase : Yes (Type 1) */* General type conversion for MATLAB generated C-code */#include "tmwtypes.h"/* * Expected path to tmwtypes.h * C:Program Fil

25、esMATLABR2008aexternincludetmwtypes.h */* * Warning - Filter coefficients were truncated to fit specified data type. * The resulting response may not match generated theoretical response. * Use the Filter Design & Analysis Tool to design accurate * int16 filter coefficients. */const int BL = 17;

26、const int16_T B17 = 140, 257, 579, 1137, 1890, 2729, 3498, 4038, 4233, 4038, 3498, 2729, 1890, 1137, 579, 257, 140;2.设计流程图:六.实验程序:(1)实验主程序/* * Copyright (C) 2003 Texas Instruments Incorporated * All Rights Reserved */*-main_dma4.c- * This is a DMA application example for Codec AIC23B analog input/ou

27、tput, * The example places the MCBSP in DMA transmit data mode and * syncs MCBSP receive with DMA channel 4 and MCBSP transmit * with DMA channel 5. * The example uses predefined CSL macros and symbolic * constants to create the initialization values needed for * the MCBSP and DMA control registers

28、to effect the transfer * Created by hailingao , BJTU , 2012/06/25 */#include <stdio.h>#include <csl_mcbsp.h>#include <csl_dma.h>#include <csl_irq.h>/-Global data definition-/* Constants for the buffered ping-pong transfer */#define BUFFSIZE 128#define PING 0#define PONG 1#def

29、ine NX 128#define NH 17/*FIR Filter*/#pragma DATA_SECTION(coeffs,".coeffs")Int16 coeffsNH =140, 257, 579, 1137, 1890, 2729, 3498, 4038, 4233, 4038, 3498, 2729, 1890, 1137, 579, 257, 140;#pragma DATA_SECTION(db,".dbuffer")Int16 dbNH+2 ;Int16 *dbptr = &db0;/* * Data buffer decl

30、arations - the program uses four logical buffers of size * BUFFSIZE, one ping and one pong buffer on both receive and transmit sides. */#pragma DATA_SECTION (gBufferXmtPing, "buffer_sect");Int16 gBufferXmtPingBUFFSIZE; / Transmit PING buffer#pragma DATA_SECTION (gBufferXmtPong, "buffe

31、r_sect");Int16 gBufferXmtPongBUFFSIZE; / Transmit PONG buffer#pragma DATA_SECTION (gBufferRcvPing, "buffer_sect");Int16 gBufferRcvPingBUFFSIZE; / Receive PING buffer#pragma DATA_SECTION (gBufferRcvPong, "buffer_sect");Int16 gBufferRcvPongBUFFSIZE; / Receive PONG buffer/*My d

32、ata*/Int16 Echo_Buff_Ping4096 = 0;Int16 Echo_Buff_Pong4096 = 0;Int8 Echo_Delay_Ping = 0;/delay 128 cycleInt8 Echo_Delay_Pong = 0;/*Channel*/Int16 m_exp128 = 0;/expected outputarrayInt16 x_exp64 = 0;/expected outputarrayInt16 y_exp64 = 0;/expected outputarrayInt16 x64 = 0;/input vectorInt16 y64 = 0;/

33、input vectorInt16 h16 = 0;/coefficientsInt16 r64 = 0;/output vectorInt16 dbuffer18 = 0;/delay buffer structureInt16 STEP = 327;/*LMS Filter*/*-*/ Config McBSP: Use McBSP to send and receive the data between DSP and AIC23B/*-*/MCBSP_Config Mcbsp1Config = MCBSP_SPCR1_RMK( MCBSP_SPCR1_DLB_OFF, / DLB =

34、0 MCBSP_SPCR1_RJUST_LZF, / RJUST = 0,right justify the data and zero fill the MSBs MCBSP_SPCR1_CLKSTP_DISABLE, / CLKSTP = 0 MCBSP_SPCR1_DXENA_ON, / DXENA = 1,DX delay enabler on 0, / Reserved = 0 MCBSP_SPCR1_RINTM_RRDY, / RINTM = 0 MCBSP_SPCR1_RSYNCERR_NO, / RSYNCER = 0 / MCBSP_SPCR1_RFULL_NO, / RFU

35、LL = 0 / MCBSP_SPCR1_RRDY_NO, / RRDY = 0 MCBSP_SPCR1_RRST_DISABLE / RRST = 0; Disable receiver ), MCBSP_SPCR2_RMK( MCBSP_SPCR2_FREE_NO, / FREE = 0 MCBSP_SPCR2_SOFT_NO, / SOFT = 0 MCBSP_SPCR2_FRST_FSG, / FRST = 1 ; Enable the frame-sync logic MCBSP_SPCR2_GRST_CLKG, / GRST = 1 ; The sample rate genera

36、tor is take out of its reset state MCBSP_SPCR2_XINTM_XRDY, / XINTM = 0 MCBSP_SPCR2_XSYNCERR_NO, / XSYNCER =0 / MCBSP_SPCR2_XEMPTY_NO, / XEMPTY = 0 / MCBSP_SPCR2_XRDY_NO, / XRDY = 0 MCBSP_SPCR2_XRST_DISABLE / XRST = 0 Disable transimitter ), / 单数据相,接受数据长度为16位,每相2个数据 MCBSP_RCR1_RMK( MCBSP_RCR1_RFRLEN1

37、_OF(1), / RFRLEN1 = 1 MCBSP_RCR1_RWDLEN1_16BIT / RWDLEN1 = 2 ), MCBSP_RCR2_RMK( MCBSP_RCR2_RPHASE_SINGLE, / RPHASE = 0 MCBSP_RCR2_RFRLEN2_OF(0), / RFRLEN2 = 0 MCBSP_RCR2_RWDLEN2_8BIT, / RWDLEN2 = 0 MCBSP_RCR2_RCOMPAND_MSB, / RCOMPAND = 0 No companding,any size data, MSB received first MCBSP_RCR2_RFI

38、G_YES, / RFIG = 1 Frame-sync ignore MCBSP_RCR2_RDATDLY_1BIT / RDATDLY = 1 1-bit data delay ), MCBSP_XCR1_RMK( MCBSP_XCR1_XFRLEN1_OF(1), / XFRLEN1 = 1 MCBSP_XCR1_XWDLEN1_16BIT / XWDLEN1 = 2 ), MCBSP_XCR2_RMK( MCBSP_XCR2_XPHASE_SINGLE, / XPHASE = 0 MCBSP_XCR2_XFRLEN2_OF(0), / XFRLEN2 = 0 MCBSP_XCR2_XW

39、DLEN2_8BIT, / XWDLEN2 = 0 MCBSP_XCR2_XCOMPAND_MSB, / XCOMPAND = 0 MCBSP_XCR2_XFIG_YES, / XFIG = 1 Unexpected Frame-sync ignore MCBSP_XCR2_XDATDLY_1BIT / XDATDLY = 1 1-bit data delay ), MCBSP_SRGR1_DEFAULT, MCBSP_SRGR2_DEFAULT, MCBSP_MCR1_DEFAULT, MCBSP_MCR2_DEFAULT, MCBSP_PCR_RMK( / MCBSP_PCR_IDLEEN

40、_RESET, / IDLEEN = 0 MCBSP_PCR_XIOEN_SP, / XIOEN = 0 MCBSP_PCR_RIOEN_SP, / RIOEN = 0 MCBSP_PCR_FSXM_EXTERNAL, / FSXM = 0 Tranmit frame-syn is provided by AIC23B MCBSP_PCR_FSRM_EXTERNAL, / FSRM = 0 Receive frame-syn is provided by AIC23B MCBSP_PCR_CLKXM_INPUT, / CLKR is input MCBSP_PCR_CLKRM_INPUT, /

41、 CLKX is input MCBSP_PCR_SCLKME_NO, / SCLKME=0 CLKG is taken from the McBSP internal input clock / MCBSP_PCR_CLKSSTAT_0, / The signal on the CLKS pin is low MCBSP_PCR_DXSTAT_0, / Drive the signal on the DX pin low / MCBSP_PCR_DRSTAT_0, / The signal on the DR pin is low MCBSP_PCR_FSXP_ACTIVEHIGH, / F

42、SXP = 1 Because a falling edge on LRCIN or LRCOUT starts data transfer MCBSP_PCR_FSRP_ACTIVELOW, / FSRP = 1 MCBSP_PCR_CLKXP_FALLING, / CLKXP = 1 The falling edge of BCLK starts data transfer MCBSP_PCR_CLKRP_RISING / CLKRP = 1 ), MCBSP_RCERA_DEFAULT, MCBSP_RCERB_DEFAULT, MCBSP_RCERC_DEFAULT, MCBSP_RC

43、ERD_DEFAULT, MCBSP_RCERE_DEFAULT, MCBSP_RCERF_DEFAULT, MCBSP_RCERG_DEFAULT, MCBSP_RCERH_DEFAULT, MCBSP_XCERA_DEFAULT, MCBSP_XCERB_DEFAULT, MCBSP_XCERC_DEFAULT, MCBSP_XCERD_DEFAULT, MCBSP_XCERE_DEFAULT, MCBSP_XCERF_DEFAULT, MCBSP_XCERG_DEFAULT, MCBSP_XCERH_DEFAULT ; DMA_Config dmaRcvConfig = DMA_DMAC

44、SDP_RMK( DMA_DMACSDP_DSTBEN_NOBURST, DMA_DMACSDP_DSTPACK_OFF, DMA_DMACSDP_DST_DARAMPORT1, DMA_DMACSDP_SRCBEN_NOBURST, DMA_DMACSDP_SRCPACK_OFF, DMA_DMACSDP_SRC_PERIPH, DMA_DMACSDP_DATATYPE_16BIT ), /* DMACSDP */ DMA_DMACCR_RMK( DMA_DMACCR_DSTAMODE_POSTINC, DMA_DMACCR_SRCAMODE_CONST, DMA_DMACCR_ENDPRO

45、G_OFF,/* ENDPROG OFF */ DMA_DMACCR_WP_DEFAULT, DMA_DMACCR_REPEAT_OFF, DMA_DMACCR_AUTOINIT_ON,/* AUTOINIT ON */ DMA_DMACCR_EN_STOP, DMA_DMACCR_PRIO_LOW, DMA_DMACCR_FS_DISABLE, DMA_DMACCR_SYNC_REVT1 ), /* DMACCR */ DMA_DMACICR_RMK( DMA_DMACICR_AERRIE_ON, DMA_DMACICR_BLOCKIE_OFF, DMA_DMACICR_LASTIE_OFF

46、, DMA_DMACICR_FRAMEIE_ON, DMA_DMACICR_FIRSTHALFIE_OFF, DMA_DMACICR_DROPIE_OFF, DMA_DMACICR_TIMEOUTIE_OFF ), /* DMACICR */ (DMA_AdrPtr)(MCBSP_ADDR(DRR11), /* DMACSSAL */ 0, /* DMACSSAU */NULL, /* DMACDSAL, to be loaded by submit */ 0, /* DMACDSAU */ BUFFSIZE, /* DMACEN */ 1, /* DMACFN */ 0, /* DMACFI

47、 */ 0 /* DMACEI */;DMA_Config dmaXmtConfig = DMA_DMACSDP_RMK( DMA_DMACSDP_DSTBEN_NOBURST, DMA_DMACSDP_DSTPACK_OFF, DMA_DMACSDP_DST_PERIPH, DMA_DMACSDP_SRCBEN_NOBURST, DMA_DMACSDP_SRCPACK_OFF, DMA_DMACSDP_SRC_DARAMPORT0, DMA_DMACSDP_DATATYPE_16BIT ), /* DMACSDP */ DMA_DMACCR_RMK( DMA_DMACCR_DSTAMODE_CONST, DMA_DMACCR_SRCAMODE_POSTINC, DMA_DMACCR_ENDPROG_ON, DMA_DMACCR_WP_DEFAULT, DMA_DMACCR_REPEAT_OFF, DMA_DMACCR_AUTOINIT_OFF, DMA_DMACCR_EN_STOP, DMA_DMACCR_PRIO_LOW, DMA_DMACCR_FS_DI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论