畢業(yè)設計---信號發(fā)生器的設計_第1頁
已閱讀1頁,還剩29頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  畢業(yè)設計(論文)</b></p><p><b>  信號發(fā)生器的設計</b></p><p>  學院(系): 桂電北海學院 </p><p>  專 業(yè): 電子信息工程技術  </p><p>  學 號:

2、 </p><p>  學生姓名: </p><p>  指導教師: xx </p><p>  畢業(yè)設計(論文)任務書</p><p>  指導老師:xx 工作單位:桂林電子科技大學職業(yè)技術學院</p><p>  設計(論文)題目:基于

3、單片機的信號發(fā)生器的設計</p><p>  設計(論文)主要內(nèi)容:</p><p>  設計一個基于單片機的信號發(fā)生器</p><p>  要求完成的主要任務:</p><p>  1、設計一個滿足以下要求的信號發(fā)生器:</p><p> ?。?)用單片機設計一個能產(chǎn)生方波和三角波的周期性波形的信號發(fā)生器;</

4、p><p>  (2)產(chǎn)生的信號頻率為200Hz;</p><p> ?。?)繪制系統(tǒng)硬件電路原理圖,并進行系統(tǒng)仿真;</p><p>  (4)完成硬件制作,實現(xiàn)系統(tǒng)功能,并用示波器觀察輸出信號的波形;</p><p>  2、完成畢業(yè)論文的撰寫。</p><p><b>  必讀參考資料:</b>

5、</p><p>  [1] 郭天祥.新概念51單片機C語言教程.北京.電子工業(yè)出版社(2010年)</p><p>  [2] 王連英.模擬電子技術.北京. 高等教育出版社(2008年)</p><p>  [3] 張秀國.單片機C語言程序設計教程與實訓.北京.北京大學出版社(2001年)</p><p>  [4] 李 萍.AT89S5

6、1單片機原理開發(fā)與應用實例.北京.中國電力出版社(2008年)</p><p>  [5] 康萬新.畢業(yè)設計指導及案例剖析.北京.清華大學出版社 (2007年)</p><p>  [6] 曾令琴.電路分析基礎(第2版).北京.人民郵電出版社(2009年) </p><p><b>  指導老師簽名:</b></p><p&

7、gt;<b>  系主任簽名:</b></p><p>  畢業(yè)設計(論文)開題報告</p><p><b>  目 錄</b></p><p><b>  摘 要7</b></p><p>  Abstract8</p><p><b>

8、;  一、緒 論9</b></p><p>  1.1 信號發(fā)生器的歷史背景9</p><p>  1.2 信號發(fā)生器10</p><p>  1.3 信號發(fā)生器的應用10</p><p>  1.4 信號發(fā)生器的發(fā)展趨勢10</p><p>  二、方案論證與比較 11</p>

9、<p>  2.1 數(shù)模電路控制的信號發(fā)生器11</p><p>  2.2 單片機控制的信號發(fā)生器11</p><p>  三、系統(tǒng)總體設計12</p><p>  3.1 設計的目的12</p><p>  3.2 設計的要求12</p><p>  3.3 設計的構想12</p>

10、<p>  3.4 系統(tǒng)結構13</p><p>  四、硬件電路設計14</p><p>  4.1單片機的AT89C51的簡介14</p><p>  4.1.1單片機的AT89C51的主要特性14</p><p>  4.1.2單片機的小系統(tǒng)的基本電路14</p><p>  4.2 DA

11、C0832數(shù)模轉換器14</p><p>  4.2.1 DAC0832芯片的簡介14</p><p>  4.2.2 DAC0832芯片的引腳功能15</p><p>  4.2.2 DAC0832芯片的應用17</p><p>  4.3 接口電路17</p><p>  4.1.1 按鍵接口電路17&

12、lt;/p><p>  4.1.1 按鍵去抖的方法18</p><p>  4.4 顯示電路18</p><p>  五、軟件程序設計19</p><p>  5.1 軟件設計流程圖19</p><p>  5.1.1主程序流程圖19</p><p>  5.1.2 DAC0832數(shù)模轉換

13、模塊設計20</p><p>  5.2 波形的實現(xiàn)過程及實驗仿真波形圖21</p><p>  思考及解決問題22</p><p><b>  總 結23</b></p><p><b>  參考文獻24</b></p><p><b>  致 謝25

14、</b></p><p>  附錄一 總原理圖26</p><p>  附錄二 系統(tǒng)源程序27</p><p><b>  摘 要</b></p><p>  隨著信息技術革命的不斷深入,以及計算機技術的快速發(fā)展,單片機的應用越來越廣泛了,并且已經(jīng)逐漸地發(fā)展成為了一門比較關鍵的技術學科。進而基于單片機為核

15、心的設計課題也越來越廣泛,例如信號發(fā)生器。傳統(tǒng)的電子電路與系統(tǒng)設計方法周期長,成本高,效率低。目前使用的信號發(fā)生器大部分是利用分立元件組成的體積大,可靠性差,準確度低。然而以AT89C51單片機為核心設計了一個低頻函數(shù)信號發(fā)生器讀數(shù)直觀,精確,性能穩(wěn)定,操作方便。信號發(fā)生器采用數(shù)字波形合成技術,通過硬件電路和軟件程序相結合,可輸出自定義波形,如方波、三角波、正弦波及其他任意波形。而此次設計使用的是AT89C51單片機構成的發(fā)生器,可產(chǎn)生

16、三角波、方波、正弦波等多種波形,波形的頻率可用程序控制改變。在單片機上加外圍器件獨立式開關按鍵,通過開關按鍵控制波形的選擇。在單片機的輸出端口接DAC0832數(shù)模轉換器進行D/A轉換,再通過運放LM358進行波形調整,最后輸出波形接在示波器上顯示。波形的頻率和幅度在一定范圍內(nèi)可任意改變該信號發(fā)生器具有體積小、價格低、性能穩(wěn)定、功能齊全的優(yōu)點。</p><p>  關鍵詞: AT89C51;DAC0832;LM35

17、8;低頻信號發(fā)生器;按鍵;</p><p><b>  Abstract</b></p><p>  With the deepening of the information technology revolution and the rapid development of computer technology, microcontrollers are bec

18、oming more widely, and has gradually developed into a more critical technical discipline. Then the core chip based on the design issues are increasingly being used, such as signal generators.The raditional method of elec

19、tronic circuits and system design cycle, high costs and low efficiency. Most signal generators currently in use is the use of discrete components </p><p>  Keywords: AT89C51; DAC0832; LM358; low-frequency si

20、gnal generator; button;</p><p><b>  一、緒 論</b></p><p>  1.1信號發(fā)生器的歷史背景</p><p>  信號發(fā)生器是一種悠久的測量儀器,早在20年代電子設備剛出現(xiàn)時他就產(chǎn)生了。隨著通信和雷達技術的發(fā)展,40年代出現(xiàn)了主要用于測試各種接受機的標準信號發(fā)生器,使信號發(fā)生器從定性分析的測試儀

21、器發(fā)展成定量分析的測量儀器。同時還出現(xiàn)了可用來測量脈沖電路或用作賣場調制器的脈沖信號發(fā)生器。由于早期的信號發(fā)生器機械結構比較復雜,功率比較大,電路比較簡單,因此發(fā)展速度比較慢。直到1964年才出現(xiàn)第一臺全晶體管的信號發(fā)生器。</p><p>  自60年代以來信號發(fā)生器有了迅速地發(fā)展,出現(xiàn)了函數(shù)發(fā)生器,這個時期的信號發(fā)生器多采用模擬電子技術,由分立元件或模擬集成電路構成,其電路結構復雜,且僅能產(chǎn)生正弦波、三角波、

22、方波和鋸齒波等幾種簡單波形,由于模擬電路的漂移較大,使其輸出的波形的幅度穩(wěn)定性差,而且模擬器件構成的電路存在著尺寸大、價格貴、功耗大等缺點,并且要產(chǎn)生較為復雜的信號波形則電路結構非常復雜。自從70年代微處理器出現(xiàn)以后,利用微處理器、模數(shù)轉換器和數(shù)模轉換器,硬件和軟件的結合使信號發(fā)生器的功能擴大,產(chǎn)生比較復雜的波形。這時期的信號發(fā)生器多以軟件為主,實質是采用微處理器對D/A數(shù)模轉換器的程序控制,就可以得到各種簡單的波形。軟件控制波形的一個

23、最大缺點就是輸出波形的頻率低,這主要是由CPU得工作速度決定的,如果想要提高頻率可以改進軟件程序減少其執(zhí)行周期時間或提高CPU的時鐘周期,但這些辦法是有限的,根本的辦法還是要改進硬件電路。</p><p>  隨著現(xiàn)在電子、計算機和信號處理等技術的發(fā)展,極大促進了數(shù)字化技術在電子測量儀器中的應用,使原有的模擬信號處理逐步被數(shù)字信號處理代替,從而擴充了儀器信號的處理能力,提高了信號測量的精準度和變換速度,克服了模擬

24、信號處理的諸多缺點,數(shù)字信號發(fā)生器隨之發(fā)展起來。信號發(fā)生器的有了非常速度的發(fā)展,隨之掃頻信號發(fā)生器、合成信號發(fā)生器、程控信號發(fā)生器等新種類。各類信號發(fā)生器的主要性能指標也都有了大幅度的提高,同時在簡化機械結構、小型化、多功能等各方面也有了顯著地進展。</p><p>  近年來隨著GSM、GPRS、3G、BlueTooth乃至已經(jīng)被提出的標準的4G等移動通信以及LMDS、無線本地環(huán)路等無線接入的發(fā)展,同時加上合成

25、孔徑雷達、多普勒沖雷達等現(xiàn)代軍事、國防、航天航空等在科技上的不斷創(chuàng)新與進步,世界各國非常重視頻率合成器的發(fā)展。所有的這些社會需求以及微電子技術、計算機技術、信號處理技術等本身的不斷進步都極大刺激了頻率合成技術的發(fā)展。隨著低價格、高時鐘頻率、高性能的新一代DDS芯片的問世,一些高端的信號發(fā)生器可以產(chǎn)生通信信號。同時輸出波形的頻率分辨率、頻率精度等指標也有很大的提高。</p><p><b>  1.2信號

26、發(fā)生器</b></p><p>  凡是產(chǎn)生測試信號的儀器,統(tǒng)稱為信號源, 也稱為信號發(fā)生器,它用于產(chǎn)生被測電路所需特定參數(shù)的電測試信號。在測試、研究或調整電子電路及設備時,為測定電路的一些電參量,如測量頻率響應、噪聲系數(shù),為電壓表定度等,都要求提供符合所定技術條件的電信號,以模擬在實際工作中使用的待測設備的激勵信號。當要求進行系統(tǒng)的穩(wěn)態(tài)特性測量時,需使用振幅、頻率已知的正弦信號源。當測試系統(tǒng)的瞬態(tài)特

27、性時,又需使用前沿時間、脈沖寬度和重復周期已知的矩形脈沖源。并且要求信號源輸出信號的參數(shù),如頻率、波形、輸出電壓或功率等,能在一定范圍內(nèi)進行精確調整,有很好的穩(wěn)定性,有輸出指示。 </p><p>  信號發(fā)生器的應用非常廣泛,種類繁多。首先,信號發(fā)生器可以分通用和專用兩大類,專用信號發(fā)生器主要為了某種特殊的測量目的而研制,如電視信號發(fā)生器、脈沖編碼信號發(fā)生器等。這種發(fā)生器的特性是受測量對象的要求所制約的。其次,

28、信號發(fā)生器按輸出波形又可分為正弦波、脈沖波、函數(shù)和任意發(fā)生器等。再次,按其產(chǎn)生頻率的方法又可分為諧振法和合成法兩種。一般傳統(tǒng)的信號發(fā)生器采用諧振法,即用具有頻率選擇性的回路來產(chǎn)生正弦振蕩,獲得所需頻率。但也可以通過頻率合成技術來獲得所需頻率,利用此技術制成的信號發(fā)生器,通常被稱為合成信號發(fā)生器。</p><p>  1.3信號發(fā)生器的應用</p><p>  信號發(fā)生器在生產(chǎn)實踐和科技領域

29、中有著廣泛的應用。各種波形曲線均可以用三角函數(shù)方程式來表示。能夠產(chǎn)生多種波形,如三角波、鋸齒波、矩形波(含方波)、正弦波的電路被稱為函數(shù)信號發(fā)生器。函數(shù)信號發(fā)生器在電路實驗和設備檢測中具有十分廣泛的用途。例如在通信、廣播、電視系統(tǒng)中,都需要射頻(高頻)發(fā)射,這里的射頻波就是載波,把音頻(低頻)、視頻信號或脈沖信號運載出去,就需要能夠產(chǎn)生高頻的振蕩器。在工業(yè)、農(nóng)業(yè)、生物醫(yī)學等領域內(nèi),如高頻感應加熱、熔煉、淬火、超聲診斷、核磁共振成像等,都

30、需要功率或大或小、頻率或高或低的振蕩器。</p><p>  1.4信號發(fā)生器的發(fā)展趨勢</p><p>  從目前的技術水平和市場認可程度看,信號發(fā)生器在生活生產(chǎn)實踐和科技領域中有著廣泛的應用。今后,帶有為微處理器,具有自校、自檢、自動故障診斷、自動波形形成等功能;帶有IEEE-485或RS232總線、可以和計算機構成自動測試系統(tǒng);朝著寬頻帶覆蓋、高頻率精度、多功能、多用途自動化和智能化

31、方向發(fā)展的信號發(fā)生器的應用前景將不可估量。</p><p><b>  二、方案論證與比較</b></p><p>  2.1 數(shù)模電路控制的信號發(fā)生器</p><p>  方案一:采用模擬電路搭建函數(shù)信號發(fā)生器,它可以同時產(chǎn)生方波、三角波、正弦波。但是這種模塊產(chǎn)生的不能產(chǎn)生任意的波形(例如梯形波),并且頻率調節(jié)很不方便。</p>

32、<p>  方案二:采用鎖相式頻率合成器,利用鎖相環(huán),將壓控振蕩器(VCO)的輸出頻率鎖定在所需頻率上,該方案性能良好,但難以達到輸出頻率覆蓋系數(shù)的要求,且電路復雜。</p><p>  方案三:使用集成信號發(fā)生器發(fā)生芯片,例如AD9854,它可以生成最高幾十MHZ的波形。但是該方案也不能產(chǎn)生任意波形(例如梯形波),并且價格昂貴。</p><p>  方案四:由555定時器組成

33、的多諧振蕩器產(chǎn)生方波,然后由積分電路將方波轉化為三角波,最后用低通濾波器將方波轉化為正弦波,但這樣的輸出將造成負載的輸出正弦波波形變形,因為負載的變動將拉動波形的崎變。</p><p>  方案五:利用芯片組成的電路輸出波形,MAX038 是 MAXIM 公司生產(chǎn)的一個只需要很少外部元件的精密高頻波形產(chǎn)生器,他能產(chǎn)生準確的高頻 正弦波、三角波、方波。輸出頻率和 占空比 可以通過調整電流、電壓或電阻來分別地控制。所

34、需的輸出波形可由在A0和A1輸入端設置適當?shù)拇a來選擇,且具有 輸出頻率范圍寬、波形穩(wěn)定、失真小、使用方便等特點。但是價格比較貴。</p><p>  2.2 單片機控制的信號發(fā)生器</p><p>  由于單片機品種繁多,各種型號都有一定的應用環(huán)境,因此在選用時要多加比較,合理選擇,以期獲得最佳性價比。一般來說在選擇單片機時從下面幾個方面考慮:性能、存儲器、運行速度、I/O口、定時/計數(shù)

35、器、串行接口、模擬電路功能、工作電壓、功耗、封裝形式、抗干擾性、保密性,除了以上的一些還有一些最基本的,比如:中斷源的數(shù)量和優(yōu)先級、工作溫度范圍、有沒有低電壓檢測功能、單片機內(nèi)有無時鐘振蕩器、有無上電復位功能等。在開發(fā)過程中單片機還受到:開發(fā)工具、編程器、開發(fā)成本、開發(fā)人員的適應性、技術支持和服務等因素?;谝陨弦蛩剡x用單片機AT89C51作為本設計的核心元件,利用單片機靈活的編程設計和豐富的I/O端口,及其控制的準確性,實現(xiàn)基本的不同

36、波形的輸出電路。還能利用其它的I/O端口進行幅度、頻率和占空比的調節(jié),外接LED數(shù)碼管或者LCD液晶來顯示幅度、頻率和占空比等。</p><p>  通過對模數(shù)電路控制和單片機控制的信號發(fā)生器比較幾種方案的比較,單片機方案有較大的活動空間,不但能實現(xiàn)所要求的功能而且能在很大的程度上擴展功能,所以我們采用后一種方案。其原理框圖如下圖2.2.1 所示。</p><p><b>  三

37、、系統(tǒng)總體設計</b></p><p><b>  3.1 設計的目的</b></p><p>  1)掌握電子系統(tǒng)的一般設計方法;</p><p>  2)熟悉常用儀表,了解電路調試的基本方法;</p><p>  3)掌握常用元器件的識別和測試;</p><p>  4)培養(yǎng)綜合應

38、用所學知識來指導實踐的能力;</p><p>  5)深入了解單片機C語言程序設計和實際中的應用;</p><p><b>  3.2 設計的要求</b></p><p>  本次設計使用ATMEL公司的AT89C51實現(xiàn)一基于單片機的低頻信號發(fā)生器的設計,其主要具有如下功能:</p><p>  (1)用單片機設計一個

39、能產(chǎn)生方波和三角波的周期性波形的信號發(fā)生器;</p><p> ?。?)產(chǎn)生的信號頻率為200Hz;</p><p> ?。?)繪制系統(tǒng)硬件電路原理圖,并進行系統(tǒng)仿真;</p><p> ?。?)完成硬件制作,實現(xiàn)系統(tǒng)功能,并用示波器觀察輸出信號的波形;</p><p><b>  3.3 設計的構想</b></p

40、><p>  低頻信號發(fā)生器的設計主要由三部分組成:按鍵接口電路、波形的形成控制電路、數(shù)碼管顯示電路。另外系統(tǒng)還有LED指示燈。</p><p>  ·低頻信號發(fā)生器設計的關鍵問題是實現(xiàn)產(chǎn)生不同波形的輸出和如何使頻率為200Hz;</p><p>  ·這些波形的實現(xiàn)的具體步驟:</p><p>  (1)正弦波,則利用數(shù)組的

41、調用來實現(xiàn),先將所需要的數(shù)據(jù)通過小工具數(shù)據(jù)發(fā)生器通過定義一些數(shù)據(jù),獲得的數(shù)據(jù)打包放在正弦波的數(shù)組中;</p><p> ?。?)三角波,則定義一個變量,讓這一變量每次累加1,當達到初值時,讓這一變量每次累減1;</p><p> ?。?)方波,先使其輸出為“0xff”時,定義一個變量,每次累加1,當達到初值時,在使其輸出為“0x00”并讓這一變量每次累減1;</p><

42、p> ?。?)鋸齒波,則定義一個變量,讓這一變量每次累加1,當達到初值時,讓這一變量為0;</p><p>  這次做的四種波形可以相互轉換,這個實現(xiàn)起來找了很多人最終發(fā)現(xiàn),在每次循環(huán)之初進行掃描,而在每個中斷入口處,對中斷優(yōu)先級進行設定,最終達到設計目的。如圖3.3.1所示:</p><p>  外部中斷1 </p><p>

43、;  圖3.3.1 波形轉換圖</p><p><b>  3.4 系統(tǒng)結構</b></p><p>  本次設計主要由單片機、獨立開關按鍵和DAC0832數(shù)模轉換電路等部分組成。其中獨立開關按鍵用于選擇輸出不同波形和進行各種功能的實現(xiàn)。本系統(tǒng)由兩部分組成,即硬件部分與軟件部分。其中硬件部分由獨立開關按鍵輸入部分、D/A數(shù)模轉換部分、復位部分、顯示部分等組成。軟件部分

44、由主程序、中斷服務程序、按鍵掃描程序、延時程序等組成。</p><p>  圖2.2.1 單片機控制方案原理框圖</p><p>  如上圖2.2.1 所示系統(tǒng)主要由AT89C51(51系列)單片機、DAC0832數(shù)模轉換電路、獨立開關按鍵、顯示電路、復位電路等組成。</p><p><b>  四、硬件電路設計</b></p>

45、<p>  4.1 單片機AT89C51的簡介</p><p>  AT89C51是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機,片內(nèi)含4K bytes的可反復擦寫的只讀程序存儲器(EPROM)和128bytes的隨機存取數(shù)據(jù)序存器(RAM),器件采用ATMEL公司的高密度/非易失性存儲技術生產(chǎn),兼容標準MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和FLASH存儲單元,由于將多功

46、能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C51單片機為許多嵌入式控制系統(tǒng)提供了一種靈活行高且價廉的方案。其引腳排列如圖4.1.1所示。</p><p>  4.1.1單片機AT89C51的主要特性</p><p>  · 兼容性能強 · 4K字節(jié)可編程FLASH存儲器</p><p

47、>  · 全靜態(tài)工作:0Hz-24KHz · 三級程序存儲器保密鎖定 · 128*8位內(nèi)部RAM · 32條可編程I/O線 · 兩個16位定時器/計數(shù)器 · 5個中斷源 · 可編程串行通道

48、· 低功耗的閑置和掉電模式

49、 </p><p>  · 片內(nèi)振蕩器和時鐘電路 圖4.1.1 芯片管腳排</p><p>  4.1.2單片機小系統(tǒng)的基本電路</p><p>  在以單片機為主控電路中,總會有兩大基本電路:</p><p>  ·振蕩電路:XTAL1 , XT

50、AL2 為內(nèi)部振蕩器電路 ( 反相放大器 ) 的輸入端和輸出端,外接晶振電路 ;</p><p>  ·復位電路:RES復位引腳輸入高電平使單片機 89C51 復位,返回低電平退出復位;</p><p>  4.2 DAC0832數(shù)模轉換器</p><p>  4.2.1 DA0832芯片的簡介</p><p>  DAC0832數(shù)

51、模轉換器是8分辨率的D/A轉換集成芯片,由8位輸入鎖存器、8位DAC寄存器、8位D/A轉換器及轉換控制電路四部分構成。DAC0832中有兩級鎖存器,第一級鎖存器稱為輸入寄存器,它的鎖存信號為ILE;第二級鎖存器稱為DAC寄存器,它的鎖存信號為傳輸控制信號。因為有兩級鎖存器,DAC0832可以工作在雙緩沖器方式,即在輸出模擬信號的同時采集下一個數(shù)字量,這樣能有效地提高轉換速度。此外,兩級鎖存器還可以在多個D/A轉換器同時工作時,利用第二級

52、鎖存信號來實現(xiàn)多個轉換器同步輸出。如下圖4.1.2 DAC0832內(nèi)部結構所示:</p><p>  圖4.2.1 DAC0832內(nèi)部結構圖</p><p>  圖4.2.1中LE為高電平、和為低電平時,為高電平,輸入寄存器的輸出跟隨輸入而變化;此后,當由低變高時,為低電平,資料被鎖存到輸入寄存器中,這時的輸入寄存器的輸出端不再跟隨輸入資料的變化而變化。對第二級鎖存器來說,和同時為低電平時

53、,為高電平,DAC寄存器的輸出跟隨其輸入而變化;此后,當由低變高時,變?yōu)榈碗娖?,將輸入寄存器的資料鎖存到DAC寄存器中。</p><p>  4.2.2 DA0832芯片的引腳功能</p><p>  DAC0832的引腳功能介紹及其引腳圖如圖圖4.1.2所示:</p><p>  ·D0~D7:8位數(shù)據(jù)輸入線,TTL電平,有效時間應大</p>

54、<p>  于90ns(否則鎖存器的數(shù)據(jù)會出錯);</p><p>  ·ILE:數(shù)據(jù)鎖存允許控制信號輸入線,高電平有效;</p><p>  ·CS:片選信號輸入線(選通數(shù)據(jù)鎖存器),低電平有效;</p><p>  ·WR1:數(shù)據(jù)鎖存器寫選通輸入線,負脈沖(脈寬應大</p><p>  于500

55、ns)有效。 圖4.2.2 DAC0832引腳圖</p><p>  ·CS、WR1的邏輯組合產(chǎn)生 LE1,當LE1為 高電平時,數(shù)據(jù)鎖存器狀態(tài)隨輸入數(shù)據(jù)線變換,LE1 的負跳變時將輸入數(shù)據(jù)鎖存;</p><p>  ·XFER:數(shù)據(jù)傳輸控制信號輸入線,低電平有效,負脈沖(脈寬應大于 500ns)

56、有效 ;</p><p>  ·WR2:DAC 寄存器選通輸入線,負脈沖(脈寬應大于 500ns)有效。</p><p>  ·IOUT1;電流輸出端 1,其值隨DAC寄存器的內(nèi)容線性變化;</p><p>  ·IOUT2:電流輸出端 2,其值與IOUT1值之和為一常數(shù);</p><p>  ·Rfb

57、:反饋信號輸入線,改變Rfb端外接電阻值可調整轉換滿量程精度;</p><p>  ·Vcc:電源輸入端,Vcc 的范圍為+5V ~ +15V;</p><p>  ·VREF:基準電壓輸入線,VREF的范圍為-10V ~ +10V;</p><p>  ·AGND:模擬信號地;</p><p>  ·

58、DGND;數(shù)字信號地;</p><p>  DAC0832的主要特性參數(shù)如下:</p><p>  ·分辨率為8位;電流穩(wěn)定時間1us;</p><p>  ·可單緩沖、雙緩沖或直接數(shù)字輸入; </p><p>  ·只需在滿量程下調整其線性度;</p><p>  ·單一電源供

59、電(+5V~+15V);</p><p><b>  ·低功耗;</b></p><p>  DAC0832的操作時序說明:</p><p>  從下圖4.1.2DAC0832芯片的操作時序圖可以看出,當CS為低電平后,數(shù)據(jù)總線上數(shù)據(jù)才開始保持有效,然后再將WR置低,從Iout線上可以看出,在WR置底ts后D/A轉換結束,Iout輸出

60、穩(wěn)定。若只控制轉換一次轉換的話,接下來將WR和CS拉高即可,若連續(xù)轉換則只需要改變數(shù)字端口輸入數(shù)字。</p><p>  圖4.1.2 DAC0832芯片的操作時序圖</p><p>  4.2.3 DA0832芯片的應用</p><p>  DAC0832一是用作單極性電壓輸出,二是用作雙極性電壓輸出,最后是用作程控放大器。DAC0832的與單片機的連接方式有三種

61、方式:單緩沖、雙緩沖、直通方式。其中;(1)單緩沖方式是控制輸入寄存器和DAC寄存器同時接收資料,或者只用輸入寄存器而把DAC寄存器接成直通方式。此方式適用只有一路模擬量輸出或幾路模擬量異步輸出的情形。(2)沖方式是先使輸入寄存器接收資料,再控制輸入寄存器的輸出資料到DAC寄存器,即分兩次鎖存輸入資料。此方式適用于多個D/A轉換同步輸出的情節(jié)。(3)直通方式是資料不經(jīng)兩級鎖存器鎖存,即是將,,,均接地,ILE接高電平。此方式適用于連續(xù)反

62、饋控制線路,不過在使用時,必須通過另加I/O接口與CPU連接,以匹配CPU與D/A轉換。</p><p>  本系統(tǒng)設計程序采用的是方式一即直通方式,如圖4.2.3 DAC0832工作原理圖所示:</p><p>  圖4.1.2 DAC0832工作原理圖</p><p><b>  4.3 接口電路</b></p><p&

63、gt;  4.3.1 按鍵接口電路</p><p>  鍵盤可以分為獨立連接式和矩陣式兩類。由于設計所用到的按鍵數(shù)量不多適合獨立式按鍵。如下圖4.2.1 所示:</p><p>  按鍵K1、K2、K3、K4分別接在了I/OP1_0、</p><p>  P1_1、P3_2、P3_3端口上,低電平正常工作;</p><p>  按鍵的功能說明

64、如下:</p><p>  ·K1可用作為幅度調節(jié)按鍵;</p><p>  ·K2可用作為頻率調節(jié)按鍵;</p><p><b>  ·K3還未定;</b></p><p>  ·K4用作為波形輸出選擇鍵;</p><p>  圖4.2.1按鍵接口圖<

65、;/p><p>  4.3.2 按鍵去抖的方法</p><p>  機械式按鍵在按下或釋放時,由于機械彈性作用的影響,通常伴隨有一定時間的觸點機械抖動,然后其觸電才能穩(wěn)定下來,抖動時間一般為5ms到10ms,在觸電抖動期間檢測按鍵的通與斷狀態(tài),可能導致判斷出錯。</p><p>  1)硬件電路去抖動:按鍵的機械抖動可采用硬件電路來消,較為適用于按鍵較少的情況。<

66、/p><p>  2)軟件去抖動:在檢測到有按鍵按下時,先執(zhí)行10ms的延時程序,然后再重新檢測該按鍵是否仍然按下,以確認該按鍵按下不是因抖動引起的。同理,在檢測到該按鍵釋放時,也采用先延時再判斷的方法消除抖動的影響。</p><p>  在此次設計中采用軟件去抖動。</p><p><b>  4.4 顯示電路</b></p>&l

67、t;p>  由于液晶顯示器價格昂貴,若采用LED數(shù)碼管作為顯示器件,要用到較多的I/O端口,并且由單片機直接驅動的直流電流不夠,數(shù)碼管亮度顯得不足,還要加上74HC573用以提高驅動電流。因此在系統(tǒng)中選用LED指示燈較為簡單的方式來說明輸出波形如圖4.5.2所示:</p><p><b>  指示燈的作用說明:</b></p><p>  ·D1燈亮,

68、輸出正弦波和三角波;</p><p>  ·D2燈亮,輸出鋸齒波和方波;</p><p>  ·D3、D4燈作為其他指示作用;</p><p>  圖4.5.2 波形輸出指示燈</p><p><b>  五、軟件程序設計</b></p><p>  5.1 軟件設計流程圖&l

69、t;/p><p>  5.1.1 主程序設計流程圖</p><p>  系統(tǒng)開始一直輸出正弦波,并判斷是否有按鍵按下,當有鍵按下跳出等待,進入中斷。</p><p><b>  \\</b></p><p>  圖5.1.1 開始等待流程圖</p><p><b>  備注:</b&g

70、t;</p><p>  ·A狀態(tài)為:輸出正弦波和三角波;</p><p>  ·B狀態(tài)為:輸出鋸齒波和方波;</p><p>  5.1.2 DAC0832數(shù)模轉換模塊設計</p><p>  DAC0832數(shù)模轉換程序設計中,采用的是查詢方式來寫的,其流程設計如圖5.1.1所示:</p><p>

71、;  圖5.2.1 DAC0832數(shù)模轉換流程圖</p><p><b>  備注:</b></p><p>  ·當CS1=0;CS2=1時;有如下兩種情況:</p><p>  傳輸正弦波的數(shù)據(jù)給P0</p><p>  2)傳輸鋸齒波的數(shù)據(jù)給P0</p><p>  ·當

72、CS1=1;CS2=0時;有如下兩種情況:</p><p>  傳輸三角波的數(shù)據(jù)給P0</p><p>  2)傳輸方波的數(shù)據(jù)給P0</p><p>  5.2 波形的實現(xiàn)過程及實驗仿真波形圖</p><p>  題目要求輸出頻率200HZ,算出程序每步應該延續(xù)多少微秒,2.5ms/256即為循環(huán)一次所需時間;</p><

73、p>  ·正弦波和三角波仿真波形圖如下:</p><p>  ·鋸齒波和方波仿真波形圖如下:</p><p><b>  思考及解決問題</b></p><p><b>  波表格如何得來?</b></p><p>  根據(jù)兩個點(0,80H)、(π/2,0FFH),在0至

74、π/2范圍內(nèi)有64個點,可以求得正弦波的函數(shù)方程為Y=127sin(90n/64)+128,(n=1,2,3,….256)如當n=1時,求得Y=84H。</p><p>  實現(xiàn)從-5V到+5V的變化范圍?</p><p>  DAC0832具有單極性和雙極性兩種情況,本次采樣的是單極性電壓輸出,故輸出為0V到10V,如果才用雙極性電壓輸出即可達到要求。</p><p&

75、gt;<b>  為什么要上拉電阻?</b></p><p>  原因是:1)P0口片內(nèi)無上拉電阻;2)P0為I/O口工作狀態(tài)時,上方FET被關斷,從而輸出腳浮空,因此P0用于輸出線時為開漏輸出;3)由于片內(nèi)無上拉電阻,上方FET又被關斷,P0輸出1時無法拉升端口電平。P0是雙向口,其它P1,P2,P3是準雙向口;單片機在讀準雙向口的端口時,現(xiàn)應給端口鎖存器賦1,目的是使FET關斷,不至于因

76、片內(nèi)FET導通使端口鉗制在低電平。</p><p><b>  總 結</b></p><p>  通過這次畢業(yè)設計,讓我對設計有了一定的邏輯順序,通過查閱圖書館中的資料讓我對著方面的知識有了更系統(tǒng)的了解,讓我復習了很多學過的舊知識,同時鍛煉了自己的動手能力和查閱資料。尤其是解決在實際中解決排查問題的能力。</p><p>  過這次的設計,我

77、熟悉了使用PADS2007的技巧,學會了制作電路板的一些技巧,并且熟悉了如何選購使用電子元器件。</p><p>  在設計中,我學到了如何使用C語言對單片機進行編寫程序,熟悉了使用KEIL C軟件,并且加深了對單片機的編程技巧。</p><p>  在做這個設計的過程中,我遇到了不少的問題。這鍛煉了我篩選、查閱資料,并將理論結合到自己的設計中的能力。一步一步的排除故障原因,找到故障的原因

78、并解決故障。</p><p>  這次的設計使我對模擬電子、數(shù)字電子、單片機、C語言等知識加深了了解,通過對以往知識的復習鞏固,將問題解決。</p><p>  在做本次課程設計的過程中,我感觸最深的當屬查閱大量的設計資料了。在做單片機課程設計,一切都要有據(jù)可依,有理可尋,不切實際的構想永遠只能是構想,永遠無法升級為設計。要做好一個課程設計,就必須做到:在設計程序之前,對所用單片機的內(nèi)部結

79、構有一個系統(tǒng)的了解,知道該單片機內(nèi)有哪些資源;要有一個清晰的思路和一個完整的的軟件流程圖;在設計程序時,不能妄想一次就將整個程序設計好,反復修改、不斷改進是程序設計的必經(jīng)之路;要養(yǎng)成注釋程序的好習慣,一個程序的完美與否不僅僅是實現(xiàn)功能,而應該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便;在設計課程過程中遇到問題是很正常德,但我們應該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題。</p>&

80、lt;p>  在本次設計完成之際,在這里要衷心感謝我的畢業(yè)設計指導老師xx老師在設計中對我的指導、幫助,并且提出了很多非常寶貴的意見。感謝在本次設計中給予我?guī)椭母魑煌瑢W。還要感謝大學三年來教導我的各位老師,不計較浪費自己學習時間幫助我的同學。感謝xx老師百忙之中對我本次設計的閱覽與指導!</p><p><b>  參考文獻</b></p><p>  【1】

81、 郭天祥.新概念51單片機C語言教程.北京.電子工業(yè)出版社(2010年)</p><p>  【2】 王連英.模擬電子技術.北京. 高等教育出版社(2008年)</p><p>  【3】 張秀國.單片機C語言程序設計教程與實訓.北京.北京大學出版社(2001年)</p><p>  【4】 李 萍.AT89S51單片機原理開發(fā)與應用實例.北京.中國電力出版社(2

82、008年)</p><p>  【5】 康萬新.畢業(yè)設計指導及案例剖析.北京.清華大學出版社 (2007年)</p><p>  【6】 曾令琴.電路分析基礎(第2版).北京.人民郵電出版社(2009年) </p><p><b>  致 謝</b></p><p>  畢業(yè)論文即將完成,我的學生生涯也要告一段落了。畢業(yè)

83、設計能夠順利完成,是指導老師和幫助過我的同學們對我的教誨、幫助和鼓勵的結果。借此機會,我要在這對三年來幫助過我的人表示深深的感謝</p><p>  2011年11月29日</p><p><b>  附錄一 總原理圖</b></p><p>  附錄二 系統(tǒng)設計源程序</p><p>  #include<reg

84、51.h></p><p>  #define uchar unsigned char</p><p>  #define uint unsigned int</p><p>  #define data_in P0</p><p>  sbit cs1=P2^0;</p><p>  sbit cs2=P2^1

85、;</p><p>  sbit wr =P2^2;</p><p>  sbit key0=P1^0;</p><p>  sbit key1=P1^1;</p><p>  sbit key2=P3^2;</p><p>  sbit key3=P3^3;</p><p>  sbit LE

86、D0=P2^4;</p><p>  sbit LED1=P2^5;</p><p>  uchar code sin_num[168]={</p><p>  0x7F,0x84,0x89,0x8D,0x92,0x97,0x9B,0xA0,0xA5,0xA9,0xAE,0xB2,0xB6,0xBB,0xBF,0xC3,0xC7,0xCB,0xCE,0xD2,0xD

87、6,0xD9,0xDC,0xE0,0xE3,0xE6,0xE8,0xEB,0xED,0xF0,0xF2,0xF4,0xF6,0xF7,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFD,0xFC,0xFB,0xFA,0xF9,0xF7,0xF6,0xF4,0xF2,0xF0,0xED,0xEB,0xE8,0xE6,0xE3,0xE0,0xDC,0xD9,0xD

88、6,0xD2,0xCE,0xCB,0xC7,0xC3,0xBF,0xBB,0xB6,0xB2,0xAE,0xA9,0xA5,0xA0,0x9B,0x97,0x92,0x8D,0x89,0x84,0x7F,0x7A,0x75,0x71,0x6C,0x67,0x63,0x5E,0x59,0x55,0x50,0x4C,0x48,0x43,0x3F,0x3B,</p><p><b>  }</b>

89、</p><p>  /*****************************************************************************</p><p><b>  延時程序</b></p><p>  **************************************************

90、************************/</p><p>  void delay(uchar i)</p><p><b>  {</b></p><p><b>  uchar j;</b></p><p><b>  ucharz;</b></p>

91、;<p>  for(j=i;j>0;j--);</p><p>  for(z=10;z>0;z--); </p><p><b>  }</b></p><p>  void triangle(bit A,B,uchar f)</p><p><b>  {</b>

92、;</p><p>  uchar i=0;</p><p>  if(!A){cs1=0;}else{cs1=1;}</p><p>  if(!B){cs2=0;}else{cs2=1;}</p><p>  for(i=0;i<256;i++){data_in=i;delay(f);wr=0;}</p><p&

93、gt;<b>  wr=1; </b></p><p><b>  }</b></p><p>  /*****************************************************************************</p><p>  正弦波和三角波的生成程序***********

94、****************************************************************/</p><p>  void sin_wave()</p><p><b>  {</b></p><p>  uchar i=0;</p><p>  for(i=0;i<168;i

95、++)</p><p><b>  {</b></p><p><b>  wr=1;</b></p><p>  cs1=0;cs2=1;data_in=sin_num[i];//delay(5);////正弦波</p><p>  cs1=1;cs2=0;data_in=0x00;if(i<

96、;84)data_in=i;else</p><p>  data_in=168-i;////三角波</p><p><b>  wr=0;</b></p><p><b>  } </b></p><p><b>  }</b></p><p>  /

97、*****************************************************************************</p><p>  鋸齒波和方波的生成程序***************************************************************************/</p><p>  Void san_w

98、ave ()</p><p>  { </p><p>  uchar i=0;</p><p>  for(i=0;i<168;i++)</p><p><b>  {</b></p><p><b>  wr=1;</b></p>&

99、lt;p>  cs1=0;cs2=1;data_in=i;////鋸齒波</p><p>  cs1=1;cs2=0;data_in=0x80;if(i>=84)data_in=0x00;else data_in=0x80;////方波</p><p><b>  wr=0;</b></p><p><b>  

100、}</b></p><p><b>  }</b></p><p>  /*****************************************************************************</p><p>  外部中斷1的服務程序********************************

101、*******************************************/</p><p>  void int0 (void) interrupt 2</p><p><b>  {</b></p><p><b>  IE0=0;</b></p><p><b>  Wh

102、ile (1)</b></p><p><b>  {</b></p><p>  LED1=0; LED0=1; san_wave();</p><p><b>  } </b></p><p><b>  }</b></p><p&g

103、t;  /*****************************************************************************</p><p><b>  系統(tǒng)設計主程序</b></p><p>  ******************************************************************

104、*********/</p><p>  void main(void)</p><p><b>  {</b></p><p><b>  IT1=0;</b></p><p><b>  EX1=1;</b></p><p>  EA=1;

105、 </p><p><b>  While(1)</b></p><p><b>  {</b></p><p>  LED0=0; sin_wave (); </p><p><b>  }</b></p><p><b> 

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論