DSP的回波产生与抵消_第1页
DSP的回波产生与抵消_第2页
DSP的回波产生与抵消_第3页
DSP的回波产生与抵消_第4页
DSP的回波产生与抵消_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、DSP课程设计实验报告DTM信号的产生及检测院(系):电子信息学院通信07级设计人员:贾勇学号:07211168设计人员:李昂学号:07211170成绩:工程设计50报告20答辩30总分评语:指导教师签字:日期:设计任务书双音多频DTMF ( Dual Tone Multi Frequency)是在按键式电话机上得到广泛应用的音 频拨号信令,一个 DTMF信号由两个频率的音频信号叠加构成。这两个音频信号的频率分12C9HJ 13M H2 *4” Hi 1613 Hi别来自两组预定义的频率组:行频组和列频组。每组分别包括4个频率,分别抽出一个频率 进行组合就可以组成 16种DTMF编码,分别记作

2、 09、*、#、A、B、C、D。如下图1所 示。B9T Mz770 Ha055 Ha图1 DTMF信令的编码要用DSP产生DTMF信号,只要产生两个正弦波叠加在一起即可;DTMF检测时采用改进的Goertzel算法,从频域搜索两个正弦波的存在。1 设计要求及目标基本部分:(1) 使用C语言编写DTMF信号的发生程序,要求循环产生09、*、#、A、B、C、D 对应的DTMF信号,并且符合 CCITT对DTMF信号规定的指标。(2) 使用C语言编写DTMF信号的检测程序,检测到的 DTMF编码在屏幕上显示。发挥部分:DTMF信号的规定指标,使每秒内利用DTMF信号完成数据通讯的功能,并试改进 传送

3、的DTMF编码越多越好。2.设计思路DTMF发生器基于两个二阶数字正弦振荡器,一个用于产生行频,一个用于产生列频。DSP只要装载相应的系数和初始条件,就可以只用两个振荡器产生所需的八种音频信号。典 型的DTMF信号频率范围是 7001700Hz,选取8000Hz作为采样频率,即可满足奈奎斯特 定理。DTMF数字振荡器对的二阶系统函数的差分方程为:yC)= 一知一 1) 一 %0 - 2)其中山 口,宀-,-,.,为采样频率,-为输出正弦波的频率,为输出正弦波的幅度。该式初值为,;,f 一 1。在输入信号中检测 DTMF言号,需要在输入的数据信号流中连续地搜索DTMF信号频谱的存在。整个检测过程

4、分两步:首先采用 Goertzel 算法在输入信号中提取频谱信息;接着 作检测结果的有效性检查。DTMF军码时在输入信号中搜索出有效的行频和列频。计算数字信号的频谱可以采用DFT及其快速算法FFT,而在实现DTMF军码时,采用 Goertzel算法要比FFT更快。通过FFT可 以计算得到信号所有谱线,了解信号整个频域信息,而对于DTMF言号只需关心其8个行频/列频及其二次谐波信息即可,二次谐波的信息用于将 DTMF 信号与声音信号区别开。此时 Goertzel 算法能更加快速的在输入信号中提取频谱信息。 Goertzel 算法实质是一个两极点 的 IIR 滤波器。3 要求完成的任务(1)编写C

5、语言程序,并在CCSB成开发环境下调试通过。(2)实现设计所要求的各项功能。二、设计内容(1) 使用C语言编写DTMF信号的发生程序,要求循环产生 09、*、#、A、B、C、D对应的DTMF信号,并且符合 CCITT对DTMF信号规定的指标。(2)使用C语言编写DTMF信号的检测程序,检测到的 DTMF编码在屏幕上显示。 发挥部分:利用 DTMF 信号完成数据通讯的功能,并试改进 DTMF 信号的规定指标, 使每秒内传送的 DTMF 编码越多越好。三、设计方案、算法原理说明DTMF 信号的产生 :DTMF 发生器基于两个二阶数字正弦振荡器,一个用于产生 行频,一个用于产生列频。 DSP只要装载

6、相应的系数和初始条件,就可以只用两个振 荡器产生所需的八种音频信号。典型的DTMF信号频率范围是7001700Hz,选取8000Hz作为采样频率,即可满足奈奎斯特定理(Nyquist定理:为了正确判定信号频率,信号在一个周期内至少被采样两次)。具体来说DTMF编码是将拨号盘上的数字 09,字母AD, */E、#/F,共16 个字符,用音频范围 ( 小于 3 400 Hz) 的 8个频率表示出来。具体来说,将 8个频 率分为高频群和低频群 2组,分别作为列频组和行频组, 总共可构成4X 4共16种不 同组合,代表16个符号。具体表示方法如图 1所示。DTMF双音频可以由2个可编程 的二阶数字正弦

7、振荡器产生, 如图 2 所示, 分别用于产生行音频和列音频。 由于 DTMF 频率范围在6971 633 Hz之间,根据Nyquist定理可知,用8kHz速率抽样对 DTMF 信号没有影响。及所以8000HZ这样的频率抽样对 DTMFft号没有影响。(其中在100ms 内采样800个点,我们设置 800个点的缓存,其中用 400个存产生的DTMF言号值, 即音频信号必须持续 50ms,另外400个存0值,即静音信号。)U77* llz.KS2 Hz!M| FUli 1去*t棚应的DTMF恬息的毅于正弑绘落签DTMF信号的检测:DTMF言号的检测要比产生复杂得多,一方面,解码的算法相对复杂;另一

8、方面,对解码的实时性,即解码速度要求较高。不同的软硬件有不同的实现方法,而软件解 码主要是指用一些通用的硬件模块,以合适的算法对接收进来的 DTMF言号进行解码。解码一般有2个过程:变换和确认,变换是指把输入的时域信号变换成易处理的频域 信号,得到有效频率组成的数字;确认是指对检出的数字是否有效,即判断是否符合 各项参数规定和信号指标的要求。在检测端对DTMF信号解码时从输入信号中搜索出有效的行频和列频。进行解码可以采用2种算法:FFT和Goertzel算法。FFT可用来计算W点频率处的频谱值,但 他不能按逐个样点的方式处理,不利于实时实现,且为了保证频率分辨率,FFT的点数需取得较大。当计算

9、的频率点较少时,Goertzel算法是计算 DFT的有效算法,比FFT更快。在本实验系统中,只需关心其8个行频/列频及其二次谐波信息即可,因此,选用了 Goertzel算法,利用二极点的IIR滤波器计算离散傅里叶变换值,能够 快速高效地提取输入信号的频谱信息。Goertzel算法实质是一个两极点的IIR滤波器。DTMF数字振荡器对的二阶系统函数的差分方程为:,- 为采样频率,为输出正弦波的频率,匸为输出正弦波的幅度。该式初值为, J 一丄 -Goertzel算法原理框图在实际的DTMF佥测中,只需 DFT的幅度(本算法为平方幅度)信息就足够了,因此在 Goertzel滤波器中,当N点(相当于D

10、FT数据块的长度)样值输入滤波器后,滤波器输出 伪DFT值vk( n),由vk (n)即可确定频谱的平方幅度。X(k) 2 yk(N)yk (N)v/(N) Vk2( N 1)2 cos( 4rk)Vk2(N )v/( N 1)(2)其中k的取值可由下表得到:1st Harmonics(N = 205) fs = 8 ksps2nd Harmonics(N=201) fs = 8 kspskfreque ncy(k/N)fs/Hzcoefficie nt cos(2pi k/N)kfreque ncy(k/N)fs/Hzcoefficie nt cos(2pi k/N)186970.85162

11、3513930.45886207700.817933915520.34445228520.781154317110.22470249410.741424718710.101413112090.58157612428-0.329743413360.50442672667-0.500003814770.39505742945-0.676064216330.27972823264-0.83740一旦得到行/列频率的频谱平方幅度信息,就可以通过一系列的判决来确定音频及数字 结果的有效性。首先,检测可能DTMF言号的强度是否足够大。行频率分量和列频率分量的平方幅度和应高于某一确定门限THR_SIG注意与

12、DTMF频率相符的正弦波的能量集中在频域内一段很窄的范围当中,所以门限取值应占动态范围的大部分。第二,如果DTMF信号存在,由于构成DTMF信号的行频都低于列频,因此从小到大依次判断各个频率点的频谱幅度,得到的第一个达到门限要求的的频率点即为行频,第二个即为列频,综合行频和列频即可得出检测到的是哪个数据。四、程序设计、调试与结果分析我们设计的总体思路是将 DTMF!号的产生与检测分别建立工程,期望在两个DS板可以实现双机通信。DTMF信号的发送程序:程序流程包含两个任务,即音频任务和静默任务。在一段时间间隔后两个任务需要进行 互换。音频任务的作用是产生双音频采样值,静默任务的作用是产生静默采样

13、值。每个任务被分配一定的持续时间。? 发送源程序 :#include #include #include #include #include HANDLE hHandset;s16 data;s16 buffer400;#define PI 3.1415926float fs=8000;s16 tele_number16=1,2,3,4,5,6,7,8,9,0,A,B,C,D,* ,#;float dtmf_freq162=941,1336, /0697,1209, /1697,1336, /2697,1477, /3770,1209, /4770,1336, /5770,1477, /685

14、2,1209, /7852,1336, /8852,1477, /9697,1633, /a770,1633, /b852,1633, /c941,1633, /d941,1209, /*各键值行频系数和初始条件 各键值列频系数和初始条件941,1477/# ;f32 row_freq162=0; / f32 column_freq162=0;/f32 ax1,ay1;f32 x_n,x_n_1,x_n_2;f32 y_n,y_n_1,y_n_2;f32 z_n;void delay(s16 period);/*DTMF 发送主程序 */void main()s16 cnt=2;f32 f0;

15、s16 num;s16 i=0,n=0;/,i1=0 if(brd_init(100)/initial dsk boardreturn;/*LED flick twice ,board works */while(cnt-)brd_led_toggle(BRD_LED0); delay(1000);brd_led_toggle(BRD_LED1);delay(1000);brd_led_toggle(BRD_LED2);delay(1000);/*open codec,get handle*/ hHandset=codec_open(HANDSET_CODEC);/*setting D/A c

16、overter initial parameter*/ codec_dac_mode(hHandset,CODEC_DAC_15BIT); /D/A works in 15-bit mode codec_aout_gain(hHandset,CODEC_AOUT_MINUS_6dB);/analog output gain is -6dBcodec_sample_rate(hHandset,SR_8000); /D/A slew-rate is 8KHz/*Calculate the value of each line_freq of the frequency coefficient CO

17、S(2*PI*F0/FS)and Initial conditions SIN(2*PI*F0/FS) */for(i=0;i16;i+)f0=dtmf_freqi0;row_freqi0=cos(2*PI*f0/fs);row_freqi1=sin(2*PI*f0/fs);/*Calculate the value of each column_freq of the frequency coefficient COS(2*PI*F0/FS)and Initial conditions SIN(2*PI*F0/FS) */for(i=0;i16;i+)f0=dtmf_freqi1;colum

18、n_freqi0=cos(2*PI*f0/fs); column_freqi1=sin(2*PI*f0/fs);/*Cycle to send key information*/while(1)for(i=0;i16;i+)num=tele_numberi; /get the sending key number/num=1; /debug/*/switch(num)case 0:num=0;break;case 1:num=1;break;case 2:num=2;break;case 3:num=3;break;case 4:num=4;break;case 5:num=5;break;c

19、ase 6:num=6;break;case 7:num=7;break;case 8:num=8;break;case 9:num=9;break;case A:num=10;break;case B:num=11;break;case C:num=12;break;case D:num=13;break;case *:num=14;break;case #:num=15;break;num=2; /debug/delay(300);ax1= row_freqnum0;x_n_2= row_freqnum1; ay1=column_freqnum0; y_n_2=column_freqnum

20、1;x_n_1=0;y_n_1=0;n=0;cnt=400;while(cnt-) x_n=2*ax1*x_n_1-x_n_2; y_n=2*ay1*y_n_1-y_n_2; z_n=x_n+y_n;x_n_2=x_n_1; x_n_1=x_n;y_n_2=y_n_1;y_n_1=y_n;data=16384.0*z_n;while(!MCBSP_XRDY(HANDSET_CODEC);*(volatile u16*)DXR1_ADDR(HANDSET_CODEC)=data; buffern=data;n+;/*/cnt=400;while(cnt-)/*/ while(!MCBSP_XRD

21、Y(HANDSET_CODEC);*(volatile u16*)DXR1_ADDR(HANDSET_CODEC)=0;/brd_led_toggle(BRD_LED0);/delay(500); brd_led_toggle(BRD_LED1);delay(2000);void delay(s16 period)int i,j;for(i=0;iperiod;i+) for(j=0;j1;j+) ;? DTMF 信号的接收程序: #include #include #include #include #include #includeHANDLE hHandset;float buffer1

22、25; float pi=3.1415926; s16 data;int k=0;float w8,a83; float amp8; int i,j,x,y; int dtmf_flag=0;int detect_result256=0;int I=0;void delay(int period);void dtmf_detect(void);/main void main()int cnt=2;w0=2*cos(2*pi*11/125);w1=2*cos(2*pi*12/125);w2=2*cos(2*pi*13/125);w3=2*cos(2*pi*15/125);w4=2*cos(2*p

23、i*19/125);w5=2*cos(2*pi*21/125);w6=2*cos(2*pi*23/125);w7=2*cos(2*pi*26/125);for(i=0;i8;i+)ai0=0;ai1=0;if(brd_init(100)return; while(cnt-) brd_led_toggle(BRD_LED0); delay(1000);brd_led_toggle(BRD_LED1); delay(1000);brd_led_toggle(BRD_LED2); delay(1000);hHandset=codec_open(HANDSET_CODEC);/A/D gain is/

24、*setting A/D coverter initial parameter*/ codec_adc_mode(hHandset,CODEC_ADC_15BIT);works in 15-bit mode codec_ain_gain(hHandset,CODEC_AIN_0dB);/analog input0dBis 8KHzwhile(1)while(!MCBSP_RRDY(HANDSET_CODEC);data=*(volatile u16*)DRR1_ADDR(HANDSET_CODEC);bufferk=data/16384.0;for(i=0;i8;i+)ai2=wi*ai1-a

25、i0+bufferk;ai0=ai1;ai1=ai2; k+;if(k=125)k=0;dtmf_detect();for(i=0;i8;i+)ai0=0;ai1=0;/Goertzelvoid dtmf_detect(void)for(i=0;i8;i+) ampi=ai1*ai1+ai0*ai0-wi*ai1*ai0;/printf(The amplitude %d is %f.rn,i,ampi); /for debugj=0;for(i=0;i1500) j+; if(j=1) x=i; else if(j=2) y=i;i=-1;if(dtmf_flag=0)if(j=2) if(x

26、=0&y=4) i=1;else if(x=0&y=5) i=2;else if(x=0&y=6) i=3;else if(x=1&y=4) i=4;else if(x=1&y=5) i=5;else if(x=1&y=6) i=6;else if(x=2&y=4) i=7;else if(x=2&y=5) i=8;else if(x=2&y=6) i=9;else if(x=3&y=5) i=0;else if(x=3&y=4)1*1.i=*;else if(x=3&y=6) i=#;else if(x=0&y=7) i=A;else if(x=1&y=7)i=B;else if(x=2&y

27、=7) i=C;else if(x=3&y=7) i=D;if(i!=-1) detect_resultI=i; I+;if(I=16) for(I=0;I16;I+) printf(The DTMF signal is %c.rn,detect_resultI); dtmf_flag+;else if(j=0) dtmf_flag=0;void delay(s16 period)int i,j;for(i=0;iperiod;i+) for(j=0;j1;j+) ;? cmd 5402 程序(接口文件)/ II II II II II II II II II II II II II II I

28、I II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II IIff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff# $Id: $#ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff

29、ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff# Copyright (c) 1999 DNA Enterprises, Inc.II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II

30、 II II II II II II II II II II II II II II II II II IIff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff# Revision History# # $Log: $#II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II I

31、I II II II II II IIII II II II II II II II II II II II II II II II II IIII II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II IIff ff ff ff ff ff ff ff ff ff ff ff ff ff ff f

32、f ff ff# XFERMAKE.CMD# # C54x Linker Command File for 5402 DSK Memory Transfer Module#II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II士 /ff ff ff ff ff ff ff ff ff ff

33、 ff ff ff ff ff ff /*/* Object Files */*/*/LinkerOptions*/*/*/*C5402DSKDSPMemoryMapMEMORYPAGE 0: VECS: origin = 0080h, length = 0080h /* Internal Program RAM */PRAM: origin= 7600h, length = 8000h /* InternalProgram RAM */PAGE 1: SCRATCH: origin = 0060h, length = 0020h /* Scratch Pad Data RAM */DMARA

34、M: origin = 0C00h, length = 0300h /* DMA buffer */DATA:origin= 1100h, length= 0080h /*InternalData RAM */STACK:origin =1180h, length = 0560h /* StackMemory Space */INRAM:origin= 1900h, length= 0100h/*InternalData RAM */HPRAM0: origin = 1A00h, length = 0002h /* HPI memory accessible by Host and DSP *

35、/HPRAM1: origin = 1A02h, length = 0280h /* HPI memory accessible by Host and DSP */HPRAM2: origin = 1C82h, length = 0280h /* HPI memory accessible by Host and DSP */EXRAM: origin = 1F10h, length = 4000h /* External Data RAM */*DSPMemoryAllocation*/SECTIONS.cinit PRAM PAGE 0 .text PRAM PAGE 0 .vector

36、s VECS PAGE 0init_var PRAM PAGE 0detect PRAM PAGE 0vrcprg PRAM PAGE 0matprg PRAM PAGE 0.stack STACK PAGE 1.trap SCRATCH PAGE 1.const EXRAM PAGE 1.data EXRAM PAGE 1.bss EXRAM PAGE 1.cio EXRAM PAGE 1.switch EXRAM PAGE 1tables EXRAM PAGE 1var EXRAM PAGE 1 svctab EXRAM PAGE 1 vctab EXRAM PAGE 1 uvctab E

37、XRAM PAGE 1 cuvtab EXRAM PAGE 1 cdbktab EXRAMPAGE1logtab EXRAM PAGE 1 powtab EXRAM PAGE 1 hamtab EXRAM PAGE 1 lgwtab EXRAM PAGE 1 acostab EXRAM PAGE 1 sqrtab EXRAMPAGE1 acbtab EXRAM PAGE 1 acb */pm03tab EXRAM PAGE 1 computation */costab EXRAM PAGE 1V23 INRAM PAGE 1FSK INRAM PAGE 1hpibuff0 HPRAM0 PAG

38、E 1hpibuff1 HPRAM1 PAGE 1hpibuff2 HPRAM2 PAGE 1 dma_buff DMARAM PAGE 1 CCS5000上机调试过程及结果1 软件调试1、编译过程、工程架构、编译环境设置(1) 创建新的工程/* SS_V LSP table */* V LSP table */* UV LSP table */* Stochastic codebook */* various codebook tables*/* table for log2 */* table for pow2 */* table for hamming */* table for lag

39、 window */* table for arccos */* table for square root */ /* table for thresholds in/* table for xA(-0.3)/* table for cosine */(2)向工程中添加文件从 Project/Add Files to Project ,分别选择 send.c ,5402.cmd (这个文件 将片段映射到存储器中),rts.lib (这个库提供目标 DSP运行时间支持(runtime-support) ) 等文件,右击 send.pjt, 选择 Scan All Dependencies.Df

40、LtH. TdAli ETrlMg ”胡恤 輕“卓HR fl* 弊町讪怕机灯F X rRniia鬥門I 叵i d1】佔4-应僭加皿ffiaaimmnl卓鸟也富燕 dluzm “affl -JJ -dd Filei te PimjtrtC i-UL Ec 4l.L3.ELIspwt 怙jviacludie ctdid .h* #ieicluds #ieielude jvimI iiriosrd .h :eodac.h:mub=p54.h Emd-?a|yil41 iiljJ|rlS -AZ/S/C941,1633- Z/D勺412的941J477|anj makmjf 1 Dot. pi = 3

41、. 14153 6 X亦打 Hnoinil i 4MH IrlSdB,ii p*Djv I: j et dpV3iUL wla if Cil i | M.rU.h文件将出现在Project View囱中的Libraries 文件夹。头文件不能手动添加, 自动到:当前目录(源文件所在)或预编译器的“in elude Search Path(-i) ” option 所指定的位置。显示头文件:Project show Dependencies. 最终编译环境如下图所示h g iiT;si Uinrw sj 血、口询生 b * i 0CateEory ibasi :Feedback File-;Av

42、Eriii-l yH lta tTrprjicesorIiirl-iii-a war zli TLia.th h -1JhX Lit# js jnboLh itd J *UbJ vfh tia 窃皆口1(ii)Ji 比 xJJMJbx|po*匚 GEL fils 七m rrf O J C HSF/BIOS Coni E Gexieh 耳 Lvd F i 1b Tlnel Lldc=| b 0 as - d. K| a 0 d54kxh瓷 e、hbar ar工总空54x d sr. li btitvS4O2. libI a5402. lib1 r t s.IibI L Jl S e*h怕 SST

43、ld. C I園 C4Q. vi沁(3) 编译与运行程序选择Project / Rebuild All 或单击(Rebuild All )菜单条按钮,CC重新进 行编辑、汇编、连接工程里的所有文件。file ditVl wfDebug rrofiler ML Or tion TogIs D*F/3ICS W j ndbwI Kit*. F j t阳討 fl fraj eCtbQd Filts to Pi-pj ec t叫?GELFroject; s.eud LJftFi IKbuld . 3Build CleuJLCorifijWftt Loris .Build Uftioiii.yxlft

44、Specikic Options.-.Use Eitannal IWakefile.Ixjort to HaefLle,Soiree ControlPAmpi1 a ilaBuild-d-5巴讣.h 阪1n-Pr dj a c f Dap aridlana eSt02 Prcjact D空pomdEn专SJew 7i Doporiiorici q = 詈叱 All FlIc Dapcndaiici-JIMRvuvIlL TlFileS4Q2.訓&iy(1 nt peri ad);=ivat0 (1 nt num); isndset;buffei256;fer25bl;:=IO r&ql&J 7

45、 = j 541,1336 J697,12091 e97,133G- 697,1477 770,109, 7?0,133Gr 770.1477 J 1丿旧.|c:M.3c:54O(TNctmlsM?iuy 5DO *gr -q -frfC:/Xi/InyprojoctE/leviclD&bug1 *i CsIOZlkIviLv -4_DEi c sM;i54DD xsgtwlB biolEOQ哂叫哙地外滋厂Build Comp1etc+Q Errors, 0 WariLifigrs P 0 ReEairks Uli K知0f.XD941,1209,941.1477r : float pi-3,

46、L415926;vg i d me inf)int ent-Z;if(brd_init(1Q0)T-elzii Tn :hl ink the lecls o. couple t im&s 通 观*蔡LED扌呂灯的 while ( cilt)brd_led_tccfg 1& (E口D_LED0 ): /bird_dfc!laiy_ittsec ( 1000J ;delay( l.tinaj :brd_J.&d_togg its (ER_D_LED 1);XZbrd_d5lay_insec ( 1000);dHiay (i.nno);brd_lsd_tcntji(ERD_LED2 J : Zbrd_dcl*y_mcec (100口);2实验图像调试 观察信号时域图观察信号频域图Q Graph Property DialngIV运行结果1发送时域图tLLe W Hlr EKct fetug: P*flLee SIL iSon I1biLndw MrllP7CIHO2 Liil/CIli-l CMK 恂鉅 dk* JWfp由 M w r-| - Oh W?IdtlFpH ll诞bU| ll 亡 KI*P #r 0 Q整日回11p-mRreJtclE-蟲 firr. Jtl nxd渺 1.13 口用cEiiLld(P Ezru

温馨提示

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

评论

0/150

提交评论