基于STM32的簡易信號發(fā)生器_第1頁
基于STM32的簡易信號發(fā)生器_第2頁
基于STM32的簡易信號發(fā)生器_第3頁
基于STM32的簡易信號發(fā)生器_第4頁
基于STM32的簡易信號發(fā)生器_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 紹 興 文 理 學 院數 理 信 息 學 院 課 程 設 計 報 告 書 題目 基于STM32的簡易信號發(fā)生器 電子信息工程 專業(yè) 1班 姓 名 xxx 指導教師 xxx 時 間 2014年 7月12日 課程設計任務書 班 級電信111姓 名xx題 目基于STM32的簡易信號發(fā)生器技術參數、設計要求、檢測數據等要求采用DDS方法:(1)該信號發(fā)生器應能產生三角波、正弦波、方波、鋸齒波(2)該信號發(fā)生器為單極性輸出,0V3.3V(3)該信號發(fā)生器發(fā)生信號的基本頻率1KHZ,頻率可調(1KHZ5KHZ,步進10HZ)(4)該信號發(fā)生器信號初始相位可調(0-360度,步進1度)(5)功能選擇由按鍵

2、完成設計進度安排或工作計劃2014.7.3 2014.7.5: 教師布置課題,學生查詢相關資料,完成方案選擇、確定驗證方案。2014.7.62014.7.7: 設計模塊劃分、實現及各模塊仿真圖設計。2014.7.82014.7.10:設計整體實現、調試及驗證,并開始撰寫報告。2014.7.112014.7.12:課程設計報告撰寫并定稿,上交。其 它認真閱讀智能儀器儀表課程設計報告撰寫規(guī)范;課題小組經協商好要指定組長并明確分工,形成良好團隊工作氛圍;基于課題基本要求,各小組與指導老師討論,再將課題細化、增加要求;課題小組每成員均需各自撰寫一份課程設計報告。II 基于STM32的簡易波形發(fā)生器 摘

3、 要 函數信號發(fā)生器是一種能夠產生多種波形,如正弦波、方波、三角波、鋸齒波等的電路。函數信號發(fā)生器在電路實驗和設備檢測中具有十分廣泛的用途。通過對函數波形發(fā)生器的原理以及構成分析,可設計一個能變換出以上波形的波形發(fā)生器。本課題采用STM321 為控制芯片,采用DDS2的設計方法,可將采樣點經D/A3轉換后輸出任意波形,可通過調節(jié)D/A轉換的頻率來調節(jié)輸出波形的頻率,也可通過改變取點的起始位置來調節(jié)波形的初始相位。 關鍵詞 信號發(fā)生器 STM32 DDS 目 錄課程設計任務書I摘要.II1設計概述12設計方案23設計實現33.1設計框圖及流程圖33.2MCU控制模塊53.3按鍵控制模塊53.4信

4、號輸出模塊63.5LCD顯示模塊84設計驗證85總結11 1 設計概述信號發(fā)生器作為一種歷史悠久的測量儀器,早在20年代電子設備剛出現時就產生了。隨著通信和雷達技術的發(fā)展,40年代出現了主要用于測試各種接收機的標準信號發(fā)生器,使得信號發(fā)生器從定性分析的測試儀器發(fā)展成定量分析的測量儀器。同時還出現了可用來測量脈沖電路或作脈沖調制器的脈沖信號發(fā)生器。自60年代以來信號發(fā)生器有了迅速的發(fā)展,出現了函數發(fā)生器。這個時期的信號發(fā)生器多采用模擬電子技術,由分立元件或模擬集成電路構成,其電路結構復雜,且僅能產生正弦波、方波、鋸齒波和三角波等幾種簡單波形。自從70年代微處理器出現以后,利用微處理器、模數轉換器

5、和數模轉換器,硬件和軟件使信號發(fā)生器的功能擴大,產生比較復雜的波形。這時期的信號發(fā)生器多以軟件為主,實質是采用微處理器對D/A的程序控制,就可以得到各種簡單的波形。在80年代以后,數字技術日益成熟,信號發(fā)生器絕大部分不再使用機械驅動而采用數字電路,從一個頻率基準有數字合成電路產生可變頻率信號。90年代末出現了集中真正高性能的函數信號發(fā)生器,HP公司推出了型號為HP770S的信號模擬裝置系統,它是由HP8770A任意波形數字化和HP1770A波形發(fā)生軟件組成。信號發(fā)生器技術發(fā)展至今,引導技術潮流的仍是國外的幾大儀器公司,如日本橫河、Agilent、Tektronix等。美國的FLUKE公司的FL

6、UKE-25型函數發(fā)生器是現有的測試儀器中最具多樣性功能的幾種儀器之一,它和頻率計數器組合在一起,在任何條件下都可以給出很高的波形質量,能給出低失真的正弦波和三角波,還能給出過沖很小的快沿方波,其最高頻率可達到5MHz,最大輸出幅度可達到10Vpp。國內也有不少公司已經有了類似的儀器。如南京盛普儀器科技有限公司的SPF120DDS信號發(fā)生器,華高儀器生產的HG1600H型數字合成函數任意波形信號發(fā)生器。國內信號發(fā)生器起步晚,但發(fā)展至今,已經漸漸跟上國際的腳步,能夠利用高新技術開發(fā)出達到國際水平的高性能多功能信號發(fā)生器。信號發(fā)生器在生產實踐和科技領域中有著廣泛的應用,各種波形曲線均可用三角函數方

7、程式來表達。函數信號發(fā)生器是各種測試和實驗過程中不可缺少的工具,在通信、測量雷達、控制教學等領域應用十分廣泛。不論是在生產、科研還是在教學上,信號發(fā)生器都是電子工程師信號仿真實驗的最佳工具。而且,信號發(fā)生器的設計方法多,設計技術也越來越先進,隨著我國經濟和科技的發(fā)展,對對應的測試儀器和測試手段也提出了更高的要求,信號發(fā)生器已成為測試儀器中至關重要的一類,因此,開發(fā)信號發(fā)生器具有重大意義。 2 設計方案方案一:模數結合實現,一般是在模擬電路上產生函數信號波形,而用數字方式改變信號的頻率和幅度。如采用D/A裝換器與壓控電路改變信號頻率,用數控放大器或數控衰減器改變信號幅度等。方案二:模擬電路實現,

8、全采用模擬電路,可用正弦波發(fā)生器產生正弦波信號,然后過零比較產生方波,再經積分電路產生三角波。這種方法電路簡單,并具有良好的正弦波和方波信號。但要通過積分器電路產生同步的三角波信號,存在較大難度。原因是積分電路的積分時間常數通常不變,而隨著方波頻率改變,積分器輸出的三角波幅度將同時改變。若要保持三角波幅度,就得同時改變積分時間長度的大小,要實現這點會很難。方案三:數字電路實現,采用DDS方法,任何頻率的波形都可看做由一系列的取樣點所組成,可事先將各波形的數據點存儲在ROM中,再通過時鐘的控制順序從ROM中讀出,再經D/A轉化器進行逐點恢復。這種方案的波形精度主要取決于函數信號波形的存儲點數、D

9、/A轉換器的轉換速度、以及整個電路的時序處理等。設取樣時鐘頻率為,一個正弦波由N個取樣點構成,頻率控制字為K,則輸出正弦波信號的頻率為 公式2-1其信號頻率的高低,是通過改變D/A轉換器輸入數字量的速率或是取點數量來實現的。這種方案在信號頻率較低時,具有較好的波形質量。隨著信號頻率提高,需要提高輸入數字量的速率,或減少波形點數。波形點數的減少,將直接影響函數型號波形的質量,而數字量的輸入速率的提高也是有限。因此,該方案比較適合低頻信號,而較難產生高頻(如1MHz以上)信號。經上各方案比較,為切合本次課題,故采用方案三。 3 設計實現本課題硬件原理圖較為簡單,僅有一單片機STM32F103ZET

10、6及相應的一些外圍器件,每種波形在ROM中都存了360個點,在保持波形失真不太明顯的條件下,最高頻率時可取點40個,此時需要外加RC低通濾波器,使得輸出波形較為平滑。系統時鐘頻率為72MHz,理論上取40個點的輸出波形頻率為1.8MHz,但在不同頻率下,經過RC低通濾波后的波形會有幅值上的衰減,衰減程度在不同頻率下也各不相同,此時可在RC濾波后加入放大器提高幅值,由于此次設計不對5KHz以上頻率的波形有過多要求,所以幅值的變化不做太多的關注,僅嘗試提高頻率。顯示部分采用LCD12864,此LCD與MCU連接較易,僅需片選線、電源線、時鐘線及串行數據線,用法也較簡單,內置中文字庫,4*16點陣完

11、全夠實現本次課題所需顯示。本設計原理圖見附錄。3.1 設計框圖及流程圖本設計由四個模塊組成:MCU控制模塊、按鍵模塊、信號輸出模塊和LCD顯示模塊。如圖3-1所示:圖3-1 系統框圖 本設計的流程圖如圖3-2,主要需要完成的任務有:按鍵掃描、LCD的顯示和D/A轉換。因此在主程序中對各個模塊進行初始化。圖3-2 主函數流程圖 程序主函數包括時鐘樹、GPIO口、中斷的初始化。本設計利用定時器觸發(fā)DAC轉換器的DMA傳輸,事先將各波形的取樣點存在ROM中,在定時器作用下,將點取出,由DMA傳輸至D/A轉換,輸出,由于DMA傳輸不受主程序控制,因此主程序無需保持其運行。按鍵控制信號的變換,每個按鍵對

12、應一個IO口,當按鍵按下時電平觸發(fā)外部中斷,此時打開定時器,產生一個20ms的延時去抖動,進入定時器中斷后判斷IO口的電平是否與記錄的鍵值相同,若相同則說明確有按鍵按下。相同的按鍵有有著不同的鍵值,不同的鍵值搭配在程序內對應不同的狀態(tài)。此時根據不同的鍵值所對應的不同的狀態(tài)選擇將要執(zhí)行的操作。在波形結構體中保存了“波形”、“幅值”、“頻率”和“相位”四個參數信息,利用按鍵更改其中的值,按下“完成”鍵后確定修改狀態(tài),接著將目前狀態(tài)的各個參數信息顯示在LCD上,由此可完成對波形的自由修改。通過LCD顯示波形信息,可提高操作的可視性和便捷性。STM32F103ZET6硬件資源豐富,具有512KB的FL

13、ASH ROM和64KB的SRAM,具有144個引腳和105個GPIO口,因此采用獨立按鍵邊沿觸發(fā)的方法來檢測按鍵。LCD12864采用串行方式傳輸數據,只需三根數據線。DAC外設具有兩個輸出通道,通道1相位可調,通道2用作與通道1對比相位衡為0°。因此采用如表3-1引腳分配表。表3-1 引腳分配表引腳功能PA0“減”鍵PB10“加”鍵PB11“確定”鍵PB12“右”鍵PB13“左”鍵PB14“上”鍵PB15“下”鍵PE15LCD12864片選PE11LCD12864數據PE7LCD12864時鐘PA4信號輸出通道1PA5信號輸出通道23.2 MCU控制模塊系統的MCU采用STM32

14、F103ZET6作為控制模塊,主要完成按鍵掃描、信號輸出、LCD顯示等。STM32系列單片機具有內置DAC轉換器和DMA控制器,并有最高72MHz的主頻,可完成較高頻率信號的穩(wěn)定輸出。3.3 按鍵控制模塊系統采用一個搖桿(包含“上”、“下”、“左”、“右”、“選擇”鍵)和兩個獨立按鍵(“加”鍵、“減”鍵)來控制輸出波形的特征。由于STM32單片機的定時器資源豐富,因此按鍵消抖延時采用定時器中斷的方式。按鍵掃描模塊的程序流程圖如圖3-3、圖3-4所示: 圖3-3 外部中斷流程圖 圖3-4 定時器中斷流程圖 當確定有按鍵按下時,判斷鍵值并完成相應的動作。其中“上”、“下”、“左”、“右”鍵切換將要

15、更改的波形特征,“加”鍵和“減”鍵修改波形特征的值,如“幅值”、“頻率”和“相位”。3.4 信號輸出模塊單片機的DAC外設、DMA控制器和定時器共同協作完成信號波形的輸出。信號輸出采用定時器觸發(fā)DMA傳輸數據到DAC寄存器的方式,可大大降低信號輸出對CPU的占用率并提高波形的精準性。DAC信號輸出的流程圖如圖3-5所示:圖3-5 D/A轉換流程圖 輸出波形分別為:正弦波、方波、三角波、鋸齒波。程序中采用四個常數數組保存波形值。為了方便相位的變換,每個數組保存了360個波形數據。通過將常數數組中的固定值乘以一個比例系數后保存到新數組中,并將新數組的地址與DAC轉換寄存器的地址通過DMA控制器關聯

16、,完成幅值的變換。初始相位的更改,只需更改數據的起始取樣點即可。本設計的難點是頻率的提高。根據公式2-1可得出,要改變信號的頻率,可以通過改變頻率控制字K或改變DAC頻率實現。當到達一定值時,完成一次DAC轉換的時間將大于DMA傳輸的時間間隔,此時會出現部分值無法被轉換的情況,因此不可太高。通過調整頻率控制字K也可提高信號的頻率,即波形數據中每K個點取樣一個點,可使頻率大大提高。但是由于頻率控制字K的提高會造成波形的明顯失真,所以波形的輸出采用一級RC低通濾波器進行濾波,平滑波形。綜上所述,當頻率低于課題的基本要求5KHz時,通過改變實現頻率的變換。當頻率大于5KHz時,通過改變頻率控制字K提

17、高信號的頻率,并將波形通過RC低通濾波器濾波。RC濾波網絡如圖3-6所示: 圖3-6 RC濾波網絡原理圖根據RC濾波網絡截止頻率公式 公式3-1根據輸出波形的頻率適當調節(jié)R4的阻值可較好地實現低通濾波,平滑波形輸出。3.5 LCD顯示模塊本設計通過LCD12864顯示波形信息,MCU與LCD12864通過串行方式傳輸數據,當波形發(fā)生變化時立即更新LCD顯示信息,實現了人機界面的交互。4 設計驗證在RVMDK上編寫程序,編譯無誤后下載到MCU,將LCD與MCU連接,用示波器觀察D/A輸出波形,并通過相關的按鈕操作,觀察LCD上功能切換的顯示,各波形的輸出頻率相位的調節(jié)顯示,對應示波器的各波形參數

18、是否一致。調試結果如下。 圖4-1 正弦波 圖4-2 方波 圖4-3 三角波 圖4-4 鋸齒波如圖4-1、4-2、4-3、4-4所示,調節(jié)各功能按鈕,選擇波形,可在示波器上觀察相應的波形輸出,也可通過按鈕操作改變輸出波形的幅值及頻率,參數信息可在LCD上觀察。幅值的步進值最小為10mv,頻率的最小步進值為10Hz。初始相位調節(jié)功能驗證如圖4-5所示: 圖4-5 初始相位調節(jié)上方是初始相位為0度的正弦波,下方為初始相位180度的正弦波,相位最小步進值為1度。設計中通過多次調試,在保持每次定時時間內能完成DMA傳輸和D/A轉換條件下,定時器的最大速率能做到3MHz左右,此種情況下最大頻率在濾波器后失真不明顯能做到160KHz。大頻率輸出波形如圖4-6所示: 圖4-6 大頻率正弦波上方是D/A輸出波形,下方是經RC濾波器后的輸出波形??梢娫诖祟l率上,失真并不明顯。本次設計基本滿足課題的各項要求。5 總結這學期的課程設計中,我的任務是資料的查閱和收集,和數據的制作,并在程序編寫的過程中提供一定的思路和方向,參加了調試工作,提高了課

溫馨提示

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

評論

0/150

提交評論