语音采集系统

上传人:ba****u 文档编号:198659012 上传时间:2023-04-09 格式:DOCX 页数:17 大小:228.85KB
收藏 版权申诉 举报 下载
语音采集系统_第1页
第1页 / 共17页
语音采集系统_第2页
第2页 / 共17页
语音采集系统_第3页
第3页 / 共17页
资源描述:

《语音采集系统》由会员分享,可在线阅读,更多相关《语音采集系统(17页珍藏版)》请在装配图网上搜索。

1、DSP作业基于TMS320VC5509 的语音处理系统系统框图:框图各模块功能分析:(1)语音信号:输入2路语音信号(8-16位放大信号,要去能完全捕获或 恢复高保真的音频信号)(2)音频信号放大:经放大电路放大输入的语音信号(3)A/D转换器:放大后的音频信号在滤波之后由A/D转换器转换为一串 数字信号(4)DAP芯片处理器:系统的核心芯片(DSP)选用美国TI公司的 TMS320VC5509。是整个实时语音处理系统的核心部分,它对经数字化的信号进 行压缩,编解码。在其内部进行高速运算,处理(5)D/A转换器:由DSP芯片处理好的信号由D/A转换器进行转换,经滤 波输入到音频信号放大器(6)

2、音频处理程序存储区EPROM:存储音频处理程序(7)音量、音效等的选择、控制:选择适当的音量、音效的控制方法(8)功率放大电路模拟音频信号输出:还原成的模拟声音信号,经音箱功 率放大电路放大输出(9)电源模块;为内部芯片及周边系统电路提供能量来源(10)复位电路:确保此方案的电路稳定工作。语音输入与语音输出电路Cap PoliC12语音输入电路语音输出电路 语音信号通道包括模拟输入和模拟输出两个部分。模拟信号的输入输出电路如图所示。上 图中MICBIAS为提供的麦克风偏压,通常是3/4 AVDD,MICIN为麦克风输入,可以根据需 要调整输入增益。下图中LLINEOUT为左声道输出,RLINE

3、OUT为右声道输出。用户可以根据 电阻阻值调节增益的大小,使语音输入输出达到最佳效果。从而实现良好的模拟语音信号输 入与模拟信号的输出。存储器扩展模块:系统工作所需的程序,以及经过转换处理后的中间数据的缓冲存储,都需要 相关的程序和数据存储器来存储。TMS320VC5402内部提供了 4K的ROM和可选作 用程序或数据存储空间的16K的RAM,故其内部比较紧张,尤其内部没有配置用 户可编程的非易失的存储器,为使VC5402构成的系统能处理并存储一点的数据, 或成为一个上电后能独立运行的系统,就需要根据实际应用情况扩展程序或数据 存储器。本系统主要用作音频信号的采集,存储器除了存储系统运行时所需

4、的程 序和一些先期的处理程序外,就作为音频信号的数据缓冲存储器用了,实际要扩 展的存储的空间不是很大。本系统用到静态随机读取存储芯片CY7C1021V33,作 为自举引导装在(boot-loader)之后的外部程序或数据存储器,本系统采用并行 的FLASH(SST39VF400)的引导方式。FLASH存储自举引导装载程序,系统上电 之初,被映射在DSP的数据空间,待引导装载工作结束之后,它将先前由其占据 的数据空间退回给数据SRAM,VC5402的数据空间在系统的不同工作阶段由不同 的外部储存器构成。各个存储器和DSP连接的逻辑连接如图所示。可以根据需要 将他们映射到程序或数据空间去,这些逻辑

5、控制可由CPLD或分立的逻辑器件来 完成。DSP和扩展存储器逻辑连接图见下页程序设计:语音采集与回放:extern void InitC5402(void);extern void OpenMcBSP(void);extern void CloseMcBSP(void);extern void READAD50(void);extern void WRITEAD50(void);/口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口 /个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个

6、个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个* Main Function Program口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口 / 个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个/#include stdio.h”#include math.h”#define pi 3.1415926 void main(void)int k=0;int x_ad,y_da;int

7、*px = (int*)0x3000;int *py = (int*)0x3100;/ for (;)InitC5402();OpenMcBSP();for (;)/for (j=0; j=4; j+)READAD50();px = (int*)(0x3000);x_ad = *px;y_da = x_ad;py = (int*)(0x3100);*py = y_da;WRITEAD50();k+;Asm文件:.global _InitC5402.global _OpenMcBSP.global _CloseMcBSP.global _READAD50.global _WRITEAD50.in

8、clude MMRegs.h_InitC5402:NOPLD #0, DP ; reset data - page pointerSTM #0, CLKMD ; software setting of DSP clockSTM #0, CLKMD ; (to divider mode before setting) TstStatu1:LDM CLKMD, AAND #01b, A ;poll STATUS bitBC TstStatu1, ANEQSTM #0xF7ff, CLKMD ; set C5402 DSP clock to 10MHz* STM #0x4007, CLKMD ; s

9、et C5402 DSP clock to 100MHz;(based on DSK crystal at 20MHz)* Configure C5402 System Registers *STM #0x2000, SWWSR ; 2 wait cycle for IO space & ;0 wait cycle for data&prog spacesSTM #0x0000,BSCR ; set wait states for bank switch:;64k mem bank, extra 0 cycle between;consecutive prog/data read;STM#0x

10、1800,ST0 ;ST0at default setting;STM#0x2900,ST1 ;ST1at default setting(note:INTX=1);STM#0x00A0,PMST; MCmode & OVLY=1, vectors at 0080h* Set up Timer Control Registers *STM #0x0010, TCR ; stop on -chip timer0STM #0x0010, TCR1 ; stop on -chip timer1; Timer0 is used as main loop timer; STM #2499, PRD ;

11、timer0 rate=CPUCLK/1/(PRD+1);=40M/2500=16KHz* STM #6249, PRD ; if CPU at 100M/6250=16KHz* Initialize McBSP1 Registers *STM SPCR1, McBSP1_SPSA ; register subaddr of SPCR1STM #0000h, McBSP1_SPSD ; McBSP1 recv = left - justify; RINT generated by frame syncSTM SPCR2, McBSP1_SPSA ; register subaddr for S

12、PCR2 ; XINT generated by frame syncSTM #0000h, McBSP1_SPSD ; McBSP1 Tx = FREE(clock stops; to run after SW breakpointSTM RCR1, McBSP1_SPSA ; register subaddr of RCR1STM #0040h, McBSP1_SPSD ; recv frame1 Dlength = 16 bitsSTM RCR2, McBSP1_SPSA ; register subaddr of RCR2STM #0040h, McBSP1_SPSD ; recv P

13、hase = 1 ;ret frame2 Dlength = 16bitsSTM XCR1, McBSP1_SPSA ; register subaddr of XCR1STM #0040h, McBSP1_SPSD ; set the same as recvSTM XCR2, McBSP1_SPSA ; register subaddr of XCR2STM #0040h, McBSP1_SPSD ; set the same as recvSTM PCR, McBSP1_SPSA ; register subaddress of PCRSTM #000eh, McBSP1_SPSD ;

14、clk and frame from external (slave) ;FS at pulse - mode(00)* Finish DSP Initialization *STM #0x0000, IMR ; disable peripheral interruptsSTM #0xFFFF, IFR ; clear the intrupts flagsRET ; return to mainNOPNOP* Waiting for McBSP0 RX Finished *IfRxRDY1:NOPSTM SPCR1, McBSP1_SPSA ; enable McBSP1 RxLDM McBS

15、P1_SPSD, AAND #0002h, A ; mask RRDY bitBC IfRxRDY1, AEQ ; keep checkingNOPNOPRET ; returnNOPNOP* Waiting for McBSP0 TX Finished *IfTxRDY1:NOPSTM SPCR2, McBSP1_SPSA ; enable McBSP1 TxLDM McBSP1_SPSD, AAND #0002h, A ; mask TRDY bitBC IfTxRDY1, AEQ ; keep checkingNOPNOPRET ; returnNOPNOP* 个个个个个个个个个个个个个

16、个个个个个个个个个个个个个个个个个个个个个个个个个个个个个OpenMcBSP:rsbx xfcall waitNOPSTM SPCR1, McBSP1_SPSA ; enable McBSP0 RX for ADC data inLDM McBSP1_SPSD,AOR #0x0001, ASTLM A, McBSP1_SPSDSTM SPCR2, McBSP1_SPSA ; enable McBSP0 TX for DTMF outLDM McBSP1_SPSD,AOR #0x0001, ASTLM A, McBSP1_SPSDLD #0h, DP ; load data page 0rpt

17、#23NOPssbx xfNOPNOP;CALL IfTxRDY1; STM #0x0101, McBSP1_DXR1; CALL IfTxRDY1;STM #0x0208, McBSP1_DXR1; rsbx xf; NOP;NOPCALL IfTxRDY1STM #0x0001, McBSP1_DXR1;request secondary communicationNOPCALL IfTxRDY1STM #0100h, McBSP1_DXR1;write 00h to register 1CALL IfTxRDY1STM #0000h, McBSP1_DXR1NOPNOPrpt #20hn

18、opCALL IfTxRDYlSTM #0x0001, McBSP1_DXR1;request secondary communicationCALL IfTxRDY1STM #0200h, McBSP1_DXR1;write 00h to register 2CALL IfTxRDY1STM #0000h, McBSP1_DXR1CALL IfTxRDY1STM #0x0001, McBSP1_DXR1;request secondary communicationCALL IfTxRDY1STM #0300h, McBSP1_DXR1;write 00h to register 3CALL

19、 IfTxRDY1STM #0000h, McBSP1_DXR1CALL IfTxRDY1STM #0x0001, McBSP1_DXR1;request secondary communicationCALL IfTxRDY1STM #0490h, McBSP1_DXR1;write 00h to register 4;bypass internal DPLL;and select the Sample FrequencyCALL IfTxRDY1STM #0000h, McBSP1_DXR1CALL IfTxRDY1STM #0x0001, McBSP1_DXR1CALL IfTxRDY1

20、STM #0102h, McBSP1_DXR1 ;enable digital loopbackCALL IfTxRDY1STM #0x0001, McBSP1_DXR1CALL IfTxRDY1STM #0208h, McBSP1_DXR1 ;enable analog loopbackRETNOPNOP *CloseMcBSP:STM SPCR1, McBSP1_SPSA ; disable McBSP0 RXLDM McBSP1_SPSD,AAND #0xFFFE, ASTLM A, McBSP1_SPSDSTM SPCR2, McBSP1_SPSA ; disable McBSP0 T

21、XLDM McBSP1_SPSD,AAND #0xFFFE, ASTLM A, McBSP1_SPSDRPT #5RETNOPNOP_READAD50:stm0x00ff,ar3stm0x3000,ar2loopa:CALL IfRxRDY1ldm McBSP1_DRR1,bstlb,*ar2+; banz loopa,*ar3-nopnopretnopnop_WRITEAD50:stm0x00ff,ar3stm0x3100,ar2loopb:CALLIfTxRDY1ldu*ar2+,Band#0fffeh,b;mask the LSBstlmB, McBSP1_DXR1; banzloopb

22、,*ar3-nopnopretnop nopwait:stm20h,ar3loopl:stm020h,ar4loop2:banzloop2,*ar4-banzloop1,*ar3-retnopnopnop nop.endA/D模块:xtern void InitC5402(void);extern void OpenMcBSP(void);extern void CloseMcBSP(void);extern void READAD50(void);* Main Function Program / *void main(void) InitC5402();OpenMcBSP(); 初始化串口

23、和 AD50C while (1) READAD50(); D/A模块:extern void InitC5402(void);extern void OpenMcBSP(void);extern void CloseMcBSP(void);extern void WRITEAD50(void);/个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个* Main Function Program/ 个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个

24、个个个个个个个个个个个个个个个个个/void main(void)InitC5402();OpenMcBSP();while (1)WRITEAD50();关于低通滤波器 框图:代码:若通带截止频率f=2kHz,通带最大衰减a =0.1dB,阻带截止频率f =8kHz,阻带最小衰减as=60dB。(用切比雪夫一致逼近法设计)S滤波器的技术指标:ap=0AdBp=2fp%=60理已=2就A =LA = = 4飞4N=l成3clear;Fs=25;fp=0.6*Fs/2;rp=0.01;fs=0.7*Fs/2;rs=0.1;f= fp fs;A=1 0;dev=rp rs;n,f0,m0,W=re

25、mezord(f,A,dev,Fs);b=remez(n,f0,m0,W);h,W=freqz(b,1,256,1);h=abs(h);h=20*log10(h);plot(w,h);grid;xlabel(频率(归一化);ylabel(幅度(dB);总结:本次课程作业,让我对DSP有了一定的认识,同时由于自身能力的不足,导 致在作业过程中遇到很多困难。目前的DSP芯片以其强大的数据处理功能在通信 和其他信号处理领域得到广泛注意并已成为开发应用的热点技术。许多领域对于 数字信号处理器的应用都是围绕美国TI公司所开发的DSP处理器进行的。DSP 芯片是一种特别适合于进行数字信号处理运算的微处理器。主要应用是实时快速 的实现各种数字信号处理算法,如卷积及各种变换等。所以我们应该最其保持一 种积极的态度去钻研!

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!