基于AT89C51單片機的多功能函數(shù)信號發(fā)生器設計_第1頁
基于AT89C51單片機的多功能函數(shù)信號發(fā)生器設計_第2頁
基于AT89C51單片機的多功能函數(shù)信號發(fā)生器設計_第3頁
基于AT89C51單片機的多功能函數(shù)信號發(fā)生器設計_第4頁
基于AT89C51單片機的多功能函數(shù)信號發(fā)生器設計_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、海 南 師 范 大 學本 科 生 畢 業(yè) 論 文 題目:基于AT89C51單片機的多功能函數(shù)信號發(fā)生器設計 姓 名: xx 學 號: xxx 專 業(yè): 電子信息科學與技術 年 級: 2009 級 系 別: 電子系 指導老師: xxx完成日期: 2013年5月 - 21 -本科生畢業(yè)論文(設計)獨創(chuàng)性聲明本人聲明所呈交的畢業(yè)論文(設計)是本人在導師指導下進行的研究工作及取得的研究成果,除了文中特別加以標注和致謝的地方外,本論文中沒有抄襲他人研究成果和偽造數(shù)據(jù)等行為 。與我一同工作的同志對本研究所做的任何貢獻均已在論文中作了明確的說明并表示謝意。論文(設計)作者簽名: 日期: 本科生畢業(yè)論文(設計

2、)使用授權聲明海南師范大學有權保留并向國家有關部門或機構送交畢業(yè)論文(設計)的復印件和磁盤,允許畢業(yè)論文(設計)被查閱和借閱。本人授權海南師范大學可以將本畢業(yè)論文(設計)的全部或部分內容編入有關數(shù)據(jù)庫進行檢索,可以采用影印、縮印或其他復印手段保存、匯編畢業(yè)論文(設計)。論文(設計)作者簽名: 日期: 指 導 教 師 簽 名: 日期: 目 錄1.引言 2 1.1課題研究背景2 1.2波形介紹22.系統(tǒng)設計 4 2.1方案選擇4 2.2框圖設計4 2.3單片機模塊52.3.1單片機最小系統(tǒng)52.4按鍵控制電路設計82.5 D/A轉換電路 82.5.1 D/A轉換的必要性 8 2.5.2 DAC08

3、32的特性及應用 82.6 LED顯示電路 102.7 運算放大器的特性及應用 133.硬件設計143.1整體的電路原理圖 143.2元件清單154.軟件設計 164.1程序流程圖 164.2程序清單175系統(tǒng)仿真及調試185.1系統(tǒng)仿真圖185.2系統(tǒng)調試216 總結217 參考文獻23基于AT89C51單片機的多功能函數(shù)信號發(fā)生器設計作者:xx 指導老師:xx(海南師范大學,電子系,海口,571158) 摘 要:信號發(fā)生器也叫做振蕩器或是信號源,在現(xiàn)在的科技生產(chǎn)實踐中有著廣泛而重要的應用?,F(xiàn)在的特殊波形發(fā)生器在價格上不夠經(jīng)濟,有些昂貴。而基于AT89C51單片機的函數(shù)信號發(fā)生器可以滿足此要

4、求。根據(jù)傅里葉變換,各種波形均可以用三角函數(shù)的相關式子表示出來。函數(shù)信號發(fā)生器能夠產(chǎn)生多種波形,如三角波、鋸齒波、矩形波、方波和正弦波。本文通過在單片機的外圍加上鍵盤,控制波形的種類和輸出頻率的大小,加上LED顯示出相應信息。單片機輸出為數(shù)字信號,于是在輸出端用DAC0832進行D/A轉換,再通過兩級運放對波形進行調整。最終在示波器上顯示出來。關鍵詞:信號發(fā)生器 AT89C51 D/A轉換 波形調整The design of multifunction signal generator based on AT89C51Author:Zhang qin Tutor:Professor Lin j

5、i(Department of Electronic, Hainan normal university,Haikou, 571158)Abstract:Signal generator is also called source or oscillator. It has been widely used in production practice or the field of science and technology. Now, the price of the special waveform generator is not economic and some expensiv

6、e. While the function signal generator based on AT89C51 can satisfy this requirement. As we know, it can be represented with trigonometric function equation for kinds of waveform curve. The one can produce various waveform, such as triangle wave, sawtooth wave, rectangle wave, square wave and sine w

7、ave is often called function signal generator. Function signal generator is broad-spectrum in circuit experiment and test equipment. It can control the type and the output frequency of the waveform when the microcontroller are equipped with the keyboard. Also when it coupled with the LED it can be d

8、isplayed. It can be sure that it is digital signal that come from the microcontroller. So we should add the DAC0832 on the output side for D/A conversion. With the two levels of op-amp we can adjust waveform. Finally display on the oscilloscope.Keywords:signal generator, AT89C51, D/A conversion,wave

9、 adjust1. 引 言 1.1 課題研究背景隨著經(jīng)濟與科技不斷發(fā)展,相應的測試儀器與手段也有了許多改善與提高,但是對之要求也不斷提高。波形發(fā)生器的信號已知,使用者然后根據(jù)具體的要求,將其作為激勵源,測得感興趣的參數(shù)。信號源仿真各種測試信號,給待測電路,從而滿足現(xiàn)實需求。信號發(fā)生器在仿真實驗占有重要地位,對于測試儀器來說也同樣不可缺少。因此對相關信號發(fā)生器的研究開發(fā)有著一定的意義。傳統(tǒng)的信號發(fā)生器電路復雜,控制靈活度不夠,成本也相對較高。雖然我國所研制的波形發(fā)生器在一定程度上已有了一些成果,但與國外技術確實還存在一定差距,因此很有必要提高相關方面的研究。利用單片機的控制靈活性,外設處理能力強

10、等特點,實現(xiàn)頻率與幅度可調的多種波形,這就克服了傳統(tǒng)的缺點,具有良好的實用性。同時根據(jù)程序的易控制性,可以容易實現(xiàn)各種較復雜的調頻調幅功能。 1.2 波形介紹 ·正弦波正弦信號可用如下形式表示f (t)=Asin(t+ ) (1)其中,A 為振幅, 是角頻率, 為初相位。正弦函數(shù)為一周期信號如下圖1所示:圖1 正弦波·方波方波函數(shù)是我們常用且所熟知的簡單波形函數(shù),做脈沖等,其表示形式如下: (2)方波波形如下:圖2 圖形當方波下半段幅值為0時,就為矩形波,一個原理,所以不再贅述矩形波。·鋸齒波鋸齒波如圖3所示:圖3 鋸齒波圖形·三角波三角波波形如下圖所示

11、:圖42.系統(tǒng)設計2.1方案選擇方案一:利用單片的函數(shù)發(fā)生器的傳統(tǒng)方式,比如8038就行。它可很容易地產(chǎn)生正弦波和方波等波形,而后用數(shù)/模轉換器對電壓進行調制,也可以用數(shù)字調控對頻率實現(xiàn)改變,但這種方法產(chǎn)生頻率不穩(wěn)定。方案二:采用頻率合成器,鎖相環(huán)式的。對于所選擇的頻率,用VCO(壓控振蕩器)加以選定。這種方法較第一種性能上好,但是對于頻率的輸出范圍難以達到。而且有一個特點,即電路較為復雜。方案三:可以利用單片機編程的方法來實現(xiàn)波形的輸出??蛇x用AT89C51作為控制器,輸出相應波形的數(shù)字信號,再用D/A轉換器輸出相應波形的模擬信號。用DAC0832作為D/A轉換器,再經(jīng)過兩級放大后輸出,最終

12、在示波器上顯示??梢允褂冒存I掃描來實現(xiàn)波形的變化3。由于方案一的輸出信號的頻率不穩(wěn)定還有二方案的電路較為復雜,頻率可調范圍難以達標等缺點,所以決定采用方案三的設計方法。方案三的設計用軟件可以很方便的實現(xiàn)對硬件的控制,輸出需要的波形。而且方案三中涉及的器件都是容易得到而且價格較為便宜的,所以價格上也有優(yōu)勢。2.2框圖設計基于AT89C51單片機的函數(shù)信號發(fā)生器由電源電路、單片機主控電路、信號輸出電路和按鍵控制電路四部分組成,整體設計框圖如圖所示復位電路按鍵電路AT89C51主控電路輸出電路電源電路圖5 函數(shù)信號發(fā)生器系統(tǒng)圖AT89C51單片機是整個函數(shù)信號發(fā)生器的主控部分,通過電腦對程序改寫,可

13、以產(chǎn)生不同波形,也可對同種波形的頻率幅度進變換。當單片機輸出數(shù)字信號經(jīng)過轉換電路后輸出相應模擬信號。上圖中輸出電路包涵轉換電路與整波電路。下圖為函數(shù)信號發(fā)生器的原理圖。輸出波形濾波放大D/A轉換器接口電路89C51單片機圖6 信號發(fā)生器原理框圖2.3單片機模塊2.3.1單片機最小系統(tǒng) 8051片內有4KB的ROM/EPROM,因此只需要外接晶振電路和復位電路就可以構成最小系統(tǒng)了,如圖所示。圖7 單片機最小系統(tǒng)·該最小系統(tǒng)的特點如下:(1)由于片外沒有擴展存儲器和外設,P0、P1、P2、P3都可以作為用戶I/O 接口使用。(2)片內數(shù)據(jù)存儲器有128B,地址空間為00H7FH,片外沒數(shù)

14、據(jù)存儲器。(3)片內有4KB的程序存儲器,地址空間為0000H0FFFH,沒有偏外存儲器,應接高電平。(4)可以使用兩個定時/計數(shù)器T0和T1,一個全雙工的串行通信接口,5個中斷源1。·晶振電路工作原理及應用 單片機有18、19兩引腳。分別為XTAL1和XTAL2。單片機采取內部振蕩電路時,將這兩引腳接石英晶體與微調電容。此設計采用的是12M晶振和兩個30pF的電容。在芯片內部結構中,XTAL1和XTAL2引腳是一反相放大器的兩個輸入端,構成單片機內部振蕩器。同樣,根據(jù)需要的不同,也可采用外部時鐘方式。本次設計采用內部時鐘方式。如圖所示。圖8 內部時鐘方式XTAL1XTAL2

15、3;單片機復位電路工作原理及應用計算機在啟動運行時都需要復位,復位是使中央處理器CPU和內部其他部件處于一個確定的初始狀態(tài),從這個狀態(tài)開始工作1。89C51單片機有一個復位引腳RST,高電頻有效。在時鐘電路工作以后,當外部電路使得RST端出現(xiàn)2個機器周期以上的高電平后系統(tǒng)就會內部復位1。我們采用按鍵復位方式。如圖所示。VccRSTVssMCS-511k200W圖9 按鈕復位電路2.4按鍵控制與顯示電路設計 本次設計共設計了4個按鍵,分別為開關S1、S2、S3和S4。分別接單片機的P3.0、P3.1、P3.3、P3.4口。S1用來控制輸出波的類別,每按一次,切換到另一個波形;S2與S3則調節(jié)輸出

16、波形頻率的增減,按S2時,輸出平率增加,而S3則減?。籗4則用來顯示波形的種類與頻率的大小。如圖所示。圖10 按鍵電路2.5 D/A轉換電路D/A轉換器經(jīng)常用于信號發(fā)生器的設計中,通過它可以生成各種波形。其基本原理如下:利用D/A轉換器輸出模擬量與輸入數(shù)字量成正比這一特點,通過程序控制CPU向D/A轉換器送出隨時間成一定規(guī)律變化的數(shù)字,則D/A轉換器輸出端就可輸出隨時間按一定規(guī)律變化的波形1。2.5.1 D/A轉換的必要性D/A是先把數(shù)字量轉換成模擬量,在單片機設計中經(jīng)常用到。眾所周知,單片機輸出信號為數(shù)字量,而本設計旨在輸出各種波形,屬模擬量,所以單片機的數(shù)字量必須經(jīng)過D/A的轉換變?yōu)槟M信

17、號才能滿足要求。 2.5.2 DAC0832的特性及應用DAC0832是一個8位的D/A轉換器,為DAC0830的一種。DAC0832內部主要由8為輸入寄存器、8位DAC寄存器、8位D/A轉換器和控制邏輯電路組成。由于DAC0832與單片機接口方便,其轉換與控制較易實現(xiàn),所以在實際工作中有其重要的作用,使用的也較為頻繁。其內部結構及引腳圖如圖所示。圖11 DAC0832的內部結構圖12 DAC0832的引腳圖 DAC0832是D/A轉換器的一類,屬電流型,所以后要跟著I/V轉換。數(shù)字輸入端可以有單緩沖、雙緩沖或直通方式輸入。當引腳、直接接地時,ILE接電源,DAC0832處于直通工作方式。這種

18、狀態(tài)下,有輸入就立即有輸出,處理方式簡單,但只能通過獨立的I/O接口連接。當連接ILE、和引腳,使得兩鎖存器分別工作在直通與受控狀態(tài),或者兩個同事被控制,則DAC0832處于單緩沖工作方式1。只要數(shù)據(jù)DAC0832寫入8位輸入鎖存器,就立即開始轉換。雙緩沖方式即將對8位DAC寄存器與對鎖存器的控制分開進行,占用的I/O口相對較大。根據(jù)以上分析,此次設計選取單緩沖方式。如圖所示。圖13 DAC0832單緩沖方式的連接2.6 顯示電路顯示電路分為3部分,分別為LED燈顯示,LED數(shù)碼管顯示,最后還有示波器顯示。 ·LED燈顯示本次設計共用了4個LED燈,分別表示示波器上顯示了對應的波形,

19、單片機的P2.4P2.7分別控制相應燈的亮滅。電路圖如圖所示。圖14 ·LED數(shù)碼管顯示 本次LED數(shù)碼管的作用是用來顯示相應輸出信號的頻率。LED數(shù)碼管顯示電路盡管其所能顯示的信息簡單,但由于其清晰、亮度高使用時間長和所需電壓要求低等優(yōu)勢,在單片機應用中有著應用頻率較高。LED數(shù)碼管顯示器是簡單地發(fā)光二級管按特定的電路連接起來的顯示性器件。而我們在一些單片機設計中常用的是8段式的LED數(shù)碼管顯示器,其分為兩類,共陰和共陽之分。其結構如圖所示。本次設計采用共陰方式。圖15 LED數(shù)碼管結構圖常用數(shù)字和字符的編碼如下表:表1 常用字段編碼表顯示字符共陰極字段碼共陽極字段碼顯示字符共陰極

20、字段碼共陽極字段碼03FHC0HC39HC6H106HF9HD5EHA1H25BHA4HE79H86H34FHB0HF71H8EH466H99HP73H8CH56DH92HU3EHC1H67DH82HT31HCEH707HF8HY6EH91H87FH80HL38HC7H96FH90H8FFH00HA77H88H“滅”00FFHB7CH83HLED數(shù)碼管在顯示的方式上有動態(tài)顯示和靜態(tài)顯示兩種方法。當LED靜態(tài)顯示時,公共端接地或接電源,根據(jù)共陰還是共陽決定。但每一段的段選段都要與I/O接口連接。這種方式結構簡單,程序也簡單易理解。但缺點也因此點而來,一個數(shù)碼管就要8個I/O口,數(shù)碼管若多有幾個,

21、則就會占用很多I/O口。而當LED采取動態(tài)顯示時,是將所有數(shù)碼管的段選段并接在一起的,用公共的I/O控制端,公共端不接地或是電源,而是連接I/O口,實現(xiàn)位選,即選取那個數(shù)碼管亮,幾個數(shù)碼管輪流顯示相應信息,這樣不斷循環(huán)。根據(jù)人眼短暫滯留性,當循環(huán)周期足夠快時,看著就像幾個一起顯示的。此種方式優(yōu)點是所用I/O口少,線路較簡單,但軟件與CPU的占用較大。一般當所用LED顯示器的個數(shù)少時用靜態(tài)顯示。反之則用動態(tài)顯示。本次設計采取了動態(tài)顯示的方案完成顯示工作。LED動態(tài)顯示方式如圖所示。圖16 LED動態(tài)顯示2.7 放大電路設計 可知,單片機出來的信號經(jīng)D/A轉換后的模擬信號也只是電流信號,所以要將次

22、電流信號轉換為電壓信號。于是,需加上雙極性轉化電路。此電路需要兩個放大器,若干電阻,其具體電路如圖所示。圖17 雙極性轉化電路 圖中第一個放大器的作用是將輸出的電流信號轉換成電壓信號,第二個運算放大器和兩電阻組成的是方向加法器。3硬件設計3.1整體的電路原理圖圖18 整體仿真電路3.2元件清單表2 元器件元件名稱型號數(shù)量/個用途單片機AT89C511主控芯片晶振12MHz1晶振電路電容30pF2晶振電路電解電容10uF1復位電路電阻10k歐1復位電路開關BUTTON1復位電路開關BUTTON4選擇輸出集成塊DAC08321D/A轉換集成塊LM3582運放電路集成塊74LS5731驅動電路數(shù)碼管

23、共陰、藍色1顯示電路電阻10k歐、7k歐2運放電路滑動變阻器10k歐1運放電路電源+5V1提供電源排阻1k1顯示電路發(fā)光二級管紅色4顯示電路3 軟件設計4.1程序流程圖開 始各芯片初始化按鍵按下?s1num+S4按下S3按下S2按下S1按下顯示頻率域波形種類頻率f減少LED顯示LED顯示頻率f增加s1num=0s1num=1s1num=2s1num=3輸出正弦波,LED顯示A2輸出矩形波,LED顯示C2輸出鋸齒波,LED顯示D2輸出三角波,LED顯示B2圖19 程序流程圖 3.2 程序代碼·正弦波的代碼可分為256個數(shù)值,相應時段付相應值,這樣既可產(chǎn)生模擬的正弦波形,代碼如下

24、3;單片機輸出正弦波三角波方波等信號的程序如下: /按鍵S1按一下,輸出正弦波/按鍵S1按兩下,輸出三角波 /按鍵S1按三下,輸出方波/ 按鍵S1按4下,輸出鋸齒波·頻率顯示部分:當按鍵S4按下后,顯示頻率,頻率計算公式為TH0=(65535-temp)/256; TL0=(65535-temp)%256; /temp定義為定時器定義時間 f=(int)(1000000/(temp*256); /f為頻率·頻率控制部分:根據(jù)按鍵控制temp的值,頻率就會增大或減小。4 系統(tǒng)仿真及調試5.1系統(tǒng)仿真圖正弦波如下圖圖20 仿真正弦波形三角波如下圖所示圖21 仿真三角波形方波波形

25、如下圖所示圖22 仿真方波波形鋸齒波波形如下圖所示圖23 仿真鋸齒波波形實物波形及頻率,如下圖所示 圖24實物的顯示圖(左正弦波,42Hz,右三角波,32Hz)5.2系統(tǒng)調試本次設計是函數(shù)信號發(fā)生器,所以所用元器件盡量與理論的器件相符,這樣是為使誤差盡量減小。我們知道單片機的硬件調試與軟件調試是分不開的。信號沒有輸出是有很多方面的,許多硬件錯誤是可以結合微調軟件程序發(fā)現(xiàn)和糾正的。但是,從本次設計的調試過程中,可以發(fā)現(xiàn)硬件調試是最為重要和基礎的。因為若存在明顯的硬件錯誤根本就不會有任何顯示結果,更別談軟件的調試了。硬件調試主要目的是把電路中各參數(shù)值調整到最設計的理想要求。最開始就是要先確保設計的正確性。其次就是排除小障礙,優(yōu)化電路。參數(shù)值的取舍,短路斷路虛焊等單片機是本次設計的核心,一定要確保其連接的正確性。比如接電源的40腳是否為+5V,晶振是否作用,復位腳RST等。結合電路,就容易檢測出故障。 6 小結畢業(yè)設計是每一個大學生根據(jù)自己專業(yè)所學,大學四年積累的知識總結與應用。通過畢業(yè)設計,鍛煉我們綜合運用知識,提出問題,分析問題,及解決問題的能力。特別是理論聯(lián)系實際。在我認為,作為電子專業(yè)類的本科生,掌握單片機的應用及開發(fā)技術是最基本的,也是必要的。單片機是以后從事相關嵌入式研發(fā)最為基本的入門芯片,較FPGA更為低端。所以

溫馨提示

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

評論

0/150

提交評論