c語言-時鐘信號_第1頁
c語言-時鐘信號_第2頁
c語言-時鐘信號_第3頁
c語言-時鐘信號_第4頁
c語言-時鐘信號_第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、中北大學課程設計說明書學生姓名: 崔寶月 學 號: 1305054215 學生姓名: 南 帥 學 號: 1305054230 學 院: 信息與通信工程學院 專 業(yè): 信息對抗技術專業(yè) 題 目: 軟件信息處理課程設計 利用C語言,生成一個時鐘信號 指導教師: 姚金杰 劉賓 楊光 2016年 6月 26 日中北大學課程設計任務書 2015/2016 學年第 二 學期 學 院: 信息與通信工程學院 專 業(yè): 信息對抗技術 學生姓名: 崔寶月 學 號: 1305054215 學生姓名: 劉學文 學 號: 1305054219 學生姓名: 南 帥 學 號: 1305054230 學生姓名: 田 剛 學

2、號: 1305054244 課程設計題目: 軟件信息處理課程設計 射頻信號相位分析與測量軟件模塊設計 起 迄 日 期: 2016年6月12 日2015年6月27日 課程設計地點: 信息對抗技術專業(yè)綜合實驗室 指 導 教 師: 姚金杰 劉賓 楊光 學 科部主 任: 張丕狀 課 程 設 計 任 務 書1設計目的:(1)通過本課程設計的學習,學生將復習所學的專業(yè)知識,使課堂學習的理論知識應用于實踐,通過本課程設計的實踐使學生具有一定的實踐操作能力;(2)掌握C語言的編程方法,能熟練運用;(3)通過軟件信息處理實踐的課程設計,掌握設計信息處理系統(tǒng)的思維方法和基本開發(fā)過程。2設計內(nèi)容和要求(包括原始數(shù)據(jù)

3、、技術參數(shù)、條件、設計要求等):(1)熟悉C語言開發(fā)平臺a、熟悉C的運行環(huán)境;b、學會并掌握C語言編程;c、根據(jù)所選題目的需要,會合理安排程序流程,最終優(yōu)化程序設計。(2)實踐設計要求:a、根據(jù)所選題目,設計相應的流程框圖。b、編寫C語言程序,給出相應的波形。(3)參考題目題目1 射頻信號相位分析與測量軟件模塊設計基本要求與目的:l 了解相位分析在方向和距離測量中作用l 學習相位測量的基本原理l 學習嵌入式系統(tǒng)的輪詢軟件結(jié)構(gòu)設計l 學習MATLAB在仿真分析中的作用l 學習C語言編程技巧和流程繪制培養(yǎng)能力;掌握斷點設置、單步、變量觀測等軟件調(diào)試的一般方法和技巧。初步學習PLL的原理和時鐘調(diào)節(jié)的

4、方法,了解可編程的概念,了解軟件無線電的內(nèi)涵l 培養(yǎng)資料查閱能力和團隊合作精神和組織能力課 程 設 計 任 務 書3設計工作任務及工作量的要求包括課程設計計算說明書(論文)、圖紙、實物樣品等:(1) 要求設計組的每個成員都要了解設計的要求和整體思路;(2) 子題目小組的同學各完成一份設計說明書,突出各自的工作內(nèi)容;(3) 要求有正確的運行結(jié)果及結(jié)果分析。4主要參考文獻:l 譚浩強.C程序設計(第二版).清華大學出版社.1999年12月l 袁志祥.數(shù)據(jù)結(jié)構(gòu)(c語言版)例題詳解與課程設計指導第二版. 中國科學技術大學出版社出版l 譚浩強.C語言程序設計題解與上機指導.清華大學出版社.2000年11

5、月l 陳朔鷹, 陳英主.C語言程序設計習題集(第二版).人民郵電出版社.2003年2月l 田淑清.C語言程序設計輔導與習題集.中國鐵道出版社.2000年1月l 王明泉.信號與系統(tǒng).科學出版社.2010年6月5設計成果形式及要求:每個子題目小組提供詳細的設計說明書一份設計說明書中包含:1、關鍵詞解釋,設計方案基本原理;2、軟件框圖;3、斷點設置位置、單步運行的變量值;4、附錄軟件源代碼6工作計劃及進度:2016年6月12日 2016年6月18日:學習C預研有關編程方法;2016年6月19日 2016年6月23日:在指導教師指導下實現(xiàn)程序設計;2016年6月24日 2016年6月26日:撰寫課程設

6、計說明書; 2016年6月27日:答辯。學科部主任審查意見: 簽字: 年 月 日目 錄一 設計目的簡介與題目解讀11.1目的簡介11.2題目解讀:1二 設計主要理論介紹及方案12.1理論介紹12.1.1基本原理12.1.2關鍵字的理解:22.2方案:32.2.1方案選擇:32.2.2設計原理:3三、設計主要步驟63.1.創(chuàng)建客戶端應用程序,采用對話框架構(gòu)63.2.為對話框界面添加控件對象83.3為對話框中的控件對象定義相應的成員變量103. 4添加響應消息的事件處理成員函數(shù)113.5手工添加其他代碼123.6添加事件處理函數(shù):163.7.根據(jù)實際結(jié)果調(diào)整控件的位置以防遮擋或被遮擋16四、 設計

7、結(jié)果與分析174.1輸出界面:174.2選擇諧波次數(shù)為0 , 相位抖動參數(shù)為 0174.3選擇諧波次數(shù)為7 , 相位抖動參數(shù)為 1184.4相位抖動參數(shù)為3 諧波次數(shù)為33 時:194.5相位抖動參數(shù)為5 諧波次數(shù)為55 時:19五設計評述及收獲體會201、設計評述202、設計過程203、收獲體會:20六 參考文獻211 設計目的簡介與題目解讀1.1目的簡介(1)通過本課程設計的學習,學生將復習所學的專業(yè)知識,使課堂學習的理論知識應用于實踐,通過本課程設計的實踐使學生具有一定的實踐操作能力;(2)掌握C語言的編程方法,能熟練運用;(3)通過軟件信息處理實踐的課程設計,掌握設計信息處理系統(tǒng)的思維

8、方法和基本開發(fā)過程。(4)學習Windows程序設計的語言、過程、思想與方法。全面地學習Windows程序設計所涉及的細枝末節(jié),要求我們從高屋建瓴的角度,建立完整的知識體系,為以后的職業(yè)生涯奠定良好的基礎。即要學習基礎知識,著重學習Windows程序設計中關于圖形的編寫與實現(xiàn)。1.2題目解讀: 利用C語言,生成一個時鐘信號,要求:1、頻率為30MHz. 2、時鐘相位抖動參數(shù)、諧波頻率參數(shù)可設置,3 繪制波形 4生成文件 (4人合作完成)2 設計主要理論介紹及方案2.1理論介紹2.1.1基本原理 1、相位測量的基本原理:通過測量無線電信號到達不同檢測地點的天線單元時間差,來對發(fā)射無線電信號的發(fā)射

9、源進行定位。TDOA定位流程:1.從監(jiān)測站將同一時間測量同一信號得到的數(shù)據(jù)發(fā)送到主監(jiān)測站;2.主監(jiān)測站分別計算出無線電信號到達兩個監(jiān)測站天線的時間差(利用相關算法);3.根據(jù)兩站之間時間差轉(zhuǎn)換為距離差,可以得到一條雙曲線;4.通過三個或多個無線電監(jiān)測站測得的時間差可以得到兩條或多條雙曲線相交來實現(xiàn)發(fā)射源的定位。 2、PLL(Phase Locked Loop):為鎖相回路或鎖相環(huán),用來統(tǒng)一整合時脈訊號,使內(nèi)存能正確的存取資料。PLL用于振蕩器中的反饋技術。鎖相環(huán)是一種反饋電路,其作用是使得電路上的時鐘和某一外部時鐘的相位同步。PLL通過比較外部信號的相位和由壓控晶振(VCXO)的相位來實現(xiàn)同步

10、的,在比較的過程中,鎖相環(huán)電路會不斷根據(jù)外部信號的相位來調(diào)整本地晶振的時鐘相位,直到兩個信號的相位同步。2.1.2關鍵字的理解:1.時鐘信號:時鐘信號是提供給同步內(nèi)存做訊號同步之用,同步記憶體的存取動作必需與時鐘信號同步。時鐘信號是一個特定類型的振蕩之間的高和低的狀態(tài),并利用像一個節(jié)拍器協(xié)調(diào)電路的動作的信號。(有固定周期并與運行無關的信號量)2.信號抽樣:采樣也稱抽樣,是信號在時間上的離散化,即按照一定時間間隔t在模擬信號x(t)上逐點采取其瞬時值。它是通過采樣脈沖和模擬信號相乘來實現(xiàn)的。3.抽樣頻率:定義了每單位時間內(nèi)的樣品數(shù)(通常為秒 ),從連續(xù)信號作出離散信號。4.諧波:諧波是指電流中所

11、含有的頻率為基波的整數(shù)倍的電量,一般是指對周期性的非正弦電量進行傅里葉級數(shù)分解,其余大于基波頻率的電流產(chǎn)生的電量。5.時鐘抖動:時鐘抖動是指兩個時鐘周期之間存在的差值,這個誤差是在時鐘發(fā)生器內(nèi)部產(chǎn)生的,和晶振或者PLL內(nèi)部電路有關,布線對其沒有影響。除此之外,還有一種由于周期內(nèi)信號的占空比發(fā)生變化而引起的抖動,稱之為半周期抖動。總的來說,抖動可以認為在時鐘信號本身在傳輸過程中的一些偶然和不定的變化之總和。6.相位:是描述信號波形變化的度量,通常以度(角度)作為單位,也稱作相角。當訊號波形以周期的方式變化,波形循環(huán)一周即為360º。7.相位噪聲:相位噪聲是衡量頻率標準源(高穩(wěn)晶振、原子

12、頻標等)頻穩(wěn)質(zhì)量的重要指標。相位噪聲一般是指在系統(tǒng)內(nèi)各種噪聲作用下引起的輸出信號相位的隨機起伏。通常相位噪聲又分為頻率短期穩(wěn)定度和頻率長期穩(wěn)定度。所謂頻率短期穩(wěn)定度, 是指由隨機噪聲引起的相位起伏或頻率起伏。至于因為溫度、老化等引起的頻率慢漂移,則稱之為頻率長期穩(wěn)定度。8.頻率分量:周期性交流量的傅里葉級數(shù)中次數(shù)高于1的分量,其頻率為基波頻率的整數(shù)倍。9.文件讀寫操作:文件的讀操作以頁為單位進行。內(nèi)核每次會傳送幾頁(文件的預讀)。用戶發(fā)出read()系統(tǒng)調(diào)用后,內(nèi)核先查看要操作的文件是否在緩存中,如果在緩存之中就給進程的用戶空間拷貝一份,若所要讀的文件的頁不在緩沖區(qū),則會在換中區(qū)中分配一個頁框

13、,然后把相應的頁框加入到頁高速緩存之中,然后從磁盤讀取相應的頁到緩沖區(qū)并給進程的用戶空間拷貝一份。10.文件頭:文件頭是位于文件開頭的一段承擔一定任務的數(shù)據(jù),一般都在開頭的部分。頭文件作為一種包含功能函數(shù)、數(shù)據(jù)接口聲明的載體文件,用于保存程序的聲明,而定義文件用于保存程序的實現(xiàn)。2.2方案: 2.2.1方案選擇: 方案一 :利用VC+中MFC部分直接寫出方波各個點的坐標,利用畫筆連接,直接做出所需方波,即生成時鐘信號。接著通過對方波的各個點的坐標進行左移或右移實現(xiàn)相位的抖動。 方案二:同樣利用VC+中MFC部分,但是并不僅僅畫出各個點再連線,而是通過方波的傅里葉級數(shù)的展開式的基波分量及諧波分量

14、合成而生成所需時鐘信號,再對其相位及諧波頻率加入rand函數(shù)使其可調(diào)從而達到目的。多次討論之后,我們決定利用第二套方案。由于一方案中的諧波頻率不可調(diào),而且方法過于簡單,實現(xiàn)起來較易但要求達不到,故棄之。2.2.2設計原理:1、信號頻譜信號頻譜可分為幅度頻譜和相位頻譜。幅度頻譜是將諧波振幅用線段高度表示并按各次諧波頻率的高低順序排列而得的圖形;相位頻譜與幅度頻譜類似,是各次諧波的初相與各次諧波頻率的關系圖形。由于各次諧波角頻率是基波角頻率的整數(shù)倍,因此,這種頻率是離散的“線性譜”。2、傅里葉級數(shù)(1)概念:任何周期函數(shù)都可以用正弦函數(shù)和余弦函數(shù)構(gòu)成的無窮級數(shù)來表示(選擇正弦函數(shù)與余弦函數(shù)作為基函

15、數(shù)是因為它們是正交的),這種三角級數(shù)后世稱為傅立葉級數(shù)。傅里葉級數(shù)在數(shù)論、組合數(shù)學、信號處理、概率論、統(tǒng)計學、密碼學、聲學、光學等領域都有著廣泛的應用。(2)傅里葉級數(shù)公式:傅里葉級數(shù)的展開式:x(t)=+ x(t)=+式中,T為信號的周期;稱為x(t)的直流分量;=稱為x(t)的基波;稱為x(t)的k次諧波分量。各系數(shù)的求解如下: (3)設計步驟: 寫出所需方波的函數(shù)表達式,需要用題目給定條件30MHZ計算出其周期為s。則方波表達式為分段函數(shù),在為30,在為-30. 利用上式傅里葉級數(shù)公式,可以設方波函數(shù)為奇函數(shù),則公式可寫為 n=1,2,3 將f(x)帶入30,l帶入3。 通過運算可以求出

16、 ,由已知=0 。將,帶入公式x(t)=+ 則可以計算出方波的傅里葉級數(shù)展開式。(4)設計的平臺環(huán)境:在c+開發(fā)平臺VC+ 中進行代碼編寫,主要利用MFCMFC是Win32API的包裝類,需要理解文檔視圖類的結(jié)構(gòu),窗口類的結(jié)構(gòu),消息流向等等。 程序流程圖:文件>>新建工程創(chuàng)建基本對話框保存文件根據(jù)規(guī)則繪制波形加入隨機抖動定義畫刷及諧波頻率變量初始化對話框添加控件 打開控件響應函數(shù)添加事件成員處理函數(shù)退出程序 圖2-1 方案程序框圖三、設計主要步驟3.1.創(chuàng)建客戶端應用程序,采用對話框架構(gòu)3.1.1運行VC+6.0軟件,并新建一個MFC工程,選擇”MFC AppWizard (exe

17、)” 選擇項目類型為MFC,工程名稱為CLOCK,工程路徑為:cusers.圖3-1 新建mfc工程3.1.2選擇基本對話框,點擊完成圖3-2 選擇基本對話框3.1.3出現(xiàn)新建工程對話框 新建工程信息如下: Win32:表明所創(chuàng)建的對話框是基于win32的應用程序 Cclockcpp: 應用程序類,對應的程序是clock.h和clock.cpp cclockDlg:對話框類,對應的程序是cclockDlg.h和cclockDlg.cpp MFC2.dll:使用公用的DLL表示MFC2.dll圖3-3 工程信息報表3.1.4默認工程對話框和控件如下圖3-4 工作界面3.1.5建立 clock類的

18、主對話框 在MFC界面左方的工作區(qū)(workspace)中選擇resourceVIEW卡,從中選擇dialog,雙擊IDD-CLOCK-DIALOG.右邊會出現(xiàn)對話框,出現(xiàn)控制面板。圖3-5 主對話框3.2.為對話框界面添加控件對象 3.2.1刪除多余的控件,并修改剩余按鈕控件的ID和標題如下:圖3-6 制作繪圖按鈕3.2.2添加兩個”靜態(tài)文本”控件,以便于對”編輯框”控件做標注和解釋,并修改其標題圖3-7 制作 靜態(tài)文本 控件3.2.3添加兩個”編輯框”控件,并將所有控件擺放成如下圖所示布局:圖3-8 界面中控件效果圖3.3為對話框中的控件對象定義相應的成員變量圖3-9 向?qū)ь悓υ捒?.3.

19、1在對話框上單擊右鍵,選擇”建立類向?qū)А保缦聢D所示圖3-10 修改控件屬性3.2選擇Member Variables(成員變量卡),并選擇IDC_EDIT1和IDC_EDIT2,單擊右邊”Add Variable”為”編輯框”控件定義相應的成員變量,具體定義如下所示:圖3-11 增加控件成員對話框3. 4添加響應消息的事件處理成員函數(shù) 點擊菜單view/classwizar 進入類向?qū)υ捒颍x擇Message maps(消息映射)卡,確定class name 是CMYSOCKET ,從Messages(消息)欄中選擇事件消息,然后選擇事件信息。圖3-12 添加成員函數(shù)3.4.1在對話框上單

20、擊右鍵,選擇”建立類向?qū)А?,選擇Message Maps(消息映射卡),確認Class name是”CClockDlg”,從Object IDs欄中選擇IDC_BUTTON(按鈕控件),并從Messages欄中選擇BN_CLICKED,然后點擊Add Function添加該事件,如下所示圖3-13 新建按鈕控件同樣的,給CClockDlg添加OnSetFont事件,如下圖所示圖3-14 新建按鈕控件3.5手工添加其他代碼3.4.1定義PI的值并且添加數(shù)學函數(shù)庫頭文件,代碼如下:#include "math.h" /調(diào)用數(shù)序函數(shù)庫頭文件#define PI 3.1415926

21、53 /定義PI的取值3.4.2為”編輯框”控件的消息響應函數(shù)編寫如下代碼。void CClockDlg:OnSetFont(CFont* pFont) / TODO: Add your specialized code here and/or call the base classm_edit1=0; /此為添加代碼m_edit2=0; /此為添加代碼CDialog:OnSetFont(pFont);3.4.3在對話框類的OnInitDialog中添加如下代碼。int m_edit1;int m_edit2;UpdateData(FALSE);3.4.4對按鈕的單擊消息響應函數(shù)OnButto

22、n編寫代碼,實現(xiàn)目標,得出最終結(jié)果,代碼如下。/以下為OnButton中的循環(huán)求和函數(shù)double make_y(int i,double r)double y=0;for(;i>-1;i-)y+=(-12)/(2*i+1)*PI)*sin(2*i+1)*r)*30;return y;void CClockDlg:OnButton() / TODO: Add your control notification handler code herechar buff116; / 定義字符數(shù)組,用于存放與X軸交點坐標(顯示只能是字符)FILE *fp1;fp1 = fopen("諧波

23、.txt","w+"); / 打開文件if( NULL = fp1 ) / 打開文件失敗的話,直接 返回return;char buff216; / 定義字符數(shù)組,用于存放與X軸交點坐標(顯示只能是字符)FILE *fp2;fp2 = fopen("抖動.txt","w+"); / 打開文件if( NULL = fp2 ) / 打開文件失敗的話,直接 返回return;/諧波參數(shù)可調(diào)繪圖代碼CRect rc(0,0,1200,350); / 構(gòu)造畫刷矩形區(qū)域rcCPen pen,cpen; / 創(chuàng)建pen和cpen畫筆pen

24、.CreatePen(PS_SOLID,2,RGB(0,0,0); / 創(chuàng)建一支黑色實心畫筆cpen.CreatePen(PS_SOLID,2,RGB(0,0,255); / 創(chuàng)建一支藍色實心畫筆CDC* pDC=GetDC(); /創(chuàng)建CDC類畫圖pDC->FillSolidRect(rc,RGB(255,255,255); /使用白色填充矩形rc區(qū)域pDC->SelectObject(&cpen); /將定義畫筆cpen選入設備上下文pDC->SetViewportOrg(100,200); /設置可視區(qū)域上下文的初始位置為(100,200)/繪制坐標軸int a

25、=0; / 初始化參數(shù)(初始原點坐標)int b=0;pDC->MoveTo(a,b); / 移動畫筆在原點處pDC->TextOut(a-15,b,"O"); / 添加原點字母OpDC->LineTo(a+1000,b); / 繪制X軸直線pDC->MoveTo(a,b); / 畫筆回到原點pDC->LineTo(a,b-150); / 繪制Y軸上半軸直線pDC->MoveTo(a,b); pDC->LineTo(a,b+150); / 繪制Y軸下半軸直線pDC->MoveTo(a,b); pDC->TextOut(a

26、+1010,b-5,"X/*(10-8)s"); / 為x軸添加標識X/*(10-8)spDC->TextOut(a-15,b-150,"Y"); / 為y軸添加標識YUpdateData(); /將EDIT控件值賦值給成員變量int i;double x,y=0,r;pDC->SelectObject(&pen); /將定義畫筆pen選入設備上下文for(x=0.0;x<1000;x=x+0.01) /制定諧波規(guī)則,并繪圖r=x/(30*2)*PI;y=make_y(m_edit2,r); pDC->MoveTo(dou

27、ble)x,(double)y); pDC->LineTo(double)x,(double)y);for(x=0;x<1000;x=x+60) /標注橫坐標值sprintf(buff1,"%.3f",x/4*0.1111); / 把橫坐標值轉(zhuǎn)換成字符類型pDC->TextOut(x,5,buff1); / 顯示橫坐標刻度值fprintf(fp1, "(%.3f,%d)n",x/4*0.1111,0); / 寫入文檔中cpen.DeleteObject(); /釋放畫筆pen.DeleteObject(); /釋放畫筆/相位抖動參數(shù)可調(diào)

28、繪圖代碼int n; / 坐標參數(shù)int c=100;int d=500;int freq=70;int freq1 = 1; / 定義一個臨時變量,用于判斷畫刷是否上升或下降CRect rc1(0,380,1200,820); / 構(gòu)造畫刷矩形區(qū)域rc1CPen apen,bpen; / 創(chuàng)建apen和bpen畫筆apen.CreatePen(PS_SOLID,1,RGB(0,0,0); / 創(chuàng)建一支黑色實心畫筆bpen.CreatePen(PS_SOLID,2,RGB(0,0,255); / 創(chuàng)建一支藍色實心畫筆CDC* pDC1=GetDC(); / 利用CDC類繪圖pDC1->F

29、illSolidRect(rc1,RGB(255,255,255); /使用白色填充矩形rc1區(qū)域pDC1->SelectObject(&bpen); /將定義畫筆bpen選入設備上下文/繪制坐標軸pDC1->MoveTo(c,d); / 確定畫筆起點pDC1->TextOut(c-15,d,"O"); / 添加原點字母OpDC1->LineTo(c+1000,d); / 繪制X軸直線pDC1->MoveTo(c,d); / 畫筆回到起點pDC1->LineTo(c,d-150); / 繪制Y軸上半軸直線pDC1->Move

30、To(c,d); pDC1->LineTo(c,d+150); / 繪制Y軸下半軸直線pDC1->MoveTo(c,d); pDC1->TextOut(c+1005,d-5,"X/(*10-8)s"); / 為x軸添加標識X/*(10-8)spDC1->TextOut(c-15,d-150,"Y"); / 為y軸添加標識YpDC1->SelectObject(&apen); /將定義畫筆apen選入設備上下文for(n = c;n<c+1000;n = n+freq+(rand()%(m_edit1+1)-1)

31、*10) /制定方波規(guī)則,并作圖pDC1->LineTo(n,d); / 移動畫筆if(1 = freq1) / 如果在橫坐標d = 400; / 畫上升沿freq1 = 0; / 改變臨時變量狀態(tài)elsed = 600; / 畫下降沿freq1 = 1; / 改變臨時變量狀態(tài),下次繪制時直接開始繪制上升沿sprintf(buff2,"%.3f",(n-100)/4*0.1111); / 把橫坐標值轉(zhuǎn)換成字符類型pDC1->TextOut(n,505,buff2); / 顯示橫坐標刻度值fprintf(fp2, "(%.3f,%d)n",(n

32、-100)/4*0.1111,0); / 寫入文檔中pDC1->LineTo(n,d); / 移動畫刷bpen.DeleteObject(); /釋放畫筆apen.DeleteObject(); /釋放畫筆3.6添加事件處理函數(shù): 在clockdlg.h中自動添加三個事件處理函數(shù)的聲明圖3-15 添加事件處理函數(shù)3.7.根據(jù)實際結(jié)果調(diào)整控件的位置以防遮擋或被遮擋 4、 設計結(jié)果與分析 4.1輸出界面:點擊運行后,進入到輸出界面,界面中有 相位抖動參數(shù) 和 諧波參數(shù) 兩個變量 分別控制時鐘信號的 延時 和 諧波組成 。圖4-1 輸出界面4.2選擇諧波次數(shù)為0 , 相位抖動參數(shù)為 0圖4-2

33、 一次諧波 與 無延時 是輸出波形 分析:由于諧波次數(shù)為0,所以信號是由基波構(gòu)成,輸出為正弦波。橫坐標是時間,從圖中可是信號的周期是,則頻率是30M Hz無延時體現(xiàn)在對信號抽樣、整形后周期沒變。4.3選擇諧波次數(shù)為7 , 相位抖動參數(shù)為 1圖4-3 七次諧波與一次相位抖動分析:圖中信號是由基波和七次諧波構(gòu)成,周期不變。加入時鐘抖動參數(shù)后周期變大了,此時的時鐘信號頻率也小于了30M Hz4.4相位抖動參數(shù)為3 諧波次數(shù)為33 時:圖4.4波形14.5相位抖動參數(shù)為5 諧波次數(shù)為55 時:圖4.5波形2五設計評述及收獲體會1、設計評述本次課設是利用C語言生成一個時鐘信號,在我們小組的通力合作下,成功的完成了本次課設的設計與制作。本次設計的重點是方波的傅里葉級數(shù)展開,在經(jīng)歷了多次失敗后,終于成功寫出了方波的傅里葉級數(shù)展開式。在設計方波時,我們將其寫為奇函數(shù),使得cos部分系數(shù)為零,減輕了傅里葉展開式的復雜程度,而且使函數(shù)繪制的優(yōu)美,大氣。繼而在之后的相位抖動參數(shù)中,我們將一些變量加入其公式中,并利用C語言rand語句讓其參數(shù)可以隨機改動,從而實現(xiàn)相位的抖動。對于諧波頻率參數(shù)的設計,我們在多次討論研究之后,決定利用C語言中的語句將其實現(xiàn),并使其參數(shù)可調(diào)。 本次設計中,對傅里葉級數(shù)進行

溫馨提示

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

評論

0/150

提交評論