函數(shù)發(fā)生器的設計畢業(yè)設計說明書_第1頁
函數(shù)發(fā)生器的設計畢業(yè)設計說明書_第2頁
函數(shù)發(fā)生器的設計畢業(yè)設計說明書_第3頁
函數(shù)發(fā)生器的設計畢業(yè)設計說明書_第4頁
函數(shù)發(fā)生器的設計畢業(yè)設計說明書_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、四川信息職業(yè)技術學院畢業(yè)設計說明書四川信息職業(yè)技術學院畢業(yè)設計說明書(論文)設計(論文)題目:函數(shù)發(fā)生器的設計 專 業(yè): 通 信 技 術 班 級: 學 號: 姓 名: 指導教師: 年 月 日i四川信息職業(yè)技術學院畢業(yè)設計任務書學生姓名學號班級通技06-2專業(yè)通信技術設計題目函數(shù)發(fā)生器的設計指導教師姓名職稱工作單位及所從事專業(yè)聯(lián)系方式備注講師/工程師高級工程師設計內(nèi)容:設計一個能產(chǎn)生多種函數(shù)波形的信號發(fā)生器,要求該系統(tǒng)具有如下特點和功能:1能產(chǎn)生正弦波、矩形波、三角波、鋸齒波,且波形頻率和占空比可調(diào);2頻率范圍:100hz1mhz,連續(xù)可調(diào);3矩形波占空比:30%60%,連續(xù)可調(diào);4輸出電壓:u

2、p-p 1v。進度安排:2008.92008.10:完成資料的收集;2008.102008.11:完成設計的邏輯組織結構;2008.112008.12:編寫設計與答辯。主要參考文獻、資料(寫清楚參考文獻名稱、作者、出版單位):1芯片實驗室.2李金奎.單片機應用.北京:高等教育出版社,20063蘇平.單片機原理與接口技術.北京:電子工業(yè)出版社,20034李維祥,孫秀強,孫桂玲等.mcs-51單片機原理與應用.天津:天津大學出版社,20015張紅潤,易濤.單片機應用技術教程.北京:清華大學出版社,20036唐程山.數(shù)字電子技術.北京:人民郵電出版社,20057葉淬編.電工電子技術.北京:化學工業(yè)出

3、版社,20048鄭應光.模擬電子技術.江蘇:東南大學出版社,2005審批意見教研室負責人:年 月 日備注:任務書由指導教師填寫,一式二份。其中學生一份,指導教師一份。目錄摘要1第1章緒論21.1函數(shù)發(fā)生器的發(fā)展21.2函數(shù)發(fā)生器設計的背景21.3函數(shù)發(fā)生器實現(xiàn)的特色功能2第2章系統(tǒng)設計42.1方案論證42.2方案選擇5第3章單元電路設計63.1單片機主控模塊63.2i/o擴展模塊63.3d/a轉(zhuǎn)換模塊73.3.1d/a選擇73.3.2d/a輸入設計83.4波形產(chǎn)生模塊93.5增益放大模塊113.6人機接口113.6.1鍵盤模塊113.6.2顯示模塊123.7頻率計算模塊123.8電源模塊133

4、.9總體電路13第4章軟件設計164.1流程圖及設計164.2軟件系統(tǒng)的使用說明20第5章調(diào)試22結論24致謝25參考文獻26附錄1單片機端口分配表27附錄2程序代碼28附錄3總電路原理圖35摘要函數(shù)信號發(fā)生器作為一種常用的信號源,廣泛應用于電子電路、自動控制和科學研究等領域。它是一種為電子測量和計量工作提供符合嚴格技術要求的電信號設備,因此是電子測試系統(tǒng)的重要部件,是決定電子測試系統(tǒng)性能的關鍵設備。它與示波器、電壓表、頻率計等儀器一樣是最普通、最基本的,也是得到最廣泛應用的電子儀器之一。本文設計了一款基于at89c51單片機、max038芯片實現(xiàn)的函數(shù)發(fā)生器,可以產(chǎn)生頻率、幅度可調(diào)的正弦波、

5、方波、三角波、三種周期性信號,輸出波形失真小于0.75%,頻率可調(diào)范圍為,矩形波占空比可調(diào)范圍為30%60%。該函數(shù)發(fā)生器具有成本低廉、結構簡單、人機界面友好等特點,在教學方面具有較高實用價值。關鍵詞單片機;函數(shù)發(fā)生器;頻率;幅度;占空比第1章緒論1.1函數(shù)發(fā)生器的發(fā)展波形發(fā)生器亦稱函數(shù)發(fā)生器,作為實驗用信號源,是現(xiàn)今各種電子電路實驗設計應用中必不可少的儀器設備之一。目前,市場上常見的波形發(fā)生器多為純硬件的搭接而成,且波形種類有限,多為正弦、方波、三角等波形。單片機構成的儀器具有高可靠性、高性能價格比,在智能儀表系統(tǒng)和辦公自動化等諸多領域得以極為廣泛的應用,并走入家庭,從洗衣機、微波爐到音響汽

6、車,處處可見其應用。因此,使用單片機技術開發(fā)的函數(shù)發(fā)生器性能更加優(yōu)良,隨著單片機的普遍應用,與單片機結合開發(fā)的函數(shù)發(fā)生器也將得到廣泛應用。1.2函數(shù)發(fā)生器設計的背景函數(shù)發(fā)生器能提供正弦波、方波、三角波等多種波形,有的還同時具有調(diào)制和掃描能力,在我們的大學電子實驗室、科研機構研究實驗室、工廠開發(fā)實驗室等有著廣泛的應用,特別是在基礎教育方面應用更加廣泛。信號源主要給被測電路提供所需要的已知信號(各種波形),信號源在電子實驗和測試處理中,提供信號驅(qū)動電路正常工作。一般來說任意波形發(fā)生器,是一種特殊的信號源,綜合具有其它信號源波形生成能力,因而適合各種仿真實驗的需要。但為了增強任意波形生成能力,它往往

7、依賴計算機通訊輸出波形數(shù)據(jù)。在函數(shù)發(fā)生器的發(fā)展中功能越來越多,結構上也越來越復雜,體積也越來小。但是在整體設計的造價上花費越大,對于使用者來說操作過于復雜。綜合上述,我設計了一款面向教學使用的函數(shù)發(fā)生器。該函數(shù)發(fā)生器體積小、重量輕、操作簡單。對于購買者,在價格上更有著比其它同性能的函數(shù)發(fā)生器更低的價格。1.3函數(shù)發(fā)生器實現(xiàn)的特色功能為了克服函數(shù)發(fā)生器在教學使用中輸出波形易失真、精度低、價格昂貴及不易攜帶等缺點,設計一款能產(chǎn)生多種函數(shù)波形的函數(shù)發(fā)生器,要求該系統(tǒng)具有如下特色功能:1能產(chǎn)生正弦波、方波、三角波,且波形頻率和占空比可調(diào);2頻率范圍:,連續(xù)可調(diào);3矩形波占空比:30%60%,連續(xù)可調(diào);

8、4輸出電壓:。本文設計函數(shù)發(fā)生器是由軟件和硬件相組合,產(chǎn)生在教學使用中常見的三種波形信號,即正弦波、方波、三角波三種信號。信號輸出的頻率、占空比范圍寬,輸出信號幅度可調(diào),并且輸出頻率可以顯示,體積小,價格低廉,克服函數(shù)發(fā)生器在教學使用中的缺點。第33頁共35頁第2章系統(tǒng)設計2.1方案論證根據(jù)題目的要求,本信號發(fā)生器可分解為以下幾個部分,結構框圖如圖2-1所示。i/o擴展波形產(chǎn)生mcu控制單元周期計算按鍵信號放大顯示圖2-1函數(shù)發(fā)生器組成結構一般有如下幾種實現(xiàn)方案:方案一:采用直接數(shù)字頻率合成(dds)芯片實現(xiàn):dds是較為先進的一種頻率合成技術,基于dds技術的波形發(fā)生器具有輸出頻率穩(wěn)定、準確

9、,波形質(zhì)量好和輸出頻率范圍寬等一系列獨特的優(yōu)點。此種方案是向dds芯片寫控制字,通過改變相位累加字來實現(xiàn),常見的dds芯片,如ad9954等,只有正弦波輸出,要產(chǎn)生三種波形,需外接波形變換電路。方案二:采用單片機結合max038芯片完成設計。max038是一個精密高頻波形產(chǎn)生器,它能產(chǎn)生高頻正弦波、三角波、方波,輸出頻率和占空比可以通過調(diào)整電流、電壓或電阻來分別地控制。所需的輸出波形可由在a0和a1輸入端設置適當?shù)拇a來選擇;單片機通過d/a芯片輸出模擬信號,此模擬信號控制max038輸出波形。在最后的波形輸出端通過運放放大輸出波形信號;單片機主要控制d/a芯片連接、顯示,最終采用led數(shù)碼管

10、顯示頻率。2.2方案選擇第一種方案采用晶體振蕩器作為時鐘,因此,頻率穩(wěn)定度很好,但均需外接波形變換電路,通常采用二極管電阻網(wǎng)絡來實現(xiàn)正弦波到三角波變換,且還須外接多個vco,所以電路較復雜;第二種方案采用單片機結合max038芯片設計函數(shù)發(fā)生器。單片機性能優(yōu)良,價格低廉,應用普遍。max038芯片是maxim公司生產(chǎn)的一個只需要很少外部元件的精密高頻波形產(chǎn)生器,它能產(chǎn)生準確的高頻正弦波、三角波、方波。輸出頻率和占空比可以通過電流、電壓或電阻來調(diào)整,并且占空比與頻率的調(diào)節(jié)互不干擾。在硬件的使用上充分利用單片機最小應用系統(tǒng),而且還有可擴展的部分。從總的設計上來說該設計方案造價低廉,性能優(yōu)良。綜合上

11、述,第二種方案設計合理,價格低廉,所以采用第二種方案設計。原理結構框圖如下:max038at89c51單片機顯示d/a轉(zhuǎn)換74ls74信號放大按鍵i/o擴展圖2-2函數(shù)發(fā)生器原理結構第3章單元電路設計3.1單片機主控模塊系統(tǒng)采用at89c51單片機作為控制核心。at89c51單片機與mcs-51系列單片機產(chǎn)品兼容,采用了flash存儲器結構,可以在線下載程序,易于日后的升級。它主要負責各個模塊的初始化工作;可以設置定時器、寄存器的初值;處理按鍵響應;led數(shù)碼管顯示等。硬件電路連接如圖3-1所示。本設計采用人工復位,時鐘頻率為晶振。p1.0,p1.1,p1.2,p1.3,p1.4為按鍵模塊的接

12、口。圖3-1單片機主控模塊3.2i/o擴展模塊該模塊主要完成單片機的輸入輸出口的擴展,并以此模塊驅(qū)動顯示。1at89c51單片機的p1.6和p1.7端口分別接在8255芯片的a0、a1端口。a0、a1起控制作用,主要控制8255的a口、b口、c口、控制接口的選擇。8255芯片的a口作為d/a芯片輸入,b口c口作為顯示控制端口。28255的a口、b口、c口、控制接口的地址分別為0000h、0001h、0002h、0003h,設無關位取0。a、b、c口均設為輸出口,選用方式0工作。74ls373是一個鎖存器,在電路中起到地址鎖存作用。i/o擴展電路見圖3-2所示。圖3-2i/o擴展電路3.3d/a

13、轉(zhuǎn)換模塊數(shù)模轉(zhuǎn)換器,又稱d/a轉(zhuǎn)換器,簡稱dac,它是把數(shù)字量轉(zhuǎn)變成模擬量的器件。該模塊功能主要完成電流輸出,改變輸出步進信號頻率。3.3.1d/a選擇dac0832是8位分辨率的d/a轉(zhuǎn)換集成芯片,與微處理器完全兼容,這個系列的芯片以其價格低廉、接口簡單、轉(zhuǎn)換控制容易等優(yōu)點,在單片機應用系統(tǒng)中得到了廣泛的應用。這類d/a轉(zhuǎn)換器由8位輸入鎖存器,8位dac寄存器,8位da轉(zhuǎn)換電路及轉(zhuǎn)換控制電路構成。dac0832的應用特性:1dac0832是微處理器兼容型d/a轉(zhuǎn)換器,可以充分利用微處理器的控制能力實現(xiàn)對d/a轉(zhuǎn)換的控制;2dac0832內(nèi)部無參考電壓源,須外接參考電壓源;3dac0832為電

14、流輸入型d/a轉(zhuǎn)換器,要獲得模擬電壓輸出時,需要外加轉(zhuǎn)換電路。dac0832的引腳圖見圖3-3所示。dac08321245367891020191817161514131112csdi3vrefgndwr1di0di1di2rfbgndvccxferdi7wr2iledi6di5di4iout2圖3-3dac0832引腳3.3.2d/a輸入設計at89c51的p2口作為dac0832的片選信號,采用單緩沖器方式,鎖存8位數(shù)據(jù),dac0832的工作電壓為,基準電壓采用。對于8位a/d轉(zhuǎn)換器,當輸入電壓滿刻度為時,其輸出數(shù)字量的變化范圍為0255,轉(zhuǎn)換電路對輸入模擬電壓的分辨能力為。設計當中dac

15、0832輸出電壓范圍9.5,基準電壓為。 (3-1)dac0832輸入量的大小。由公式(3-1)計算dac0832輸出電壓的大小。設計輸出電壓為19.5,每一次步進0.5。dac0832輸入量見表3-1所示。表3-1dac0832輸入量電壓()11.52.02.53.03.54.0電流()20304050607080輸入量25.638.451.264.076.889.6102.4電壓()4.55.05.56.06.57.07.5電流()90100110120130140150輸入量115.2128.0140.8153.6166.4179.2192.0電壓()8.08.59.09.5-電流()1

16、60170180190-輸入量204.8217.6230.4243.2-由上表可以得出輸出的步進量值為12.8。通過單片機對dac0832的輸入量步進加減12.8,使獲得相應的輸出電壓。3.4波形產(chǎn)生模塊本模塊功能主要輸出信號波形及實現(xiàn)頻段選擇控制。本設計采用的是maxim公司生產(chǎn)的max038芯片,它是一種高頻精密的函數(shù)發(fā)生器,可產(chǎn)生三角波、正弦波、方波,且頻率及占空比可調(diào)。max038芯片內(nèi)部包含有精密帶隙電壓參考、鑒相器和同步輸出,能以最少的外部元件構成一臺多波形的高頻函數(shù)發(fā)生器。max038的核心部分是一個電流控制的基本振蕩器。由恒定電流對外部電容充電和放電,來獲得三角波和方波信號輸出

17、。其控制電流由外部信號、和iin管腳的輸入電流決定。1輸出波形的選擇由max038芯片邏輯地址引腳a0和a1的組合來決定,a1a010或11時,輸出正弦波;a1a000時,輸出方波;a1a001時輸出三角波。波形切換可在內(nèi)完成,但輸出波形有的延遲時間。at89c51的p1.7端口與p1.6端口控制a0和a1。2輸出頻率由iin引腳的電流、sosc引腳的對地電容量和fadj引腳的電壓來決定。max038步進頻率控制電壓由8位dac0832提供,經(jīng)的電位器接入到iin引腳。設iin輸入端電壓為,串接電阻為,則有 (3-2)式中,輸出頻率,單位;輸入端電壓,單位;串接電阻,單位;是決定輸出頻率的串入

18、電容值,單位。3電容是sosc引腳的對地電容,本設計在sosc引腳設置了一個開關,電容取四個容量值,分別為、。本設計設計了四個頻段,在輸入電壓為時,根據(jù)公式(3-2)可得:當連接電容輸出頻率范圍在到。當連接電容輸出頻率范圍在到。當連接電容輸出頻率范圍在到。當連接電容輸出頻率范圍在到。具體見表3-2所示。序號頻段電容步進1234表3-2頻段切換4通過改變fadj引腳、dadj引腳上的電壓可以調(diào)節(jié)頻率和占空比。本設計以改變fadj引腳上的電壓作為頻率的細調(diào),改變dadj引腳上的電壓作為占空比的調(diào)節(jié)。當在fadj引腳施加一個范圍的電壓,可使輸出頻率的調(diào)節(jié)范圍為 (3-3)為步進輸出頻率,為max03

19、8輸出頻率。 (3-4)由公式(3-4)可得:當時,當時,當時,綜合上述,改變fadj引腳上的電壓使頻率的調(diào)節(jié)范圍在(11.7)才能滿足設計要求,所以fadj引腳上所加電壓的范圍設計為。dadj引腳上的電壓值的變化控制波形的占空比,通常時,則占空比為。若在范圍變化將引起輸出波形占空比在的變化(在范圍內(nèi)改變占空比,對輸出頻率的影響最小),根據(jù)設計要求波形占空比在范圍內(nèi)調(diào)節(jié)。綜合上述dadj引腳上所加范圍的電壓,占空比的調(diào)節(jié)范圍為。5max038輸出的信號電壓固定為峰-峰值,通過放大電路將max038輸出的信號放大,使輸出信號波形幅度可調(diào)。3.5增益放大模塊放大電路主要是對max038輸出的雙極性

20、電壓信號幅值進行處理,以達到輸出電壓可調(diào)。采用低頻運放放大波形信號以提高輸入阻抗,采用lm324 四運放作為放大元件。lm324是四運放集成電路,它采用14腳雙列直插塑料封裝,它的內(nèi)部包含四組完全相同的運算放大器,除電源共用外,四組運放相互獨立。放大電路見圖3-4所示。圖3-4放大電路當時,放大0.83倍;當時,放大5倍。3.6人機接口3.6.1鍵盤模塊鍵盤模塊采用獨立式按鍵作為輸入設備,為了防止按鍵抖動產(chǎn)生誤差,本設計采用軟件去抖動。按鍵電路見圖3-5所示。圖3-5按鍵模塊電阻作為上拉電阻,在有按鍵按下后容易判斷前兩次電平的變化。74als21是一個4輸入與門,當沒有按鍵按下時74als21

21、輸出高電平,有按鍵按下后輸出低電平,則低電平觸發(fā)了單片機的外部中斷0,從而認為有按鍵按下。由于觸發(fā)中斷需要一定的時間所以按鍵不采用硬件去抖動,而才用軟件去抖動。3.6.2顯示模塊顯示采用7seg-mpx6-cc-red(六位共陰7段led顯示器)顯示。七段顯示譯碼器將把輸入的bcd碼,翻譯成驅(qū)動七段led數(shù)碼管各對應的所需電平。由于擴展了i/o口,則七段顯示譯碼器直接接在8255的b口c口上由8255芯片直接驅(qū)動顯示。8255芯片b口定為片選端,c口定為位選端。待顯示字符從左到右依次放在一個數(shù)組中,從左向右順序顯示。程序中的段選碼表存在另外的一個數(shù)組中,表中段選碼表存放的次序為09、d、e、f

22、。當數(shù)碼管最后一位顯示“d”表示,顯示“e”表示,顯示“f”表示。3.7頻率計算模塊該模塊主要與單片機組合計算輸出信號的頻率。頻率計算電路見圖3-6所示。圖3-6頻率計算電路p3.0的功能為清零,使用定時器中斷來計算輸入波形頻率的大小。頻率計算原理見圖3-7所示。int0fsts圖3-7頻率計算原理當信號上升沿來到時2q端輸出低電平引起單片機中斷并開始記時,再一次信號上升沿來到中斷并停止記時,通過公式(3-5)計算頻率的大小。 (3-5)3.8電源模塊為了提高電源的穩(wěn)定性,減少紋波,部分電路采用變壓器降壓、整流、電容濾波將電壓降為,在通過穩(wěn)壓管7805電壓可穩(wěn)定在輸出。這樣可防止交流中的不穩(wěn)定

23、而造成輸出的直流電壓偏低,從而使單片機不能正常工作。電路對電源的要求較高,采用變壓器,將交流電變成,經(jīng)橋式整流、電容濾波,再經(jīng)過三端穩(wěn)壓器cw78m12穩(wěn)壓,輸出直流電壓(w78m12最大輸出電流為);同樣使用cw79m12穩(wěn)壓輸出負電壓。電壓給lm324芯片供電;從cw79m12穩(wěn)壓輸出負電壓再分壓輸出及的可調(diào)電壓;從cw78m12與cw79m12輸出端分壓,通過電位器調(diào)節(jié)輸出的電壓。3.9總體電路硬件電路設計從整體上主要分為8個模塊,分別為:控制處理模塊、按鍵模塊、顯示模塊、i/o口擴展模塊、d/a模塊、波形產(chǎn)生模塊、放大模塊、頻率計算模塊。硬件流程圖見圖3-8所示。i/o擴展電容切換ma

24、x038at89c51單片機dadj電壓調(diào)節(jié)fadj電壓調(diào)節(jié)顯示d/a轉(zhuǎn)換74ls74信號放大按鍵 圖3-8硬件流程在硬件連接完畢后先檢查是否連接錯誤防止元器件被較大的電流燒毀。單片機加電后首先進行自檢,max038不會有波形信號輸出,只有先按下按鍵后才會有波形輸出,在此之前dac0832也不會有電流輸出。當鍵按下后at89c51單片機處理按鍵的功能。單片機加電后開始初始化,led初始化時顯示六個8,約1秒后自動關閉顯示,表明單片機初始化正確完畢;在有按鍵按下后單片機處理按鍵的功能,控制相應的操作;at89c51單片機通過p0口傳輸操作指令,8255芯片的a口接dac0832,通過運放使dac

25、0832輸出的電流轉(zhuǎn)變?yōu)殡妷盒盘枺俳右粋€的電位器,以方便調(diào)節(jié)dac0832輸出的電壓。通過輸出的電壓大小改變電流的大小,從而控制輸出波形步進頻率。通過max038第10腳輸入的電流大小來改變輸出頻段的選擇。如果要使頻率連續(xù)輸出,則該變第8腳(fadj)電壓使之頻率連續(xù)輸出,調(diào)節(jié)占空比則調(diào)節(jié)第7腳(dadj)的輸入電壓。頻率輸出共分為四頻段,分別為:、和,對此相應的步進頻率為:、。頻段切換需改變max038的cosc引腳電容的容量;由于輸出波形的幅度是一個恒定值,通過集成運放來放大輸出信號;對于頻率的顯示則使用at89c51的定時器和計數(shù)器來計算輸出波形的頻率;步進加鍵和步進減鍵不會進行頻段的

26、選擇,在一個頻段內(nèi)循環(huán)加減,控制dac0832轉(zhuǎn)換輸出電壓范圍為。第4章軟件設計4.1流程圖及設計系統(tǒng)軟件按照其功能分為5個模塊,每個獨立的模塊通過主程序聯(lián)系組成一個完整的系統(tǒng)程序。5個模塊分別為:主程序模塊、顯示模塊、按鍵判斷模塊、頻率計算模塊、d/a轉(zhuǎn)換模塊。1主程序流程主程序流程見圖4-1所示。 步進按鍵ny波形按鍵初始化頻率計算正弦波波形輸出判斷按鍵顯示6個81秒后關閉等待按鍵中斷while(1)顯示等待按鍵中斷是否到1秒開始圖4-1主程序流程3鍵盤處理流程采用中斷的方法來設置鍵盤。采用外部中斷0,當有按鍵按下后所對應的端口變?yōu)榈碗娖剑ㄟ^74als21與門來啟動外部中斷0。鍵盤流程圖

27、見圖4-2所示。等待按鍵中斷判斷按鍵正弦波波形輸出頻率計算步進按鍵波形按鍵圖4-2鍵盤流程3計算頻率將max038輸出信號通過74ls74芯片接入到外部中斷1,當信號的高電平來到時,發(fā)生中斷,并啟動單片機本身的定時器來計時,在一次此中斷來臨時關閉定時器定時,從而獲得信號的周期。4顯示流程采用動態(tài)顯示從數(shù)組中取出顯示數(shù)字。對于以下的顯示標志采用“d”表示,以上到以下顯示標志用“e”表示,的顯示標志用“f”表示。程序中每一分鐘計算一次頻率并顯示,提高頻率更新速率。顯示流程見圖4-3所示。yn頻率計算顯示等待按鍵中斷是否到1秒圖4-3顯示流程5波形選擇應用p1.7、p1.6的輸出來選擇波形的輸出控制

28、。波形選擇見表4-1所示。表4-1波形選擇a1a0波形10或1正弦波00矩形波01三角波6步進頻率單片機控制dac0832輸出電壓來改變maxo38 iin端電流的大小,從而進行頻段的選擇。在沒用選擇波形輸出的情況下進行步進頻率則將有正弦波輸出。頻率步進流程分為步進加(圖4-4)和步進減(圖4-5)。步進加tem2+tem2=0輸出電壓tem2=17ny步進加tem2+tem2=0輸出電壓1秒后關閉nyd/a轉(zhuǎn)換iout1d/a轉(zhuǎn)換圖4-4頻率步進加步進減tem2+tem2+輸出電壓tem2=0ny圖4-5頻率步進減4.2軟件系統(tǒng)的使用說明1按鍵說明(1)按鍵0:步進加;(2)按鍵1:步進減;

29、(3)按鍵2:正弦波;(4)按鍵3:矩形波;(5)按鍵4:三角波。2軟件的使用單片機加電后首先進行自檢,max038不會有信號輸出,只有先按下按鍵后才會有信號輸出。在此之前8255芯片在單片機啟動時也將進行初始化操作,顯示初始化,顯示六個8。在沒有按鍵按下1秒后數(shù)碼管將又一次點亮。當信號輸出后按下步進加鍵(0號鍵)或步進減鍵(1號鍵)則波形的頻率將發(fā)生變化,在此之外在沒有選擇波形輸出時按下步進加鍵(0號鍵)或步進減鍵(1號鍵)將會啟動正弦波波形輸出。頻率輸出共有四頻段分別為:、和。頻段切換需該變max038 cosc引腳電容的容量。步進加鍵(0號鍵)和步進減鍵(1號鍵)不會進行頻段的選擇,并在

30、一個頻段內(nèi)循環(huán)加減。dac0832輸出電壓范圍為。軟件操作不具有對占空比的控制調(diào)節(jié),要調(diào)節(jié)占空比則需對max038的外圍電路進行調(diào)節(jié)。第5章調(diào)試本設計的調(diào)試分為軟件調(diào)試和硬件調(diào)試,對于軟件調(diào)試主要應用單片機仿真軟件(proteusprofessional)和keil軟件;硬件調(diào)試則搭接實際電路加電進行調(diào)試。1軟件調(diào)試在keil軟件中編寫原程序代碼,對代碼進行格式語法調(diào)試,將其錯誤的進行糾正。本設計應用高級語言編寫程序代碼,編寫時參考c語言語法格式編寫。應用單片機仿真軟件仿真部分電路,此部分電路包括按鍵電路、顯示電路、i/o擴展電路及dac0832電壓輸出。在單片機仿真軟件中裝載原程序代碼,并運

31、行,led數(shù)碼管將全部點亮,約1秒后自動熄滅。如果沒有按鍵按下led數(shù)碼管將再一次全部點亮。此部分出現(xiàn)故障則應在顯示程序代碼中修改,主要的問題是不顯示或部分數(shù)碼管不顯示,問題在于對數(shù)碼管進行動態(tài)掃描時段選碼或位選碼編寫錯誤對于dac0832的調(diào)試,則對dac0832輸入電流信號,輸出處將電流變換為電壓信號,參考表(3-1)理論輸出電壓對其軟件進行修改。另外在硬件調(diào)試中可以調(diào)節(jié)反饋回路的阻值,從而改變電壓的輸出;以一個信號源作為向單片機輸入的頻率信號,在頻率計算電路中計算頻率。在74ls74的cp端輸入固定頻率信號,觀察顯示頻率,如果與輸入頻率不相同則在顯示值的基礎上加減誤差值。這樣調(diào)節(jié)可以避免

32、頻率誤差。2硬件調(diào)試(1) 在不通電的情況下,按照設計電路接線圖檢查安裝電路,在安裝的電路按電路圖一一對照檢查連線;(2) 連線檢查完畢后,直觀檢查電源、地線、元器件接線端之間有無短路,連線間有無連接不良,二極管及電解電容的引線端有無錯接、反接,芯片是否安裝錯誤;(3) 把經(jīng)過準確測量的電源電壓接入電路,用電燈代替風機,首先觀察有無異?,F(xiàn)象,如冒煙、異味、觸摸器件有無過熱,電源是否短路等,如有異常現(xiàn)象立即切斷電源,排除故障后通電;(4) 在硬件調(diào)試當中主要調(diào)試波形發(fā)生電路、放大電路、波形轉(zhuǎn)換電路。在調(diào)試當中改變max038 cosc端的電容進行頻段切換,改變改變輸入電流的大小,從而改變頻率的大

33、小。在iin端輸入一個固定的電流,用示波器測量輸出頻率大小,改變dadj端的電壓(調(diào)節(jié)的電阻值),觀察輸出頻率的改變范圍是否是產(chǎn)生固定頻率的11.7倍范圍內(nèi),至少在11.5倍范圍這樣才符合設計要求,改變的電阻值也可以調(diào)節(jié)頻率的輸出。另外改變頻段在測量輸出頻率的范圍;(5) 在調(diào)節(jié)占空比當中,設置方波輸出調(diào)節(jié)電阻值。占空比范圍至少在內(nèi)符合設計要求;(6) max038的輸出固定峰峰值以符合設計要求,在波形的輸出端有放大波形信號,最大放大5倍。結論通過3個多月的畢業(yè)設計,函數(shù)發(fā)生器終于做成功了。按照老師的要求,本函數(shù)發(fā)生器能產(chǎn)生正弦波、矩形波、三角波;頻率范圍在內(nèi)連續(xù)可調(diào);方波占空比在范圍內(nèi)連續(xù)可

34、調(diào);輸出電壓:??傮w上完成任務書上的要求但是具體分析該系統(tǒng)發(fā)現(xiàn)仍然存在如下一些問題:1頻率范圍在時,輸出波形信號可以使用集成運放對輸出信號進行放大。超過這個頻段范圍時,在用此集成運放放大信號,信號將產(chǎn)生失真;2本函數(shù)發(fā)生器能顯示輸出波形的頻率,但信號的幅度卻沒有顯示。因此可以使用單片機的p2口連接d/a轉(zhuǎn)換,采集輸出信號幅度,用led顯示信號幅度;3函數(shù)發(fā)生器可以輸出較常用的正弦波波、三角波、方波三種信號,信號種類的數(shù)量少。技術只是一方面,更多的我是學會了利用資源?!皶r間作為一種最寶貴的資源”,讓我在這設計中體會頗深。由于在這設計過程中有很多事情要做,所以時間顯的特別緊張。但我制定了論文寫作計

35、劃。當然,我要付出比別人更多的時間和精力,因為我在做這個設計的同時也在做西南科技大學自考本科的畢業(yè)設計。但想到自己的前途,我又信心百倍的做了起來。以上是我這段時間的感受。通過本次設計,不僅是對我這三年所學知識的一個考驗,也是對我單片機編程與寫作水平的一個考核,而且還給了我一個找出自己不足的機會。致謝經(jīng)過幾個月的努力,終于將論文和設計做完了。感謝所有教授我知識的老師和含辛茹苦的父母,是他們給了我這樣的機會。同時在本次畢業(yè)設計和論文寫作中,也要感謝我的老師和同學對我的幫助,因為有了他們的支持,我才能堅持寫完!尤其是指導我的劉雪亭老師,她給了我許多技術指導,多次提出一些建設性的建議和創(chuàng)想,并提出我編

36、程中常犯的錯誤,這讓我進步神速,還有網(wǎng)絡上一些熱心的朋友。最后,還要感謝所有幫助過我的人,謝謝你們!參考文獻1芯片實驗室.2李金奎.單片機應用.北京:高等教育出版社,20063蘇平.單片機原理與接口技術.北京:電子工業(yè)出版社,20034李維祥,孫秀強,孫桂玲,等.mcs-51單片機原理與應用.天津:天津大學出版社,20015張紅潤,易濤.單片機應用技術教程.北京:清華大學出版社,20036唐程山.數(shù)字電子技術.北京:人民郵電出版社,20057葉淬編.電工電子技術.北京:化學工業(yè)出版社,20048鄭應光.模擬電子技術.江蘇:東南大學出版社,20059(美)湯姆.彼德魯編.電子技術完全實踐.德利斯

37、科學出版社,200610博益網(wǎng).11百度空間.12得益網(wǎng).13維普咨訊.14廖爐霖.跟我學protel 99.北京:冶金工業(yè)出版社,200015譚浩強編.c程序設計(第二版).北京:清華大學出版社,199916趙克林.c語言程序設計教程.四川:北京工業(yè)大學出版社,2004附錄1單片機端口分配表i/o端口分配作用方式p0.0連接8255的d0端輸出p0.1連接8255的d1端輸出p0.2連接8255的d2端輸出p0.3連接8255的d3端輸出p0.4連接8255的d4端輸出p0.5連接8255的d5端輸出p0.6連接8255的d6端輸出p0.7連接8255的d7端輸出p1.0按鍵0輸入p1.1按

38、鍵1輸入p1.2按鍵2輸入p1.3按鍵3輸入p1.4按鍵4輸入p1.6max038的a0端輸出p1.7max038的a1端輸出p2.074ls373片選端輸出p3.074ls74復端輸入p3.2按鍵中斷輸入端輸出p3.3外部信號輸入端輸入附錄2程序代碼#include <reg51.h>#include "absacc.h"#define com8255 xbyte0x007f #define pa8255 xbyte 0x007c #define pb8255 xbyte 0x007d #define pc8255 xbyte 0x007e#define ui

39、nt unsigned int #define uchar unsigned charsbit p3_0=p30;uchar n;uint table113=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x5f,0x79,0x71;uint table26=0xdf,0xef,0xf7,0xfb,0xfd,0xfe; uint table310=0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef;unsigned long count;unsigned long period; uint r

40、flag=0; uint key1; uint key2; uint z1; uint j1; uint s1; uchar status; bit flag; sbit p1_7=p17; sbit p1_6=p16; void service_int1() interrupt 0 using 2 /*外部中斷0*/ flag=1; status=p1; status=status|224;void delays (void) /*延時函數(shù)*/ char i,j; for(i=20;i>0;i-) for(j=248;j>0;j-);void keyscan(void) /*按鍵

41、函數(shù)*/ if(rflag) switch(status) case 254:key1=0;break; case 253:key1=1;break; case 251:key1=2;break; case 247:key1=3;break; case 231:key1=4;break; rflag=0; void zxb(void) /*正弦波函數(shù)*/ z1=1; j1=0; s1=0; p1_7=1; pa8255=25.6+(key2*12.8);void jxb(void) /*矩形波函數(shù)*/ z1=0; j1=1; s1=0; p1_7=0; p1_6=0; pa8255=25.6+

42、(key2*12.8);void sjb(void) /*三角波函數(shù)*/ z1=0; j1=0; s1=1; p1_7=0; p1_6=1; pa8255=25.6+(key2*12.8);void control (void) /*頻率計算函數(shù)*/ tmod=0x09; tr1=1; th0=0; tl0=0; p3_0=0;p3_0=1; tr1=1; et1=1; ea=1;void bxcs(void) /*波形產(chǎn)生函數(shù)*/ switch(key1) case 0: if(key2=17) key2=0;else key2+;if(z1=1) zxb();if(j1=1) jxb();

43、if(s1=1) sjb(); break; case 1: if(key2=0) key2=0; else key2+; if(z1=1) zxb(); if(j1=1) jxb(); if(s1=1) sjb(); break; case 2: zxb(); break; case 3: jxb(); break; case 4: sjb(); break; void int_1(void) interrupt 1 using 1 /*外部中斷1*/ ea=0; tr1=0; count=tl0+th0*256; rflag=1; ea=1;void pinlv(void) control

44、(); while(rflag=0) period=(1.0/count)*1000000; void display(void) /*顯示函數(shù)*/ uint g,s,b,x1,x2; if(period<1000) period=period*100; x2=(int)period%10; period=period/100; x1=(int)period%10; period=period/10; g=(int)period%10; period=period/10; s=(int)period%10; period=period/10; b=(int)period; pb8255=table1b; pc8255=table20; pb8255=table1s; pc8255=table21; pb8255=table3g; pc8255

溫馨提示

  • 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

提交評論