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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

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

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

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

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

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

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

7、依賴計(jì)算機(jī)通訊輸出波形數(shù)據(jù)。在函數(shù)發(fā)生器的發(fā)展中功能越來越多,結(jié)構(gòu)上也越來越復(fù)雜,體積也越來小。但是在整體設(shè)計(jì)的造價(jià)上花費(fèi)越大,對(duì)于使用者來說操作過于復(fù)雜。綜合上述,我設(shè)計(jì)了一款面向教學(xué)使用的函數(shù)發(fā)生器。該函數(shù)發(fā)生器體積小、重量輕、操作簡(jiǎn)單。對(duì)于購買者,在價(jià)格上更有著比其它同性能的函數(shù)發(fā)生器更低的價(jià)格。1.3函數(shù)發(fā)生器實(shí)現(xiàn)的特色功能為了克服函數(shù)發(fā)生器在教學(xué)使用中輸出波形易失真、精度低、價(jià)格昂貴及不易攜帶等缺點(diǎn),設(shè)計(jì)一款能產(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è)計(jì)函數(shù)發(fā)生器是由軟件和硬件相組合,產(chǎn)生在教學(xué)使用中常見的三種波形信號(hào),即正弦波、方波、三角波三種信號(hào)。信號(hào)輸出的頻率、占空比范圍寬,輸出信號(hào)幅度可調(diào),并且輸出頻率可以顯示,體積小,價(jià)格低廉,克服函數(shù)發(fā)生器在教學(xué)使用中的缺點(diǎn)。第33頁共35頁第2章系統(tǒng)設(shè)計(jì)2.1方案論證根據(jù)題目的要求,本信號(hào)發(fā)生器可分解為以下幾個(gè)部分,結(jié)構(gòu)框圖如圖2-1所示。i/o擴(kuò)展波形產(chǎn)生mcu控制單元周期計(jì)算按鍵信號(hào)放大顯示圖2-1函數(shù)發(fā)生器組成結(jié)構(gòu)一般有如下幾種實(shí)現(xiàn)方案:方案一:采用直接數(shù)字頻率合成(dds)芯片實(shí)現(xiàn):dds是較為先進(jìn)的一種頻率合成技術(shù),基于dds技術(shù)的波形發(fā)生器具有輸出頻率穩(wěn)定、準(zhǔn)確

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

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

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

12、口。圖3-1單片機(jī)主控模塊3.2i/o擴(kuò)展模塊該模塊主要完成單片機(jī)的輸入輸出口的擴(kuò)展,并以此模塊驅(qū)動(dòng)顯示。1at89c51單片機(jī)的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,設(shè)無關(guān)位取0。a、b、c口均設(shè)為輸出口,選用方式0工作。74ls373是一個(gè)鎖存器,在電路中起到地址鎖存作用。i/o擴(kuò)展電路見圖3-2所示。圖3-2i/o擴(kuò)展電路3.3d/a

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

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

15、0832輸出電壓范圍9.5,基準(zhǔn)電壓為。 (3-1)dac0832輸入量的大小。由公式(3-1)計(jì)算dac0832輸出電壓的大小。設(shè)計(jì)輸出電壓為19.5,每一次步進(jìn)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-由上表可以得出輸出的步進(jìn)量值為12.8。通過單片機(jī)對(duì)dac0832的輸入量步進(jìn)加減12.8,使獲得相應(yīng)的輸出電壓。3.4波形產(chǎn)生模塊本模塊功能主要輸出信號(hào)波形及實(shí)現(xiàn)頻段選擇控制。本設(shè)計(jì)采用的是maxim公司生產(chǎn)的max038芯片,它是一種高頻精密的函數(shù)發(fā)生器,可產(chǎn)生三角波、正弦波、方波,且頻率及占空比可調(diào)。max038芯片內(nèi)部包含有精密帶隙電壓參考、鑒相器和同步輸出,能以最少的外部元件構(gòu)成一臺(tái)多波形的高頻函數(shù)發(fā)生器。max038的核心部分是一個(gè)電流控制的基本振蕩器。由恒定電流對(duì)外部電容充電和放電,來獲得三角波和方波信號(hào)輸出

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

37、科學(xué)出版社,200610博益網(wǎng).11百度空間.12得益網(wǎng).13維普咨訊.14廖爐霖.跟我學(xué)protel 99.北京:冶金工業(yè)出版社,200015譚浩強(qiáng)編.c程序設(shè)計(jì)(第二版).北京:清華大學(xué)出版社,199916趙克林.c語言程序設(shè)計(jì)教程.四川:北京工業(yè)大學(xué)出版社,2004附錄1單片機(jī)端口分配表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復(fù)端輸入p3.2按鍵中斷輸入端輸出p3.3外部信號(hào)輸入端輸入附錄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í)函數(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) /*頻率計(jì)算函數(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等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論