資源描述:
《正弦信號(hào)發(fā)生器實(shí)驗(yàn)報(bào)告》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、DSP實(shí)驗(yàn)報(bào)告正弦信號(hào)發(fā)生器班級(jí)電信1201姓名馬成學(xué)號(hào)1404120116實(shí)驗(yàn)一正弦信號(hào)發(fā)生器一、實(shí)驗(yàn)儀器:PC機(jī)一臺(tái),JQ-SOPC-2C35實(shí)驗(yàn)箱一臺(tái)及輔助軟件(DSPBuilder、Matlab/Simulink、QuartusII、Modelsim)。二、實(shí)驗(yàn)?zāi)康模?.初步了解JQ-NIOS-2C35實(shí)驗(yàn)箱的基本結(jié)構(gòu);2。學(xué)習(xí)和熟悉基于DSPBuilder開(kāi)發(fā)數(shù)字信號(hào)處理實(shí)驗(yàn)的流程。三、實(shí)驗(yàn)原理:正弦波是一種基本信號(hào),任何復(fù)雜信號(hào)都可由許多頻率、幅度各不相同的正弦波復(fù)合而成。已知正弦波存
2、在如下的關(guān)系:由以上公式可知,正弦波存在周期性,本實(shí)驗(yàn)就是根據(jù)正弦波的這一特性進(jìn)行正弦波發(fā)生。在AlteraDSPBuilder庫(kù)中,有一名為IncrementDecrement的模塊,根據(jù)參數(shù)設(shè)置的不同,IncrementDecrement會(huì)不斷從0計(jì)數(shù)到設(shè)定值,然后清0,接著又從0開(kāi)始計(jì)數(shù)。圖3-1顯示的是IncrementDecrement的參數(shù)設(shè)置界面,以圖中參數(shù)為例,numberofbits設(shè)置為6,即從0開(kāi)始計(jì)數(shù)到2^6,然后清0,接著又從0開(kāi)始計(jì)數(shù)。在LUT(LookUpTable)
3、查找表模塊中事先存入一個(gè)周期的正弦波的抽樣值,利用IncrementDecrement模塊不斷計(jì)數(shù),根據(jù)計(jì)數(shù)值找到查找表的地址取出里面的值進(jìn)行輸出,因?yàn)镮ncrementDecrement模塊的輸出具有周期性,則從LUT的輸出也具有了周期性,這樣,就產(chǎn)生了正弦波。四、實(shí)驗(yàn)步驟:本實(shí)驗(yàn)的操作步驟如下:1.點(diǎn)擊桌面上的Matlab圖標(biāo),進(jìn)入Matlab主界面,并將工作目錄設(shè)為Matlab安裝目錄下的work文件夾,如圖1所示:圖1Matlab啟動(dòng)界面2.點(diǎn)擊菜單欄中的File->New->Model,
4、新建一個(gè)模型,在Matlab命令窗口中輸入simulink命令,調(diào)出simulink工具欄,如圖2所示:圖2新建模型3.雙擊simulink工具欄中的AlteraDSPBuilder中的Arithmetic庫(kù),找到IncrementDecrement模塊,選中它并按住鼠標(biāo)左鍵將其拖到新建的模型文件中,如圖3所示:圖3添加模塊4.雙擊模型文件中的IncrementDecrement模塊,打開(kāi)模塊參數(shù)對(duì)話框,將BusType設(shè)為SignedInteger,numberofbits設(shè)為6,保持其他參數(shù)不
5、變,點(diǎn)擊【OK】按鈕確認(rèn)。點(diǎn)擊模塊下面的文本,將其重命名為IncCount。5.雙擊simulink工具欄中的AlteraDSPBuilder中的Storage庫(kù),找到LUT模塊,選中它并按住鼠標(biāo)左鍵將其拖到新建的模型文件中。雙擊模型文件中的LUT模塊,打開(kāi)模塊參數(shù)對(duì)話框,將DataType設(shè)為SignedInteger,AddressWidth設(shè)為6,numberofbits設(shè)為8,MATLABArray設(shè)為127*sin([0:2*pi/(2^6):2*pi])。保持其他參數(shù)不變,點(diǎn)擊【OK】
6、按鈕確認(rèn)。點(diǎn)擊模塊下面的文本,將其重命名為SinLut。6.雙擊simulink工具欄中的AlteraDSPBuilder中的Storage庫(kù),找到Delay模塊,選中它并按住鼠標(biāo)左鍵將其拖到新建的模型文件中。7.雙擊simulink工具欄中的AlteraDSPBuilder中的Arithmetic庫(kù),找到其中的Product模塊,選中它并按住鼠標(biāo)左鍵將其拖到新建的模型文件中,雙擊該模塊,打開(kāi)模塊參數(shù)對(duì)話框,在Optionalportsandsettings中的UseLPM選項(xiàng)前打勾。保持其他參數(shù)
7、不變,點(diǎn)擊【OK】按鈕確認(rèn)。8.雙擊simulink工具欄中的AlteraDSPBuilder中的IO&Bus庫(kù),找到其中的Input和Output模塊,選中它們并按住鼠標(biāo)左鍵將其拖到新建的模型文件中,雙擊Input模塊,打開(kāi)模塊參數(shù)設(shè)置界面,將BusType設(shè)為SingleBit,保持其他參數(shù)不變,點(diǎn)擊【OK】按鈕確認(rèn)。雙擊Output模塊,打開(kāi)模塊參數(shù)設(shè)置界面,BusType設(shè)為SignedInteger,numberofbits設(shè)為8,保持其他參數(shù)不變,點(diǎn)擊【OK】按鈕確認(rèn)。9.雙擊simu
8、link工具欄中的Simulink中的Sinks庫(kù),找到Scope模塊,選中它并按住鼠標(biāo)左鍵將其拖到新建的模型文件中,雙擊Scope模塊,打開(kāi)模塊參數(shù)設(shè)置界面,點(diǎn)擊菜單欄中的Parameters,將numberofaxes設(shè)為2。點(diǎn)擊【OK】確認(rèn),關(guān)閉模塊參數(shù)設(shè)置界面。10.雙擊simulink工具欄中的Simulink中的Source庫(kù),找到Step模塊,選中它并按住鼠標(biāo)左鍵將其拖到新建的模型文件中,雙擊Step模塊,打開(kāi)模塊參數(shù)界面,將Steptime設(shè)為50,Initialv