freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于圖形交互式的信號處理cai軟件設(shè)計及開發(fā)畢業(yè)論文(編輯修改稿)

2024-07-16 12:58 本頁面
 

【文章內(nèi)容簡介】 三個子菜單,用于清除輸入、輸出框中的數(shù)據(jù)和輸出圖形;Option下有Grid on 和Grid off兩個選項,分別用于給圖形加上柵格和去除柵格;Exit用于退出實驗子界面。在實驗系統(tǒng)主界面中創(chuàng)建的菜單項如圖42所示。圖42 主界面的菜單在實驗系統(tǒng)子界面中創(chuàng)建的菜單項都是相同的,如圖43所示的“基本連續(xù)信號的產(chǎn)生”界面的菜單項圖43 子界面的菜單 圖形用戶界面控件編程圖形用戶界面的實現(xiàn)任務(wù)之一就是控制這些控件如何響應(yīng)用戶的行為。當界面外觀設(shè)計完后,則要賦于各菜單及工具控件以靈魂,這就需要編寫程序來實現(xiàn)特定的功能。編程時將各個控件之間以及控件自身的選項聯(lián)系起來,主要用到get、set、eval、axes函數(shù),下面分別對其進行介紹。 輸入函數(shù)get函數(shù)的應(yīng)用 get函數(shù)是用于獲得圖形對象的屬性。(1) 語法:該函數(shù)有如下幾種表達形式get(H) 獲取H句柄對象所有屬性的當前值get(H, 39。PropertyName39。) 獲取H的句柄對象的屬性值,由PropertyName所指定屬性的當前值。(2) 舉例:如果在界面的可編輯文本框()中輸入‘2**5’,則執(zhí)行g(shù)et(,39。string39。),即獲取可編輯文本框輸入的表達式‘2**5’。eval函數(shù)的應(yīng)用eval函數(shù)是用于執(zhí)行一個包含表達式的字符串。(1) 語法:該函數(shù)有如下幾種表達形式eval(expression) 將執(zhí)行指定的表達式,用戶可以使用方括號連接子串和變量來構(gòu)造新的表達式:expression=[string1,int2str(var),string2,…][a1,a2,a3,…]=eval(expression) 執(zhí)行指定的表達式并將結(jié)果返回到指定的輸出變量中。eval(expression,catch_expr) 執(zhí)行指定的表達式,當檢測到錯誤時,將執(zhí)行“catch_expr”。(2) 舉例:,則執(zhí)行set(, 39。string39。, mat2str(yk,2)),可在可編輯文本框中輸出相應(yīng)的字符串由mat2str(yk,2)轉(zhuǎn)化來的字符串(mat2str(yk,2)是將矩陣yk轉(zhuǎn)化為字符串)。在程序設(shè)計中這兩種函數(shù)常常嵌套使用,如:x1=eval(get(,’string’))??砂裺ignal_x1的值賦給x1。 輸出函數(shù)set函數(shù)的應(yīng)用set函數(shù)是用于設(shè)置或修改圖形對象的屬性。(1) 語法:該函數(shù)有如下幾種表達形式set(H) 顯示H句柄對象的所有可設(shè)置屬性名和全部供選屬性值。set(H , 39。PropertyName39。) 顯示H句柄對象PropertyName指定屬性名的全部供選屬性值。set(H , 39。PropertyName39。, 39。PropertyValue39。) 設(shè)置H句柄對象的PropertyName屬性名的PropertyValue屬性值。(2) 舉例:,則執(zhí)行set(,39。string39。, 39。2**539。),即可在可編輯文本框中輸出表達式2**5。axes函數(shù)的應(yīng)用axes函數(shù)是用于指定特定的坐標系,用來輸出圖形。(1) 語法:axes(H) 指定在H句柄對象上繪圖(2) 舉例:axes(axes1);stem(n,x);title(39。矩形序列39。);xlabel(‘n’);ylabel(39。x[n]39。);即在axes1句柄對象上繪制脈沖圖形,標題為‘矩形序列’,橫坐標的標號為n,縱坐標的標號為x[n]。 回調(diào)函數(shù)回調(diào)函數(shù)是用戶界面的核心,在用戶界面中用于完成界面的功能,在本設(shè)計中涉及到的回調(diào)函數(shù)的編寫實現(xiàn)功能的有命令按鈕、下拉菜單和界面菜單。具體的編寫在介紹各界面功能時再詳細介紹。5 系統(tǒng)用戶界面的實現(xiàn)為方便用戶參照使用,下面分別就各實驗界面模塊回調(diào)函數(shù)的編寫原理及功能的實現(xiàn)進行介紹,并對實驗子界面模塊部分的實驗進行演示。 引導(dǎo)模塊 回調(diào)函數(shù)的編寫在開始按鈕和系統(tǒng)說明按鈕的callback屬性選項中,直接調(diào)用主界面的回調(diào)函數(shù)名main和函數(shù)push,將開始引導(dǎo)界面和主界面、系統(tǒng)說明界面聯(lián)系起來。改變MATLAB當前工作路徑,這樣就可直接在MATLAB環(huán)境中輸入相應(yīng)的命令,就可進入實驗系統(tǒng)。引導(dǎo)模塊界面如圖51所示。 圖51信號處理實驗系統(tǒng)引導(dǎo)界面 界面功能引導(dǎo)界面是用于進入數(shù)字信號處理實驗系統(tǒng)主界面的,在界面上設(shè)有“開始”和“系統(tǒng)說明”按鈕。用戶只要單擊界面中的“開始”按鈕就可進入實驗主界面進行實驗。 單擊“系統(tǒng)說明”按鈕就可以了解系統(tǒng)的相關(guān)信息。系統(tǒng)說明界面是用于簡單介紹實驗系統(tǒng)及各個實驗子界面的內(nèi)容及使用方法。說明模塊的界面如圖52所示。圖52 信號處理實驗系統(tǒng)說明界面 主界面模塊 回調(diào)函數(shù)的編寫 直接在菜單的callback屬性選項中輸入各個實驗子界面及說明界面的回調(diào)函數(shù)名來實現(xiàn)將各個按鈕和菜單與相應(yīng)的界面聯(lián)系起來。主模塊的界面外觀如圖53所示。圖53 信號處理實驗系統(tǒng)主界面 界面功能主界面是用于進入信號處理各個實驗子界面的,它使用菜單及其一些按鈕控件來實現(xiàn),將各個實驗子界面有機地聯(lián)系到一起,使界面美觀,易于操作。在此界面中,用戶可以通過選擇菜單中相應(yīng)的項,進入相應(yīng)的實驗界面來進行實驗,可以進行的實驗包括以下幾種:序列的基本計算、基本信號的產(chǎn)生、數(shù)據(jù)采集、卷積、傅里葉變換、Z變換、FIR及IIR濾波器的設(shè)計。 基本信號的產(chǎn)生模塊 回調(diào)函數(shù)編寫的基本原理(1) 基本連續(xù)信號的產(chǎn)生嚴格的說來只有用符號推理的方法才能分析連續(xù)系統(tǒng),用數(shù)值方法是不能表示連續(xù)信號的,因為它給出的是各個樣本點的數(shù)據(jù),只有當樣本點取得很密時才可看成連續(xù)信號。所謂密,是相對信號變化的快慢而言,以下均假定相對于采樣點密度而言,信號變化足夠慢?;具B續(xù)信號的實現(xiàn)原理和MATLAB表達式如下:單位沖激函數(shù)單位沖激函數(shù)無法直接用MATLAB描述,可以把它看著是寬度為(程序中用dt表示),幅度為的矩形脈沖,即表示t=處的沖激。 MATLAB實現(xiàn):x1=zeros(1,st)。%st為信號的持續(xù)時間單位階躍函數(shù)在t=處躍升可寫為u。定義為MATLAB實現(xiàn):x2=[zeros(1,n11),ones(1,stn1+1)]。%n1為t1對應(yīng)的樣本序號復(fù)指數(shù)函數(shù)若=0,它是指數(shù)函數(shù),如u=0,則為虛指數(shù)函數(shù),其實部為余弦函數(shù),虛部位正弦函數(shù)。MATLAB實現(xiàn):x3=exp((u+j*w)*t)。 。(2) 基本離散信號的產(chǎn)生單位脈沖序列MATLAB實現(xiàn):x1=[(n1ns)==0]。%n1為序列的區(qū)間,ns為序列的起點單位階躍序列其中,為序列的起點。MATLAB實現(xiàn):x2=[(n2=ns)amp。(n2=ne)]。% ne為序列的終點矩形序列其中,為序列的起點,為序列的終點。MATLAB實現(xiàn):x3=[(n3=ns)amp。(n3=ne)]。實指數(shù)序列x(n)=,;MATLAB實現(xiàn):x4=a^n4。% n4為序列的區(qū)間正弦序列x(n)=sin(),MATLAB實現(xiàn):x5=sin(sw*n5)。% n5為序列的區(qū)間余弦序列x(n)=cos(),MATLAB實現(xiàn):x6=cos(cw*n6)。% n6為序列的區(qū)間復(fù)指數(shù)序列MATLAB實現(xiàn):x7=exp((sigma+plex_w*j)*n7)。% n7為序列的區(qū)間周期序列x(n)=x(n+N),其中,N為序列的周期。MATLAB實現(xiàn):xx=x′*ones(1,N)。x8=(xx(:))′。% n8為序列的區(qū)間。 界面功能此模塊包括兩個實驗界面,基本連續(xù)信號產(chǎn)生界面和基本離散信號的產(chǎn)生界面。(1)基本連續(xù)信號的產(chǎn)生界面:可以產(chǎn)生單位沖激函數(shù)、單位階躍函數(shù)、復(fù)指數(shù)函數(shù)幾種連續(xù)信號。只需在信號的時間區(qū)間的編輯框中輸入信號顯示區(qū)間、脈沖寬度dt編輯框中輸入脈沖寬度(同時作為時間間隔),在信號的突變點編輯框中輸入信號的突變點(用于單位沖激函數(shù)和單位階躍函數(shù)信號的突變點),在頻率和相位框輸入相應(yīng)的參數(shù),然后從下拉菜單中選擇相應(yīng)的信號選項,就可以在輸出框中輸出相應(yīng)數(shù)據(jù),在圖形框中輸出相應(yīng)的圖形。(2)基本離散信號的產(chǎn)生界面:可以產(chǎn)生單位脈沖序列、單位階躍序列、矩形序列、實指數(shù)序列、正弦序列、余弦序列、復(fù)指數(shù)序列、周期序列幾種離散信號。只需在輸入框中輸入相應(yīng)信號的各種控制參數(shù),然后從下拉菜單中選擇相應(yīng)的信號選項,就可以在輸出框中輸出相應(yīng)數(shù)據(jù),在圖形框中輸出相應(yīng)的圖形。 界面使用演示(1) 基本連續(xù)信號的產(chǎn)生界面演示下面以信號區(qū)間為[0:6],頻率為10,來進行演示。具體操作:在“信號的時間區(qū)間”輸入信號顯示的區(qū)間[0:6],在“脈沖寬度dt”(作為信號產(chǎn)生的時間間隔),在“復(fù)指數(shù)函數(shù)頻率”輸入頻率10,在“復(fù)指數(shù)函數(shù)相位”,然后從下拉菜單中選擇復(fù)指數(shù)函數(shù)選項,就可以得到如圖54所示的結(jié)果。圖54 復(fù)指數(shù)函數(shù)信號的產(chǎn)生演示(2) 基本離散信號的產(chǎn)生界面演示下面以信號區(qū)間為[1:10],頻率為5的正弦序列的產(chǎn)生為例來進行演示。具體操作:在“信號區(qū)間”輸入信號區(qū)間[1:10],在“正弦序列頻率”輸入頻率5,從下拉菜單中選擇“正弦序列”選項,則可得到如圖55所示的結(jié)果。圖55 正弦序列的產(chǎn)生演示 序列基本計算模塊 回調(diào)函數(shù)編寫的基本原理 在數(shù)字信號處理中,對信號所做的基本運算有相加、相乘、信號能量、信號功率、信號的抽樣和、信號的抽樣積等,在此模塊中主要使用MATLAB中的基本表達式來實現(xiàn),下面分別介紹:信號加: x(n)=x1(n)+x2(n)MATLAB實現(xiàn):x=x1+x2;注意:x1和x2序列應(yīng)該具有相同的長度,位置對應(yīng),才能相加。信號乘: x(n)=x1(n)*x2(n)MATLAB實現(xiàn):x=x1.*x2;改變比例: y(n)=k*x(n)MATLAB實現(xiàn):y=k*x;信號折疊: y(n)= x(n)MATLAB實現(xiàn):y=fliplr(x)。函數(shù)fliplr用來實現(xiàn)信號的左右折疊。抽樣和: y=MATLAB實現(xiàn):y=sum(x(n1:n2));抽樣積: y=MATLAB實現(xiàn):y=prod(x(n1:n2));信號能量: E=MATLAB實現(xiàn):Ex=sum(abs(x).^2));信號功率: Px=MATLAB實現(xiàn):Px=sum(abs(x).^2)/N;。 界面功能序列的基本計算實驗界面,是用于對兩離散序列進行以下幾種計算:相加、相乘、改變信號的比例系數(shù)、信號的折疊、抽樣和、抽樣積、信號功率、信號能量。用戶只需在“信號區(qū)間n1”中輸入信號x1的區(qū)間n1,在“信號區(qū)間n2”中輸入信號x2的區(qū)間n2,在輸入框中的下拉菜單中選擇“信號相加”或“信號相乘”選項;或是在比例系數(shù)編輯框輸入相應(yīng)的系數(shù),在輸入框中的下拉菜單中選擇“改變信號的比例”選項;或是在“信號區(qū)”輸入信號區(qū)間n,在“信號x”中輸入信號x,在輸入框中的下拉菜單中選擇“抽樣和”、“抽樣積”、“信號能量”“信號功率”幾項中的任一項。以上的任一操作都可以在輸出框中輸出相應(yīng)的結(jié)果數(shù)據(jù),在圖形窗中輸出原序列圖形和計算結(jié)果圖形。 界面使用演示下面以信號[4,5,6,2,3,1,9,7,8]的抽樣和為例來進行演示,信號區(qū)間為[0:8]。具體操作:在“信號區(qū)間n”中輸入信號x的區(qū)間[0:8],在“信號x”中輸入信號x為[4,5,6,2,3,1,9,7,8] ,然后在輸入框中的下拉菜單中選擇“抽樣和”選項,即可在輸出框中的 “信號y”中得到抽樣后的信號值45,同時在圖形顯示框中顯示原信號和抽樣后的信號的圖形,如圖56所示。圖56 序列的抽樣和演示 數(shù)據(jù)采集模塊 回調(diào)函數(shù)編寫的基本原理數(shù)字信號處理的對象,是在采樣時鐘的控制之下,通過轉(zhuǎn)換器在一定的采樣率之下對模擬信號進行采樣后而得到的。所以在實際工作中,經(jīng)常會遇到采樣率轉(zhuǎn)換的問題。數(shù)據(jù)采集包括上采樣和下采樣(又稱為信號的內(nèi)插和抽?。﹥煞N。l 上采樣信號的上采樣,即將信號x(n)的原采樣頻率增加L倍,得到v(n),即是對x(n)的插值。插值最簡單的方法是在x(n)每相鄰兩個點之間補L1個零,然后再進行低通濾波處理。即信號的插值雖然是零,但經(jīng)過低通濾波后,信號得到了平滑,零值可能不再是零值。用MATLAB實現(xiàn)上采樣的函數(shù)為inter,格式如下:y=inter(sig,N1),返后回的是將信號的采樣頻率增加到原采樣頻率的N1倍,重采樣后得到序列y的長度是x的N1倍。l 下采樣信號的下采樣,即將信號x(n)的原采樣頻率減少L倍,得到v(n),即是對x(n)的抽樣。抽樣的最簡單的方法是在v(n)每相鄰兩個點之間值設(shè)為零,即用MATLAB實現(xiàn)下采樣的函數(shù)為decimate,格式如下:y=decimate(sig,N1)),返后回的是以原采樣率的1/N1(N1應(yīng)為整數(shù))倍的采樣率重采樣的序列。重采樣得到序列y的長度是x的1/N1倍。 界面功能此模塊可以進行上采樣和下采樣實驗。信號的上采樣是將采樣頻率增加到原來采樣頻率的若干倍,然后再次對原信號進行采樣;信號的下采樣是將原采樣頻率降低到原來的若干倍后,對原信號進行采樣,此實驗中(原采樣信號的采用點數(shù)輸入設(shè)為大于等于200個點)。該實驗只需輸入采樣信號、原采樣頻率、新采樣頻率及采樣點數(shù),就可以在輸出框中得到原采樣頻率采樣后的信號和新采樣頻率采樣后的信號,同時在圖形窗中顯示兩種采樣頻率采樣后的信號的圖形。 界面使用演示下面以上采樣為例進行演示,設(shè)信號為sin(2*pi*75*n/T), T= 100HZ(T為原采樣頻率),采樣點
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1