2023年全國(guó)碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩40頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  MATLAB課程設(shè)計(jì)報(bào)告</p><p>  基于MATLAB GUI的“濾波器設(shè)計(jì)軟件”設(shè)計(jì) </p><p><b>  摘 要</b></p><p>  面對(duì)龐雜繁多的原始信號(hào), 如何提取所需信號(hào)、抑制不需要的信號(hào)這就需要使用濾波器。濾波器的作用主要是選擇所需頻帶的信號(hào)內(nèi)容而抑制不需要的其他頻帶的信號(hào)內(nèi)容。數(shù)字濾

2、波器因其精度高、可靠性好、靈活性大等優(yōu)點(diǎn), 在語音信號(hào)處理、信號(hào)頻譜估計(jì)、信號(hào)去噪、無線通信中的數(shù)字變頻以及圖像處理等工程實(shí)際應(yīng)用中都很廣泛。根據(jù)其沖擊響應(yīng)函數(shù)的時(shí)域特性可將數(shù)字濾波器分為IIR(有限長(zhǎng)沖擊響應(yīng))和FIR(無限長(zhǎng)沖擊響應(yīng))。作為強(qiáng)大的計(jì)算軟件, MATLAB提供了編寫圖形用戶界面的功能。所謂圖形用戶界面, 簡(jiǎn)稱為GUI, 是由各種圖形對(duì)象, 如圖形窗口菜單按鈕、文本框等構(gòu)建的用戶界面。</p><p&

3、gt;  MATALB 可以創(chuàng)建圖形用戶界面GUI ( GraphicalUser Interface) ,它是用戶和計(jì)算機(jī)之間交流的工具。MATLAB 將所有GUl 支持的用戶控件都集成在這個(gè)環(huán)境中并提供界面外觀、屬性和行為響應(yīng)方式的設(shè)置方法,隨著版本的提高,這種能力還會(huì)不斷加強(qiáng)。而且具有強(qiáng)大的繪圖功能,可以輕松的獲得更高質(zhì)量的曲線圖。</p><p>  關(guān)鍵詞:MATLAB GUI IIR濾波器 FI

4、R濾波器</p><p><b>  目 錄</b></p><p><b>  1設(shè)計(jì)任務(wù)1</b></p><p>  2 MATLAB GUI的簡(jiǎn)介2</p><p>  3 濾波器設(shè)計(jì)原理3</p><p>  3.1濾波器概述3</p>&l

5、t;p>  3.2 IIR數(shù)字濾波器4</p><p>  3.2.1 IIR數(shù)字濾波器設(shè)計(jì)原理4</p><p>  3.2.2 IIR濾波器設(shè)計(jì)思想5</p><p>  3.2.3 IIR濾波器設(shè)計(jì)編程實(shí)現(xiàn)6</p><p>  3.3 FIR數(shù)字濾波器8</p><p>  3.3.1

6、FIR數(shù)字濾波器設(shè)計(jì)原理8</p><p>  3.3.2 FIR濾波器設(shè)計(jì)思想9</p><p>  4 基于Matlab GUI的數(shù)字濾波器設(shè)計(jì)思路及實(shí)現(xiàn)12</p><p>  4. 1 GUI界面設(shè)計(jì)概述12</p><p>  4.2 “濾波器設(shè)計(jì)軟件”設(shè)計(jì)所實(shí)現(xiàn)任務(wù)14</p><p>  

7、4.3 基于Matlab GUI的數(shù)字濾波器設(shè)計(jì)實(shí)現(xiàn)16</p><p>  4.3.1 “濾波器設(shè)計(jì)軟件”GUI界面設(shè)計(jì)16</p><p>  4.3.2 “濾波器設(shè)計(jì)軟件”回調(diào)函數(shù)編寫17</p><p>  4.3.3AutoChoose.m程序的編寫22</p><p>  4.4 運(yùn)行和結(jié)果顯示28</p>

8、<p>  5 設(shè)計(jì)總結(jié)和心得33</p><p>  5.1 設(shè)計(jì)總結(jié)33</p><p>  5.2 設(shè)計(jì)心得34</p><p>  Abstract35</p><p><b>  參考文獻(xiàn)36</b></p><p><b>  附錄</b>

9、</p><p><b>  1設(shè)計(jì)任務(wù)</b></p><p><b>  1 設(shè)計(jì)目的</b></p><p>  1.鞏固所學(xué)習(xí)過的關(guān)于數(shù)字信號(hào)處理的濾波器的設(shè)計(jì)</p><p>  2.學(xué)習(xí)使用MATLAB GUI設(shè)計(jì)工具應(yīng)用平面</p><p><b> 

10、 2 設(shè)計(jì)要求</b></p><p>  要求:“濾波器設(shè)計(jì)軟件”設(shè)計(jì)</p><p>  1、要有人機(jī)交互界面。</p><p>  2、濾波器設(shè)計(jì)的類型、參數(shù)均有多個(gè)值可供選擇。</p><p>  3、當(dāng)用戶選擇(或輸入)濾波器的參數(shù)時(shí),能夠及時(shí)顯示設(shè)計(jì)好的濾波器的頻譜。</p><p>  4、該

11、軟件可設(shè)計(jì)FIR或IIR型濾波器至少一種。</p><p>  2 MATLAB GUI的簡(jiǎn)介</p><p>  MATLAB 是美國(guó)MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計(jì)算的高級(jí)技術(shù)計(jì)算語言和交互式環(huán)境,主要包括MATLAB和Simulink兩大部分。</p><p>  MATLAB是矩陣實(shí)驗(yàn)室(Matrix

12、Laboratory)的簡(jiǎn)稱,和Mathematica、Maple并稱為三大數(shù)學(xué)軟件。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計(jì)算方面首屈一指。MATLAB可以進(jìn)行矩陣運(yùn)算、繪制函數(shù)和數(shù)據(jù)、實(shí)現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語言的程序等,主要應(yīng)用于工程計(jì)算、控制設(shè)計(jì)、信號(hào)處理與通訊、圖像處理、信號(hào)檢測(cè)、金融建模設(shè)計(jì)與分析等領(lǐng)域。</p><p>  MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式

13、十分相似,故用MATLAB來解算問題要比用C,F(xiàn)ORTRAN等語言完相同的事情簡(jiǎn)捷得多,并且mathwork也吸收了像Maple等軟件的優(yōu)點(diǎn),使MATLAB成為一個(gè)強(qiáng)大的數(shù)學(xué)軟件。在新的版本中也加入了對(duì)C,F(xiàn)ORTRAN,C++ ,JAVA的支持??梢灾苯诱{(diào)用,用戶也可以將自己編寫的實(shí)用程序?qū)氲組ATLAB函數(shù)庫中方便自己以后調(diào)用。</p><p>  MATALB 可以創(chuàng)建圖形用戶界面GUI ( Graphi

14、calUser Interface) ,它是用戶和計(jì)算機(jī)之間交流的工具。MATLAB 將所有GUl 支持的用戶控件都集成在這個(gè)</p><p>  環(huán)境中并提供界面外觀、屬性和行為響應(yīng)方式的設(shè)置方法,隨著版本的提高,這種能力還會(huì)不斷加強(qiáng)。而且具有強(qiáng)大的繪圖功能,可以輕松的獲得更高質(zhì)量的曲線圖。</p><p><b>  3 濾波器設(shè)計(jì)原理</b></p>

15、<p><b>  3.1濾波器概述</b></p><p>  隨著信息時(shí)代和數(shù)字世界的到來,數(shù)字信號(hào)處理已成為當(dāng)今一門極其重要的學(xué)科和技術(shù)領(lǐng)域。數(shù)字信號(hào)處理在通信、語音、圖像,自動(dòng)控制、雷達(dá)、軍事、航空航天、醫(yī)療和家用電器等眾多領(lǐng)域得到了廣泛的應(yīng)用。在數(shù)字信號(hào)處理中,數(shù)字濾波器占有極其重要的地位?,F(xiàn)代數(shù)字濾波器可以用軟件或設(shè)計(jì)專用的數(shù)字處理硬件兩種方式來實(shí)現(xiàn),用軟件來實(shí)現(xiàn)數(shù)

16、字濾波器優(yōu)點(diǎn)是隨著濾波器參數(shù)的改變,很容易改變?yōu)V波器的性能。根據(jù)數(shù)字濾波器單脈沖響應(yīng)的時(shí)域特性可將數(shù)字濾波器分為兩種, 即IIR (Infinite Impulse Response)無限長(zhǎng)脈沖響應(yīng)數(shù)字濾波器和FIR (Finite Impulse Response)有限長(zhǎng)脈沖響應(yīng)數(shù)字濾波器。從功能上分類, 可分為低通、高通、帶通、帶阻濾波器。</p><p>  3.2 IIR數(shù)字濾波器</p>

17、<p>  3.2.1 IIR數(shù)字濾波器設(shè)計(jì)原理</p><p>  濾波器的設(shè)計(jì)質(zhì)上是尋找一個(gè)既能物理實(shí)現(xiàn),又能滿足給定頻率特性指標(biāo)要求的系統(tǒng)傳輸函數(shù)。IIR濾波器一般采用遞歸型的結(jié)構(gòu),系統(tǒng)的輸入與輸出服從N階差分方程:</p><p><b>  相應(yīng)的傳輸函數(shù)為:</b></p><p>  設(shè)計(jì)IIR數(shù)字濾波器就是要確定傳輸

18、函數(shù)中的系數(shù)、或零極點(diǎn)增益、、A,使濾波器的頻率特性滿足給定的性能指標(biāo)要求。設(shè)計(jì)原理主要包括兩個(gè)方面:一是根據(jù)設(shè)計(jì)指標(biāo),先設(shè)計(jì)出相應(yīng)的模擬濾波器再通過脈沖響應(yīng)不變法或雙線性變換法轉(zhuǎn)換成對(duì)應(yīng)的數(shù)字濾波器;二是選擇一種優(yōu)準(zhǔn)則,如最小均方準(zhǔn)則,再在</p><p>  , 先最誤差此準(zhǔn)則下求出濾波器傳輸函數(shù)的系數(shù)。根據(jù)設(shè)計(jì)理論,在MATLAB環(huán)境下設(shè)計(jì)IIR數(shù)字濾波器主要有四種方法:一是典型設(shè)計(jì)法;二是完全設(shè)計(jì)法;三是

19、最優(yōu)設(shè)計(jì)法;四是工具設(shè)計(jì)法。由于完全設(shè)計(jì)法程序簡(jiǎn)單,我們?cè)谶@里利用完全設(shè)計(jì)法設(shè)計(jì)濾波器。</p><p>  3.2.2 IIR濾波器設(shè)計(jì)思想</p><p>  IIR濾波器設(shè)計(jì)思想是:利用已有的模擬濾波器設(shè)計(jì)理論,首先根據(jù)設(shè)計(jì)指標(biāo)設(shè)計(jì)一個(gè)合適的模擬濾波器,然后再通過脈沖響應(yīng)不變法或雙線性變換法,完成從模擬到數(shù)字的變換。常用的模擬濾波器有巴特沃斯(Butterworth)濾波器、切比雪

20、夫(Chebyshev) 濾波器、橢圓(Ellipse)濾波器、貝塞爾(Bessel)濾波器等,這些濾波器各有特點(diǎn),供不同設(shè)計(jì)要求選用。濾波器的模擬數(shù)字變換,通常是復(fù)變函數(shù)的映射變換,也必須滿足一定的要求</p><p>  由于數(shù)字濾波器傳輸函數(shù)只與頻域的相對(duì)值有關(guān),故在設(shè)計(jì)時(shí)可先將濾波器設(shè)計(jì)指標(biāo)進(jìn)行歸一化處理,設(shè)采樣頻率為Fs,歸一化頻率的計(jì)算公式是: </p><p>  利用完全設(shè)

21、計(jì)法設(shè)計(jì)數(shù)字濾波器的步驟:</p><p> ?。?)將設(shè)計(jì)指標(biāo)歸一化處理。</p><p> ?。?)根據(jù)歸一化頻率,確定最小階數(shù)N 和頻率參數(shù)Wn??晒┻x用的階數(shù)選擇函數(shù)有:buttord,cheblord,cheb2ord,ellipord 等。</p><p> ?。?)運(yùn)用最小階數(shù)N 設(shè)計(jì)模擬低通濾波器原型。根據(jù)最小階數(shù)直接設(shè)計(jì)模擬低通濾波器原型,用到的函

22、數(shù)有:butter, chebyl,cheby2, ellip 和bessel。如[B,A] = butter(N,Wn,'type') 設(shè)計(jì)'type'型巴特沃斯(Butterworth)濾波器filter。N為濾波器階數(shù),Wc為截止頻率, type決定濾波器類型, type= high,設(shè)計(jì)高通IIR濾波器,ftype= stop,設(shè)計(jì)帶阻IIR濾波器。</p><p>  (

23、4)再用freqz 函數(shù)驗(yàn)證設(shè)計(jì)結(jié)果。</p><p>  3.2.3 IIR濾波器設(shè)計(jì)編程實(shí)現(xiàn)</p><p>  例如選擇設(shè)計(jì)IIR的Butterworth低通濾波器,其Fs=22050Hz,F(xiàn)p1=3400Hz,</p><p>  Fs1=5000Hz,Rp=2dB,Rs=20dB </p><p>  程序和效果圖(圖2)如下:&

24、lt;/p><p>  Fs=22050;Fp1=3400;Fs1=5000;Rp=3;Rs=20;%設(shè)計(jì)指標(biāo)</p><p>  wp1=2*Fp1 /Fs;ws1=2*Fs1 /Fs;%求歸一化頻率</p><p>  % 確定butterworth 的最小階數(shù)N 和頻率參數(shù)Wn</p><p>  [n,Wn]=buttord(wp1,ws

25、1,Rp,Rs);</p><p>  [B,A] = butter(N,Wn);%確定傳遞函數(shù)的分子、分母系數(shù)</p><p>  [h,f]=freqz(b,a,Nn,Fs_value);%生成頻率響應(yīng)參數(shù)</p><p>  plot(f,20*log(abs(h))) %畫幅頻響應(yīng)圖</p><p>  plot(f,angle(h)

26、); %畫相頻響應(yīng)圖</p><p>  %[N, Wn] = buttord(Wp, Ws, Rp, Rs) 確定butterworth 的N 和Wn</p><p>  %[N, Wn] = cheblord ( (Wp, Ws, Rp, Rs) 確定Chebyshev濾波器的N 和Wn</p><p>  %[N, Wn] = cheb2ord (Wp, Ws

27、, Rp, Rs) 確定Chebyshev2濾波器的N 和Wn</p><p>  %[N, Wn] = ellipord (Wp, Ws, Rp, Rs) 確定橢圓(Ellipse) 濾波器 的N 和Wn</p><p>  %[B,A] = butter(N,Wn,'type') 設(shè)計(jì)'type'型巴特沃斯(Butterworth)濾波器filter.&

28、lt;/p><p>  %[B,A] = cheby1 (N,R,Wn, 'type') 設(shè)計(jì)'type'型切比雪夫Ⅰ濾波器filter.</p><p>  %[B,A] = cheby2(N,R,Wn, 'type') 設(shè)計(jì)'type'型切比雪夫Ⅱ?yàn)V波器filter.</p><p>  %[B,A]

29、= ellip(N,Rp,Rs,Wn, 'type') 設(shè)計(jì)'type' 型橢圓filter.</p><p>  圖 2 Butterworth低通濾波器</p><p>  3.3 FIR數(shù)字濾波器</p><p>  3.3.1 FIR數(shù)字濾波器設(shè)計(jì)原理</p><p>  根據(jù)數(shù)字濾波器沖激響應(yīng)的時(shí)

30、域特征,可將數(shù)字濾波器分為2種,即無限長(zhǎng)沖激響應(yīng)濾波器( IIR DF)和有限長(zhǎng)沖激響應(yīng)濾波器( F IR DF) 。F IR DF具有突出的優(yōu)點(diǎn):系統(tǒng)總是穩(wěn)定的、易于實(shí)現(xiàn)線性相位、允許設(shè)計(jì)多通帶(或多阻帶)濾波器。因此F IR DF在數(shù)字信號(hào)處理中得到廣泛的應(yīng)用。但與IIR DF相比,在滿足同樣的阻帶衰減的情況下需要較高的階數(shù)。濾波器階數(shù)越高將占用更多的DSP運(yùn)算時(shí)間。因此,對(duì)F IR DF的設(shè)計(jì)目標(biāo)是在滿足指標(biāo)要求的情況下盡量減少濾

31、波器的階數(shù)。數(shù)字濾波器可以理解為是一個(gè)計(jì)算程序或算法,將代表輸入信號(hào)的數(shù)字時(shí)間序列轉(zhuǎn)化為代表輸出信號(hào)的數(shù)字時(shí)間序列,并在轉(zhuǎn)化過程中,使信號(hào)按預(yù)定的形式變化。FIR DF的沖激響應(yīng)h ( k)是有限長(zhǎng)的M 階F IR DF系統(tǒng)函數(shù)可表示為</p><p><b>  濾波器的輸出</b></p><p>  它的設(shè)計(jì)問題實(shí)質(zhì)上是確定能滿足所要求的轉(zhuǎn)移序列或脈沖響應(yīng)的常數(shù)

32、問題,設(shè)計(jì)方法主要有窗函數(shù)法、頻率采樣法和等波紋最佳逼近法等。若要逼近的理想濾波器的頻率響應(yīng)為常用的有巴特沃思濾波器、切比雪夫型濾波器、橢圓濾波器和巴塞爾濾波器。</p><p>  3.3.2 FIR濾波器設(shè)計(jì)思想</p><p>  在這里我們利用窗函數(shù)法設(shè)計(jì)FIR濾波器。窗函數(shù)法的基本想法是選取某一種合適的理想頻率選擇性濾波器(這種濾波器總是有一個(gè)非因果,無限長(zhǎng)的脈沖響應(yīng)),然后將

33、它的脈沖響應(yīng)截?cái)?或加窗)以得到一個(gè)線形相位和因果的FIR濾波器。因此,這種方法的重點(diǎn)在于選擇某種恰當(dāng)?shù)拇昂瘮?shù)和一種合適的理想濾波器。</p><p>  窗函數(shù)法又稱傅立葉級(jí)數(shù)法, 一般是先給定所要求的濾波器的頻率響應(yīng)Hd ( ejw) , 要求設(shè)計(jì)一個(gè)FIR 濾波器的頻率響應(yīng)H( ejw) 來逼近Hd( ejw) .設(shè)計(jì)是在時(shí)域進(jìn)行的, 首先由傅立葉變換導(dǎo)出hd( n) , 因此hd( n) 一定是無限長(zhǎng)的序

34、列, 而h( n) 是有限長(zhǎng)的, 即要用有限長(zhǎng)的h( n) 來逼近無限長(zhǎng)的hd( n) , 最有效的方法是截?cái)鄅d ( n) , 或者說用一個(gè)有限長(zhǎng)的窗口函數(shù)w( n) 來截取hd( n) , 即: h( n) = hd( n) w( n) , 因而窗函數(shù)的形狀及長(zhǎng)度的選擇就很關(guān)鍵了. 在MATLAB 中常用的窗函數(shù)有矩形窗, Hanning 窗, Hamming 窗, Blackman 窗,Kaiser 窗等, 這些窗函數(shù)各有優(yōu)缺點(diǎn),

35、 各有利弊, 默認(rèn)值是Hamming 窗。</p><p>  利用完全設(shè)計(jì)法設(shè)計(jì)數(shù)字濾波器的步驟:</p><p> ?。?)將設(shè)計(jì)指標(biāo)歸一化處理。</p><p> ?。?)根據(jù)歸一化頻率,選擇函數(shù)buttord確定最小階數(shù)N 和頻率參數(shù)Wn。</p><p> ?。?) 確定窗口值。Windows指定窗函數(shù)類型,默認(rèn)為Hamming窗;

36、可選Hanning、Hamming、Blackman、triangle、bartlett等窗,每種窗都可以由Matlab的相應(yīng)函數(shù)生成。</p><p>  (4)確定傳遞函數(shù)的分母系數(shù)。函數(shù)fir1的調(diào)用格式為B= fir1(n, Wn, 'ftype', Windows),同時(shí)選擇在此函數(shù)中選擇要設(shè)計(jì)的濾波器的類型。其中,n為濾波器階數(shù),Wc為截止頻率ftype決定濾波器類型,ftype= h

37、igh,設(shè)計(jì)高通FIR濾波器,ftype= stop,設(shè)計(jì)帶阻FIR濾波器。</p><p> ?。?)再用freqz 函數(shù)驗(yàn)證設(shè)計(jì)結(jié)果。</p><p>  3.3.3 FIR濾波器設(shè)計(jì)編程實(shí)現(xiàn)</p><p>  例如選擇設(shè)計(jì)FIR的Blackman窗的低通濾波器,其Fs=22050Hz,F(xiàn)p1=3400Hz,F(xiàn)s1=5000Hz,Rp=2dB,Rs=20dB

38、 </p><p>  程序和效果圖(圖 3)如下:</p><p>  Fs=22050;Fp1=3400;Fs1=5000;Rp=3;Rs=20;n=75;%設(shè)計(jì)指標(biāo)</p><p>  wp1=2*Fp1 /Fs;ws1=2*Fs1 /Fs;%求歸一化頻率</p><p>  % 確定的最小階數(shù)N 和頻率參數(shù)Wn</p>

39、<p>  [n,Wn]=buttord(wp1,ws1,Rp,Rs);</p><p>  [b,a] = butter(N,Wn);%確定傳遞函數(shù)的分子、分母系數(shù)</p><p>  w=blackman(n+1); %確定窗口值</p><p>  % w=boxcar(n+1);</p><p>  % w=bartlett

40、(n+1);</p><p>  % w=triang(n+1);</p><p>  % w=hanning(n+1);</p><p>  % w=hamming(n+1);</p><p>  b=fir1(n,wn,w);% 確定傳遞函數(shù)的分母系數(shù)</p><p>  [h,f]=freqz(b,1); %生成

41、頻率響應(yīng)參數(shù)</p><p>  plot(f,20*log(abs(h))) %畫幅頻響應(yīng)圖</p><p>  plot(f,angle(h)); %畫相頻響應(yīng)圖</p><p>  圖 3 Blackman窗低通濾波器</p><p>  4 基于Matlab GUI的數(shù)字濾波器設(shè)計(jì)思路及實(shí)現(xiàn)</p><p>

42、  4. 1 GUI界面設(shè)計(jì)概述</p><p>  GUI設(shè)計(jì)面板是GUI設(shè)計(jì)工具應(yīng)用的平面,面板上部提供了菜單和常用工具按鈕,左邊提供了多種如命令按鈕、單選按鈕、可編輯文本框、靜態(tài)文本框、彈出式菜單等。進(jìn)行設(shè)計(jì)時(shí), 首先單擊面板左邊所需的控件, 然后在右邊的圖形界面編輯區(qū)中再次單擊某一恰當(dāng)位置, 這時(shí)將在該位上為圖形界面添加相應(yīng)的控件。一個(gè)圖形界面的完成, 除了設(shè)計(jì)其外觀外, 還有相當(dāng)?shù)囊徊糠质峭ㄟ^屬性的設(shè)

43、來完成的。因此在設(shè)置這些屬性時(shí), 要注意下面幾個(gè)常用又很重要的屬性設(shè)置:</p><p>  1、控件風(fēng)格和外觀        (1)BackgroundColor:設(shè)置控件背景顏色,使用[R G B]或顏色定義。        (2)CData:在控件上顯示的真彩色圖像,使用矩陣表示。&

44、#160;       (3)ForegroundColor:文本顏色。        (4)String屬性:控件上的文本,以及列表框和彈出菜單的選項(xiàng)。        (5)Visible:控件是否可見。</p><p>  2、對(duì)象的常規(guī)

45、信息        (1)Enable屬性: 表示此控件的使能狀態(tài),設(shè)置為on”,表示可選,為“off”時(shí)則表示不可選。        (2)Style:控件對(duì)象類型。        (3)Tag:控件表示(用戶定義)。  

46、0;     (4)TooltipString屬性:提示信息顯示。當(dāng)鼠標(biāo)指針位于此控件上時(shí),顯示提示信息。        (5)UserData:用戶指定數(shù)據(jù)。        (6)Position:控件對(duì)象的尺寸和位置。      

47、  (7)Units:設(shè)置控件的位置及大小的單位        (8)有關(guān)字體的屬性,如 FontAngle, FontName等。</p><p>  3、控件回調(diào)函數(shù)的執(zhí)行        (1)BusyAction:處理回調(diào)函數(shù)的中斷。有兩種選項(xiàng):即Cancel:取消中斷事件,

48、queue:排隊(duì)(默認(rèn)設(shè)置)。        (2)ButtonDownFcn屬性:按鈕按下時(shí)的處理函數(shù)。        (3)CallBack屬性:是連接程序界面整個(gè)程序系統(tǒng)的實(shí)質(zhì)性功能的紐帶。該屬性值應(yīng)該為一個(gè)可以直接求值的字符串,在該對(duì)象被選中和改變時(shí),系統(tǒng)將自動(dòng)地對(duì)字符串進(jìn)行求值。  

49、      (4)CreateFcn:在對(duì)象產(chǎn)生過程中執(zhí)行的回調(diào)函數(shù)。        (5)DeleteFcn:刪除對(duì)象過程中執(zhí)行的回調(diào)函數(shù)。        (6)Interruptible屬性:指定當(dāng)前的回調(diào)函數(shù)在執(zhí)行時(shí)是否允許中斷,去執(zhí)行其他的函數(shù)。 

50、0;      4、控件當(dāng)前狀態(tài)信息        (1)ListboxTop:在列表框中顯示的最頂層的字符串的索引。        (2)Max:最大值。        (3)Min:最小值。 

51、60;      (4)Value:控件的當(dāng)前值。</p><p>  應(yīng)用MATLAB制作這樣一個(gè)過程是非常方便的, 我們可以通過GUI操作來看到。該環(huán)境下要設(shè)計(jì)一個(gè)界面友好的仿真軟件,一般應(yīng)完成以下兩個(gè)步驟:</p><p> ?。?)GUI界面設(shè)計(jì)。主要是通過不同的文本框、按鈕等許多工具的使用,設(shè)計(jì)出一個(gè)圖形用戶界面。要清楚這個(gè)圖形界面的功能是

52、什么,即在圖形界面上的操作會(huì)引發(fā)什么樣的結(jié)果。</p><p> ?。?)回調(diào)函數(shù)的設(shè)計(jì)。用戶應(yīng)根據(jù)設(shè)計(jì)好的圖形界面的功能,針對(duì)各個(gè)不同的圖形對(duì)象來編寫出能夠?qū)崿F(xiàn)該功能的函數(shù)代碼,確保這個(gè)圖形界面能夠完成所預(yù)定的功能。</p><p>  4.2 “濾波器設(shè)計(jì)軟件”設(shè)計(jì)所實(shí)現(xiàn)任務(wù)</p><p>  “濾波器設(shè)計(jì)軟件”設(shè)計(jì)所實(shí)現(xiàn)任務(wù)如下:</p>&l

53、t;p>  1、能夠?qū)崿F(xiàn)人機(jī)交互</p><p>  2、在下拉Digital Filter菜單里選擇IIR和FIR濾波器設(shè)計(jì)</p><p>  3、當(dāng)選擇IIR濾波器時(shí),能夠選擇巴特沃斯(Butterworth)、切比雪夫Ⅰ(ChebyshevⅠ)濾波器、切比雪夫Ⅱ(ChebyshevⅡ)濾波器、橢圓(Ellipse)濾波器</p><p>  4、當(dāng)選擇

54、FIR濾波器是,能夠選擇Boxar、Bartlett、Blackman、Hanning、Hamming、Kaiser窗口設(shè)計(jì)濾波器</p><p>  5、在下拉菜單Filter Type中選擇濾波器類型,能夠選擇Lowpass、Highpass、Bandpass、Bandstop四種類型</p><p>  6、在下拉菜單Display Type中選擇圖形顯示類型,能夠選擇Linear、

55、Logarithmic兩種類型</p><p>  7、在設(shè)計(jì)濾波器階數(shù)時(shí),可選擇自定義階數(shù)和利用最小階數(shù)設(shè)計(jì)濾波器,并顯示最小階數(shù) </p><p>  8、在參數(shù)輸入中,可輸入抽樣頻率Fs、濾波器通帶臨界頻率(Fp1、Fp2)、濾波器阻帶臨界頻率(Fst1、Fst2)、通帶內(nèi)的最大衰減Rp、通帶內(nèi)的最小衰減Rs</p><p>  9、設(shè)計(jì)的濾波器的幅頻響應(yīng)和幅

56、頻響應(yīng)顯示在界面中</p><p>  MATLAB中的屬性控制非常多, 要設(shè)置哪些對(duì)象的屬性, 哪些可以不設(shè)置, 都需針對(duì)具體問題具體分析解決。接下來再通過控件布置編輯器來設(shè)置控件的對(duì)齊方式及間距等, 以完善界面功能。按要求設(shè)計(jì)好的“濾波器設(shè)計(jì)軟件”主面板見圖4, 共包括5個(gè)區(qū)域:</p><p> ?。?)圖形區(qū):用于顯示各模塊的仿真曲線</p><p> ?。?/p>

57、2)參數(shù)設(shè)區(qū):由個(gè)靜態(tài)文本框和個(gè)編輯框以及類型選擇按紐組成, 實(shí)時(shí)的進(jìn)行系統(tǒng)參數(shù)的設(shè)定和濾波器原型的選定</p><p> ?。?)對(duì)象模型區(qū):由下拉菜單選定數(shù)字濾波器類型, 當(dāng)用戶的輸人參數(shù)發(fā)生變化時(shí), 可通過單擊響應(yīng)的“ Run”按鈕, 實(shí)現(xiàn)設(shè)計(jì)結(jié)果的實(shí)時(shí)刷新與顯示</p><p> ?。?)數(shù)據(jù)顯示區(qū):對(duì)應(yīng)于圖形顯示結(jié)果, 實(shí)時(shí)顯示濾波器階次和分子分母多項(xiàng)式系數(shù)。</p>

58、<p>  圖 4 “濾波器設(shè)計(jì)軟件”主面板</p><p>  4.3 基于Matlab GUI的數(shù)字濾波器設(shè)計(jì)實(shí)現(xiàn)</p><p>  4.3.1 “濾波器設(shè)計(jì)軟件”GUI界面設(shè)計(jì)</p><p>  在matlab命令行窗口中輸入guide或點(diǎn)擊matlab界面上面的菜單中的圖標(biāo),打開gui設(shè)計(jì)的圖形界面如圖5 。然后拖入所要的圖形控件,按需要修

59、改外觀和空間屬性,直至滿足要求,如圖6。設(shè)置屬性點(diǎn)擊guide界面上方的Run按鈕,會(huì)生成一個(gè)fig文件,一個(gè)m文件,其中fig文件就是界面的圖形,m文件是界面的回調(diào)函數(shù),在m文件里每個(gè)控件的回調(diào)函數(shù)都已經(jīng)自動(dòng)生成,控件要做的工作就是在文件框架下定義某些特殊要求的狀態(tài)并補(bǔ)充完整回調(diào)函數(shù)場(chǎng), 使單擊控件時(shí)激活回調(diào)程序完成一定的功能。</p><p>  圖 5 GUI設(shè)計(jì)的圖形界面 圖6 “濾波器設(shè)計(jì)

60、軟件”GUI界面設(shè)計(jì)</p><p>  4.3.2 “濾波器設(shè)計(jì)軟件”回調(diào)函數(shù)編寫</p><p>  設(shè)計(jì)總框圖如圖7所示</p><p><b>  圖7 設(shè)計(jì)總框圖</b></p><p>  1、Digital Filter下拉菜單</p><p>  在下拉Digital Filte

61、r菜單里選擇IIR和FIR濾波器設(shè)計(jì)</p><p>  選擇IIR或者FIR屏蔽相應(yīng)的選項(xiàng),當(dāng)選擇IIR選項(xiàng)時(shí),使FIR的Windows的選擇窗口不能使用,程序和效果圖(圖8 、圖9 )如下:</p><p>  function DigitalFilter_Callback(hObject, eventdata, handles)</p><p>  %讀取此時(shí)

62、選擇的濾波器選擇,“IIR、FIR”</p><p>  DigitalFilter_value=get(handles.DigitalFilter,'Value');</p><p>  %當(dāng)選擇了IIR時(shí),使窗口選項(xiàng)屏蔽</p><p>  if(DigitalFilter_value==1) </

63、p><p>  set(handles.FilterDesign,'enable','on');</p><p>  set(handles.Windows,'enable','off')</p><p>  %當(dāng)選擇了FIR時(shí),使IIR的濾波器(Butterworth、 ChebyshevⅠ等)選項(xiàng)屏蔽&

64、lt;/p><p><b>  else</b></p><p>  set(handles.FilterDesign,'enable','off');</p><p>  set(handles.Windows,'enable','on') end

65、 </p><p>  圖8 IIR濾波器選擇 圖 9 FIR濾波器選擇</p><p>  2、Filter Type下拉菜單</p><p>  在下拉菜單Filter Type中選擇濾波器類型</p><p>  選擇低通或者高通濾波器時(shí),隱藏相應(yīng)的帶通和帶阻的第二個(gè)臨界頻率,使其頻率

66、參數(shù)不能輸入,程序和效果圖(圖10 、圖11 )如下:</p><p>  function FilterType_Callback(hObject, eventdata, handles)</p><p>  %讀取此時(shí)設(shè)計(jì)的濾波器的類型,“Lowpass、Highpass、Bandpass、Bandstop”</p><p>  FilterType_value

67、=get(handles.FilterType,'Value');</p><p>  %當(dāng)選擇Lowpass或者Highpass,屏蔽相應(yīng)的臨界頻率的顯示</p><p>  if((FilterType_value==1)||(FilterType_value==2)) </p><p>  set(ha

68、ndles.Fp2,'visible','off');set(handles.Fs2,'visible','off');</p><p>  set(handles.text17,'visible','off');set(handles.text19,'visible','off');&

69、lt;/p><p>  set(handles.text6,'visible','off');set(handles.text10,'visible','off'); </p><p><b>  else </b></p>

70、<p>  %當(dāng)選擇Bandpass或者Bandstop,使相應(yīng)的臨界頻率的顯示,使參數(shù)能夠輸入</p><p>  if((FilterType_value==3)||(FilterType_value==4)) </p><p>  set(handles.Fp2,'visible','on');set

71、(handles.Fs2,'visible','on');</p><p>  set(handles.text17,'visible','on');set(handles.text19,'visible','on');</p><p>  set(handles.text6,'visi

72、ble','on');set(handles.text10,'visible','on'); </p><p><b>  end</b></p><p><b>  end</b></p><p>  圖10低通、高通濾波器

73、頻率參數(shù)輸入 圖11 低通、高通濾波器頻率參數(shù)輸入</p><p>  3、Min Order和Custom Orde按鈕</p><p>  在設(shè)計(jì)濾波器階數(shù)時(shí),可選擇自定義階數(shù)和利用最小階數(shù)設(shè)計(jì)濾波器,并顯示最小階數(shù) ,這里涉及的控件Min Order和Custom Order,其回調(diào)函數(shù)如下:</p><p> ?。?)按鈕Min Order</p&

74、gt;<p>  選擇使用最小階數(shù)設(shè)置時(shí),屏蔽自定義階數(shù)的輸入,如圖12:</p><p>  function MinOrder_Callback(hObject, eventdata, handles)</p><p>  MinOrder_value=get(handles.MinOrder,'Value');</p><p> 

75、 if(MinOrder_value==1) </p><p>  set(handles.Order,'visible','off');</p><p><b>  else</b></p><p>  set(handles.Order,'visible

76、9;,'on'); </p><p><b>  end</b></p><p> ?。?)按鈕Custom Order</p><p>  選擇自定義階數(shù)時(shí),顯示階數(shù)輸入框,如圖13</p><p>  function CustomOrderButton_Callback(hObj

77、ect, eventdata, handles)</p><p>  CustomOrderButton_value=get(handles.CustomOrderButton,'Value');</p><p>  if(CustomOrderButton_value==0) </p><p>  set(

78、handles.Order,'visible','off');</p><p><b>  else</b></p><p>  set(handles.Order,'visible','on'); </p><p><b>  end</b&g

79、t;</p><p>  (3)其中涉及Run控件中的程序如下:</p><p><b> ?、亠@示最小階數(shù)</b></p><p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p> ?、诋?dāng)選擇了自定義階數(shù)時(shí),讀取自定義階數(shù)</p

80、><p>  if(MinOrder_value==0)</p><p>  n=str2double(get(handles.Order,'String'))</p><p><b>  end</b></p><p>  圖12 使用最小階數(shù)設(shè)計(jì)Filter 圖13 使用自定義階數(shù)設(shè)計(jì)Fi

81、lter</p><p>  4、Fp1、Fp2、Fst1、Fst2文本編輯框</p><p>  參數(shù)輸入時(shí),在輸入抽樣頻率Fs的前提下,判斷濾波器通帶臨界頻率(Fp1、Fp2)、濾波器阻帶臨界頻率(Fst1、Fst2)的歸一化頻率wp1、 wp2、ws1、ws1是否在[0,1]之間,如不正確顯示錯(cuò)誤對(duì)話框,其程序和效果圖(圖14)如下:</p><p>  fu

82、nction Fp1_Callback(hObject, eventdata, handles)</p><p>  %檢查輸入的通帶臨界頻率Fp1的歸一化頻率是否在[0,1]之間</p><p>  Fs_value=str2double(get(handles.Fs,'String'));</p><p>  Fp1_value=str2doub

83、le(get(handles.Fp1,'String'));</p><p>  wp1=2*Fp1_value/Fs_value;</p><p>  %如果不在[0,1]之間,顯示輸入錯(cuò)誤對(duì)話框</p><p>  if(wp1>=1)</p><p>  errordlg(‘wp1=2*Fp1/Fs,歸一化頻率不在

84、【0,1】之間,請(qǐng)輸入正確的參數(shù)’,‘錯(cuò)誤信息’) </p><p><b>  end</b></p><p>  圖 14 輸入?yún)?shù)錯(cuò)誤信息框顯示</p><p>  Fp2、Fst1、Fst2的回調(diào)函數(shù)同理編程</p><p><b>  5、Run按鈕</b></p><

85、p>  根據(jù)輸入的參數(shù)顯示設(shè)計(jì)的濾波器的幅頻特性和相頻特性圖,其程序如下:</p><p>  function Run_Callback(hObject, eventdata, handles)</p><p>  %點(diǎn)擊Run立即運(yùn)行AutoChoose,m文件,實(shí)現(xiàn)濾波器設(shè)計(jì)程序</p><p>  AutoChoose(handles)</p&g

86、t;<p>  6、Auto Run按鈕</p><p>  當(dāng)選擇了Auto Run按鈕時(shí),能夠根據(jù)所選的IIR的濾波器(Butterworth、 ChebyshevⅠ等)、FIR的窗口選項(xiàng)、圖形顯示類型(Linear、Logarithmic)立即顯示濾波器的幅頻特性和相頻特性圖,其中IIR的濾波器(Butterworth、 ChebyshevⅠ等)的回調(diào)函數(shù)程序如下:</p>&l

87、t;p>  function FilterDesign_Callback(hObject, eventdata, handles)</p><p>  AutoRun_value=get(handles.AutoRun,'Value');</p><p>  %當(dāng)選擇了Filter(Butterworth、 ChebyshevⅠ等)中一種Filter運(yùn)行AutoCho

88、ose,m文件</p><p>  if(AutoRun_value==1)</p><p>  AutoChoose(handles)</p><p><b>  end</b></p><p><b>  7、Quit按鈕</b></p><p>  退出濾波器設(shè)計(jì)窗口,

89、其程序如下:</p><p>  function Quit_Callback(hObject, eventdata, handles)</p><p>  %點(diǎn)擊Quti按鈕退出</p><p><b>  Close</b></p><p>  4.3.3AutoChoose.m程序的編寫</p>&l

90、t;p>  function AutoChoose(handles)</p><p><b>  Nn=128;</b></p><p>  DigitalFilter_value=get(handles.DigitalFilter,'Value');</p><p>  FilterDesign_value=get(ha

91、ndles.FilterDesign,'Value');</p><p>  Windows_value=get(handles.Windows,'Value');</p><p>  FilterType_value=get(handles.FilterType,'Value');</p><p>  Display

92、Type_value=get(handles.DisplayType,'Value');</p><p>  Order_value=get(handles.Order,'Value');</p><p>  Rp_value=str2double(get(handles.Rp,'String'));</p><p>

93、  Rs_value=str2double(get(handles.Rs,'String'));</p><p>  Fs_value=str2double(get(handles.Fs,'String'));</p><p>  Fp1_value=str2double(get(handles.Fp1,'String'));</p&g

94、t;<p>  Fp2_value=str2double(get(handles.Fp2,'String'));</p><p>  Fs1_value=str2double(get(handles.Fs1,'String'));</p><p>  Fs2_value=str2double(get(handles.Fs2,'Strin

95、g'));</p><p>  wp1=2*Fp1_value/Fs_value; wp2=2*Fp2_value/Fs_value;</p><p>  ws1=2*Fs1_value/Fs_value;ws2=2*Fs2_value/Fs_value;</p><p>  wp=[wp1,wp2];ws=[ws1,ws2];</p><

96、;p>  if(DigitalFilter_value==1)</p><p>  if(FilterDesign_value==1)</p><p>  if((FilterType_value==1)||(FilterType_value==2))</p><p>  [n,Wn]=buttord(wp1,ws1,Rp_value,Rs_value);&l

97、t;/p><p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p><b>  else</b></p><p>  if((FilterType_value==3)||(FilterType_value==4))</p><p>  [n,

98、Wn]=buttord(wp,ws,Rp_value,Rs_value);</p><p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p><b>  end</b></p><p><b>  end</b></p>&l

99、t;p><b>  else</b></p><p>  if(FilterDesign_value==2)</p><p>  if((FilterType_value==1)||(FilterType_value==2))</p><p>  [n,Wn]=cheb1ord(wp1,ws1,Rp_value,Rs_value);<

100、;/p><p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p><b>  else</b></p><p>  if((FilterType_value==3)||(FilterType_value==4))</p><p>  [n,W

101、n]=cheb1ord(wp,ws,Rp_value,Rs_value);</p><p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p><b>  end</b></p><p><b>  end</b></p>&l

102、t;p><b>  else</b></p><p>  if(FilterDesign_value==3)</p><p>  if((FilterType_value==1)||(FilterType_value==2))</p><p>  [n,Wn]=cheb2ord(wp1,ws1,Rp_value,Rs_value);<

103、;/p><p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p><b>  else</b></p><p>  if((FilterType_value==3)||(FilterType_value==4))</p><p>  [n,W

104、n]=cheb2ord(wp,ws,Rp_value,Rs_value);</p><p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p><b>  end</b></p><p><b>  end</b></p>&l

105、t;p><b>  else</b></p><p>  if(FilterDesign_value==4)</p><p>  if((FilterType_value==1)||(FilterType_value==2))</p><p>  [n,Wn]=ellipord(wp1,ws1,Rp_value,Rs_value);<

106、;/p><p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p><b>  else</b></p><p>  if((FilterType_value==3)||(FilterType_value==4))</p><p>  [n,W

107、n]=ellipord(wp,ws,Rp_value,Rs_value);</p><p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p><b>  end</b></p><p>  end </p><p&

108、gt;<b>  end</b></p><p><b>  end </b></p><p><b>  end</b></p><p><b>  end</b></p><p><b>  else</b></p>

109、<p>  if(DigitalFilter_value==2)</p><p>  if((FilterType_value==1)||(FilterType_value==2))</p><p>  [n,Wn]=buttord(wp1,ws1,Rp_value,Rs_value);</p><p>  set(handles.MinOrderDis

110、play,'string',num2str(n))</p><p><b>  else</b></p><p>  if((FilterType_value==3)||(FilterType_value==4))</p><p>  [n,Wn]=buttord(wp,ws,Rp_value,Rs_value);</p&

111、gt;<p>  set(handles.MinOrderDisplay,'string',num2str(n))</p><p><b>  end</b></p><p><b>  end</b></p><p><b>  end</b></p>&

112、lt;p><b>  end</b></p><p>  MinOrder_value=get(handles.MinOrder,'Value');</p><p>  if(MinOrder_value==0)</p><p>  n=str2double(get(handles.Order,'String

113、9;))</p><p><b>  end</b></p><p>  switch DigitalFilter_value %數(shù)字濾波器IIR或者FIR選擇</p><p>  case 1 %選擇IIR濾波器</p><p>  switch FilterDesign_value%IIR中Butterworth

114、、Chebyshev1、Chebyshev2、Ellipise濾波器 </p><p>  case 1 %選擇Butterworth濾波器</p><p>  switch FilterType_value%選擇濾波器類型</p><p>  case 1 %低通濾波器 </p><p>  [b,a]=butter

115、(n,Wn);</p><p>  [h,f]=freqz(b,a,Nn,Fs_value); </p><p>  axes(handles.Magnitude); %把下面程序得到的圖畫在Magazine</p><p>  if(DisplayType_value==1) %選擇Linear畫幅頻圖</p><p>  plot(f,a

116、bs(h)) %畫幅頻圖</p><p>  else plot(f,20*log10(abs(h))) %選擇Logarithmic畫幅頻圖</p><p><b>  end</b></p><p><b>  grid on;</b></p><p>  axes(handles.Phase)

117、; %把下面程序得到的圖畫在Phase</p><p>  plot(f,angle(h)); %畫相頻圖</p><p><b>  grid on;</b></p><p>  case 2 %高通濾波器 </p><p>  [b,a]=butter(n,Wn,'high&#

118、39;); </p><p>  [h,f]=freqz(b,a,Nn,Fs_value);</p><p>  axes(handles.Magnitude);</p><p>  if(DisplayType_value==1) plot(f,abs(h))</p><p>  else plot(f,20*log10(abs(h)))&

119、lt;/p><p><b>  end</b></p><p><b>  grid on;</b></p><p>  axes(handles.Phase);plot(f,angle(h));grid on;</p><p>  case 3 %帶通濾波器</p><p>

120、;  [b,a]=butter(n,Wn);</p><p>  [h,f]=freqz(b,a,Nn,Fs_value);</p><p>  axes(handles.Magnitude);</p><p>  if(DisplayType_value==1) plot(f,abs(h))</p><p>  else plot(f,20

121、*log10(abs(h)))</p><p><b>  end</b></p><p><b>  grid on;</b></p><p>  axes(handles.Phase);plot(f,angle(h));grid on;</p><p>  case 4 %帶阻濾波器<

122、;/p><p>  [b,a]=butter(n,Wn,'stop');</p><p>  [h,f]=freqz(b,a,Nn,Fs_value);</p><p>  axes(handles.Magnitude);</p><p>  if(DisplayType_value==1) plot(f,abs(h))</

123、p><p>  else plot(f,20*log10(abs(h)))</p><p><b>  end</b></p><p><b>  grid on;</b></p><p>  axes(handles.Phase);plot(f,angle(h));grid on;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論