畢業(yè)設(shè)計(jì)(論文)_10Hz_10kHz連續(xù)可調(diào)矩形波發(fā)生器的設(shè)計(jì)及仿真分析_第1頁(yè)
畢業(yè)設(shè)計(jì)(論文)_10Hz_10kHz連續(xù)可調(diào)矩形波發(fā)生器的設(shè)計(jì)及仿真分析_第2頁(yè)
畢業(yè)設(shè)計(jì)(論文)_10Hz_10kHz連續(xù)可調(diào)矩形波發(fā)生器的設(shè)計(jì)及仿真分析_第3頁(yè)
畢業(yè)設(shè)計(jì)(論文)_10Hz_10kHz連續(xù)可調(diào)矩形波發(fā)生器的設(shè)計(jì)及仿真分析_第4頁(yè)
畢業(yè)設(shè)計(jì)(論文)_10Hz_10kHz連續(xù)可調(diào)矩形波發(fā)生器的設(shè)計(jì)及仿真分析_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、各專(zhuān)業(yè)完整優(yōu)秀畢業(yè)論文設(shè)計(jì)圖紙10Hz-10kHz連續(xù)可調(diào)矩形波發(fā)生器的設(shè)計(jì)及仿真分析摘要:本文概述了波形發(fā)生器的發(fā)展?fàn)顩r及其研究意義;比較和研究了信號(hào)發(fā)生電路選擇方案、單片機(jī)選擇方案、顯示電路選擇方案和按鍵電路選擇方案;分析和設(shè)計(jì)了系統(tǒng)的框圖、軟件流程和硬件電路;比較和解析了通過(guò)對(duì)軟件和硬件的仿真調(diào)試所得出的仿真數(shù)據(jù);歸納了設(shè)計(jì)的誤差并得出論文的結(jié)論。關(guān)鍵詞:矩形波發(fā)生器、連續(xù)可調(diào)、單片機(jī)、仿真Design and simulation analysis of 10Hz-10kHz continuously adjustable square wave generatorAbstract:

2、This article outlines the development and significance of waveform generator, compares and researches the selective schemes of signal generating circuit, single chip microcomputer, display circuit and key circuit, analyzes and designs the whole diagram of the system, the software processes and hardw

3、are circuit, compares and resolves the simulation data obtained by the simulation software and hardware debugging, summarizes the error of design and comes to the conclusion of the paper.Keywords: square wave generator, continuously adjustability, single chip microcomputer, simulation引言波形發(fā)生器是指產(chǎn)生所需參數(shù)

4、的電測(cè)試信號(hào)的儀器。按信號(hào)波形可分為正弦信號(hào)、函數(shù)(波形)信號(hào)、脈沖信號(hào)和隨機(jī)信號(hào)發(fā)生器等四大類(lèi)。波形發(fā)生器又稱(chēng)信號(hào)源,在生產(chǎn)實(shí)踐和科技領(lǐng)域中有著廣泛的應(yīng)用。它能夠產(chǎn)生多種波形,如三角波、鋸齒波、矩形波(含方波)和正弦波。隨著電子測(cè)量技術(shù)與計(jì)算機(jī)技術(shù)的緊密結(jié)合,一種新的信號(hào)發(fā)生器多功能波形發(fā)生器應(yīng)運(yùn)而生。所謂多功能波形發(fā)生器1是能夠產(chǎn)生大量的標(biāo)準(zhǔn)信號(hào)和用戶(hù)定義信號(hào),并保證高精度、高穩(wěn)定性、可重復(fù)性和易操作性的電子儀器。因而它具有廣闊的應(yīng)用前景。通過(guò)各方面的調(diào)查研究表明,目前國(guó)內(nèi)外優(yōu)越的波形發(fā)生器廠家大部分采用以單片機(jī)為核心的,來(lái)實(shí)現(xiàn)多功能波形發(fā)生器。1 概述波形發(fā)生器亦稱(chēng)函數(shù)發(fā)生器,作為實(shí)驗(yàn)用

5、信號(hào)源,是現(xiàn)今各種電子電路實(shí)驗(yàn)設(shè)計(jì)應(yīng)用中必不可少的儀器設(shè)備之一。目前,市場(chǎng)上常見(jiàn)的波形發(fā)生器多為純硬件的搭接而成,且波形種類(lèi)有限,多為鋸齒、正弦、方波和三角等波形。波形發(fā)生器作為一種常見(jiàn)的應(yīng)用電子儀器設(shè)備,傳統(tǒng)的一般可以完全由硬件電路搭接而成,如采用555振蕩電路發(fā)生正弦波、三角波和方波的電路便是一種途徑。但是這種電路存在波形質(zhì)量差、控制難、可調(diào)范圍小、電路復(fù)雜和體積大等缺點(diǎn)。在科學(xué)研究和生產(chǎn)實(shí)踐中,如工業(yè)過(guò)程控制、生物醫(yī)學(xué)和地震模擬機(jī)械振動(dòng)等領(lǐng)域常常要用到低頻信號(hào)源。但是由硬件電路構(gòu)成的低頻信號(hào)其性能難以令人滿(mǎn)意,而且由于低頻信號(hào)源所需的RC值要很大。大電阻和大電容在制作上有困難,參數(shù)的精度

6、亦難以保證。體積大、漏電和損耗顯著更是其致命的弱點(diǎn)。一旦工作需求功能有增加,則電路復(fù)雜程度會(huì)大大增加。利用單片機(jī)采用程序設(shè)計(jì)方法來(lái)產(chǎn)生信號(hào),具有線(xiàn)路相對(duì)簡(jiǎn)單、結(jié)構(gòu)緊湊、價(jià)格低廉、頻率穩(wěn)定度高、抗干擾能力強(qiáng)和用途廣泛等優(yōu)點(diǎn),并且能夠?qū)Σㄐ芜M(jìn)行細(xì)微調(diào)整,改良波形,使其滿(mǎn)足系統(tǒng)的要求。只要對(duì)電路稍加修改,調(diào)整程序,即可完成功能升級(jí)。1.1波形發(fā)生器的發(fā)展?fàn)顩r波形發(fā)生器2是能夠產(chǎn)生大量的標(biāo)準(zhǔn)信號(hào)和用戶(hù)定義信號(hào),并保證高精度、高穩(wěn)定性、可重復(fù)性和易操作性的電子儀器。函數(shù)波形發(fā)生器具有連續(xù)的相位變換和頻率穩(wěn)定性等優(yōu)點(diǎn),不僅可以模擬各種復(fù)雜信號(hào),還可對(duì)頻率、幅值、占空比和波形進(jìn)行動(dòng)態(tài)、及時(shí)的控制,并能夠與其

7、它儀器進(jìn)行通訊,并組成自動(dòng)測(cè)試系統(tǒng),因此被廣泛用于自動(dòng)控制系統(tǒng)、震動(dòng)激勵(lì)、通訊和儀器儀表領(lǐng)域。近幾年來(lái),國(guó)際上任意波形發(fā)生器技術(shù)發(fā)展主要體現(xiàn)在以下幾個(gè)方面3:過(guò)去由于頻率很低,所以應(yīng)用的范圍比較狹小。隨著輸出波形頻率的提高,使得任意波形發(fā)生器能應(yīng)用于越來(lái)越廣的領(lǐng)域。任意波形發(fā)生器軟件的開(kāi)發(fā)正使任意波形的輸入變得更加方便和容易。任意波形發(fā)生器通常允許用一系列的點(diǎn)、直線(xiàn)和固定的函數(shù)段把波形數(shù)據(jù)存入存儲(chǔ)器。同時(shí)可以利用一種非常強(qiáng)有力的數(shù)學(xué)方程輸入方式,復(fù)雜的波形可以由幾個(gè)比較簡(jiǎn)單的公式復(fù)合成vf(t)形式的波形方程的數(shù)學(xué)表達(dá)式產(chǎn)生。各種計(jì)算機(jī)語(yǔ)言的飛速發(fā)展也推動(dòng)了任意波形發(fā)生器軟件技術(shù)的發(fā)展。目前可

8、以利用可視化編程語(yǔ)言(如Visual Basic和Visual C等等)編寫(xiě)任意波形發(fā)生器的軟面板(虛擬儀器),這樣可以直接從計(jì)算機(jī)顯示屏上輸入任意波形,來(lái)實(shí)現(xiàn)波形的輸入。隨著信息技術(shù)蓬勃發(fā)展,臺(tái)式儀器在走了一段下坡路之后,又在繁榮起來(lái)。不過(guò)現(xiàn)在的新的臺(tái)式儀器的形態(tài),和幾年前的已有很大的不同。這些新一代臺(tái)式儀器具有多種特性,可以執(zhí)行多種功能。而且外形尺寸與價(jià)格,都比過(guò)去的類(lèi)似產(chǎn)品減少了一半。1.2波形發(fā)生器的研究意義波形發(fā)生器主要給被測(cè)電路提供所需要的已知信號(hào)(各種波形),然后用其它儀表測(cè)量有用的參數(shù)??梢?jiàn)波形發(fā)生器在各種實(shí)驗(yàn)應(yīng)用和試驗(yàn)測(cè)試處理中,它不是測(cè)量?jī)x器,而是根據(jù)使用者的要求,作為激勵(lì)

9、源,仿真各種測(cè)試信號(hào),提供給被測(cè)電路,以滿(mǎn)足測(cè)量或各種實(shí)際需要。目前我國(guó)已經(jīng)開(kāi)始研制任意波形發(fā)生器,并取得了可喜的成果。但總的來(lái)說(shuō),我國(guó)任意波形發(fā)生器還沒(méi)有形成真正的產(chǎn)業(yè)。就目前國(guó)內(nèi)的成熟產(chǎn)品來(lái)看,多為一些PC儀器插卡,我國(guó)目前在任意波形發(fā)生器的種類(lèi)和性能都與國(guó)外同類(lèi)產(chǎn)品存在較大的差距,因此加緊對(duì)這類(lèi)產(chǎn)品的研制顯得迫在眉睫。1.3研究?jī)?nèi)容本設(shè)計(jì)以單片機(jī)為核心設(shè)計(jì)的函數(shù)信號(hào)發(fā)生器。信號(hào)發(fā)生器采用數(shù)字波形合成技術(shù),通過(guò)硬件電路和軟件程序相結(jié)合,可輸出自定義波形,如正弦波、方波、三角波及其他任意波形,波形的頻率和幅度在一定范圍內(nèi)可任意改變;介紹了波形的生成原理、硬件電路和軟件部分的設(shè)計(jì)原理;介紹了單

10、片機(jī)控制D/A轉(zhuǎn)換器產(chǎn)生上述信號(hào)的硬件電路和軟件編程、D/A轉(zhuǎn)換器(DAC0832)的原理和使用方法、AT89C52以及與設(shè)計(jì)電路有關(guān)的各種芯片以及關(guān)于產(chǎn)生不同信號(hào)的信號(hào)源的設(shè)計(jì)方案。該信號(hào)發(fā)生器具有體積小、價(jià)格低、性能穩(wěn)定和功能齊全的優(yōu)點(diǎn)。2 方案論證和比較2.1信號(hào)發(fā)生電路方案論證2.1.1方案一采用RC串并聯(lián)振蕩器4產(chǎn)生正弦信號(hào),利用比較器產(chǎn)生方波,通過(guò)積分產(chǎn)生矩形波。頻率變化利用RC大小控制。此方案優(yōu)點(diǎn):該技術(shù)成熟,可參考資料較多。缺點(diǎn)外部電路元器件較多、調(diào)試難度較大、頻率穩(wěn)定度和準(zhǔn)確度都比較差,很難滿(mǎn)足頻率變化要求,更無(wú)法滿(mǎn)足步進(jìn)調(diào)節(jié)。2.1.2方案二基于MAX03856芯片通過(guò)51

11、單片機(jī)通過(guò)DAC0832數(shù)模轉(zhuǎn)換器產(chǎn)生小階梯模擬量正弦波波形,通過(guò)正弦波可比較產(chǎn)生矩形波。優(yōu)點(diǎn)是頻率可調(diào),且有詳細(xì)的工業(yè)成型內(nèi)部電路原理圖。缺點(diǎn)由積分電路衰減產(chǎn)生信號(hào),且在不同頻率段無(wú)法使用一個(gè)積分電路完成。而且其硬件制作復(fù)雜,調(diào)試較麻煩。2.1.3方案三通過(guò)51單片機(jī)和DAC0832產(chǎn)生方波、三角波和正弦波的小階梯式模擬量波形,通過(guò)采樣點(diǎn)間的間隔時(shí)間和采樣點(diǎn)數(shù)目的控制產(chǎn)生10Hz-10kHz的頻率,經(jīng)過(guò)運(yùn)算放大器可產(chǎn)生矩形波。以上三種方案綜合考慮,結(jié)合自身所學(xué)知識(shí),選取方案三。2.2單片機(jī)選擇方案論證2.2.1方案一AT89S5256單片機(jī)是一種高性能8位單片微型計(jì)算機(jī)。它是由中央處理器CP

12、U、存儲(chǔ)器、寄存器和I/O接口制作在一塊集成電路芯片上。從而構(gòu)成較完整的單片機(jī),而且其價(jià)格相對(duì)其他單片機(jī)便宜。2.2.2方案二C805F0057單片機(jī)是完全集成的混合信號(hào)系統(tǒng)級(jí)芯片,具有與8051兼容的微控制器內(nèi)核,與MCS-51指令集完全兼容。除了具有標(biāo)準(zhǔn)8052的數(shù)字外設(shè)部件,片內(nèi)還集成了數(shù)據(jù)采集和控制系統(tǒng)中常用的模擬部件和其他數(shù)字外設(shè)及功能部件,而且執(zhí)行速度快,但其價(jià)格昂貴。以上兩種方案綜合考慮,結(jié)合市場(chǎng)單片機(jī)的占有率,選擇方案一。2.3顯示電路方案論證2.3.1方案一顯示電路采用LED數(shù)碼管。LED數(shù)碼管由8個(gè)發(fā)光二極管組成,每只數(shù)碼管輪流顯示各自的字符。由于人眼具有視覺(jué)暫留特性,當(dāng)每

13、只數(shù)碼管顯示的時(shí)間間隔小于1/16s時(shí)人眼感覺(jué)不到閃動(dòng),看到的是每只數(shù)碼管常亮。其優(yōu)點(diǎn)是使用數(shù)碼管顯示編程較易,價(jià)格便宜。2.3.2方案二顯示電路采用LCD液晶顯示器1602。其功率小,效果明顯,顯示編程容易控制,可以顯示字母。其缺點(diǎn)是元器件成本高。由于本設(shè)計(jì)需要顯示參數(shù)較多,所以采用方案二。2.4按鍵電路方案論證2.4.1方案一按鍵電路采用矩陣式鍵盤(pán),矩陣式鍵盤(pán)的按鍵觸點(diǎn)接于由行、列母線(xiàn)構(gòu)成的矩陣電路的交叉處。當(dāng)鍵盤(pán)上沒(méi)有鍵閉合時(shí),所有的行和列線(xiàn)都斷開(kāi),行線(xiàn)都呈高電平。當(dāng)某一個(gè)鍵閉合時(shí),該鍵所對(duì)應(yīng)的行線(xiàn)和列線(xiàn)被短路。2.4.2方案二按鍵電路采用獨(dú)立式鍵盤(pán),獨(dú)立式鍵盤(pán)的按鍵觸點(diǎn)接于AT89S5

14、2芯片。當(dāng)鍵盤(pán)上沒(méi)有閉合時(shí),所有鍵都斷開(kāi),當(dāng)某一鍵閉合時(shí),該鍵對(duì)應(yīng)的編碼由AT89S52輸出。由于本發(fā)生器產(chǎn)生的波形頻率較大,同時(shí)需要改變幅度和占空比,需要按鍵較多,所以采用方案二。3 系統(tǒng)設(shè)計(jì)3.1框圖設(shè)計(jì)該系統(tǒng)采用單片機(jī)作為數(shù)據(jù)處理及控制核心,由單片機(jī)完成人機(jī)界面、系統(tǒng)控制、信號(hào)的采集分析以及信號(hào)的處理和變換,采用按鍵輸入,利用液晶顯示電路輸出數(shù)字顯示的方案。將設(shè)計(jì)任務(wù)分解為按鍵電路和顯示電路等模塊。圖1所示為系統(tǒng)的總體框圖。DAC083251單片機(jī)鍵盤(pán)控制頻率,幅度,占空比復(fù)位電路放大電路波形輸出數(shù)碼管顯示電路圖1 系統(tǒng)框圖3.1.1系統(tǒng)流程分析4*4鍵盤(pán)輸入全部用作功能鍵,鍵盤(pán)具體劃分

15、如下:第一行主要功能是占空比調(diào)節(jié),調(diào)節(jié)范圍為10%-100%,默認(rèn)值為50%,有占空比加10%、占空比減10%、占空比50%;第二行主要功能是幅值的調(diào)節(jié),幅值調(diào)節(jié)范圍是0.1-5.0,默認(rèn)值為5.0,調(diào)節(jié)步進(jìn)加0.1或者減0.1;第三行、第四行實(shí)現(xiàn)頻率調(diào)節(jié)功能,有由個(gè)位至千位的逐位調(diào)節(jié),有千位調(diào)節(jié)加減、百位調(diào)節(jié)加減、十位調(diào)節(jié)加減以及個(gè)位調(diào)節(jié)加減。詳細(xì)按鍵圖參見(jiàn)表2。先輸入開(kāi)啟波形鍵然后按照要求執(zhí)行程序。其中是DAC0832產(chǎn)生的波形,再由運(yùn)算放大器進(jìn)行放大,單片機(jī)通過(guò)P0口的八位和P2.0/P2.2控制LCD的顯示,在選擇的頻段范圍內(nèi)通過(guò)設(shè)定的按鍵步進(jìn)調(diào)節(jié)就可以得到需要的波形。顯示說(shuō)明簡(jiǎn)碼參見(jiàn)

16、表1。表1 LCD顯示簡(jiǎn)碼簡(jiǎn)碼名稱(chēng)FZ幅值BX波形PL頻率ZK占空比表2 鍵盤(pán)界面開(kāi)啟波形占空比增大占空比減小關(guān)閉波形無(wú)無(wú)幅值增加幅值減小頻率千位加頻率千位減頻率百位加頻率百位減頻率十位加頻率十位減頻率個(gè)位加頻率個(gè)位減3.1.2頻率調(diào)節(jié)分析8在D/A轉(zhuǎn)換部分和波形發(fā)生部分則根據(jù)以下公式計(jì)算:控制頻率D/A轉(zhuǎn)換器公式: 控制占空比D/A轉(zhuǎn)換器公式: 電路的振蕩頻率為: 波形占空比為: 說(shuō)明:由于電路原因以及程序問(wèn)題,設(shè)計(jì)的波形發(fā)生器產(chǎn)生的波形的占空比、頻率、振幅等不可能如理論那么準(zhǔn)確。3.1.3詳細(xì)流程圖開(kāi) 始開(kāi) 始初始化功能按鍵LCD顯示鍵盤(pán)掃描頻率調(diào)節(jié)幅值調(diào)節(jié)占空比調(diào)節(jié)顯示數(shù)值范圍是否在10

17、%100%之間幅值在15v之間計(jì)算D/A所需要數(shù)據(jù)頻率在10HZ-10KHZ之間計(jì)算D/A所需要數(shù)據(jù)單片機(jī)輸入P3口串行數(shù)據(jù)單片機(jī)輸入P3口串行數(shù)據(jù)采集D/A所需要數(shù)據(jù)單片機(jī)輸入P3口串行數(shù)據(jù)圖2 系統(tǒng)的詳細(xì)工作流程圖3.2硬件設(shè)計(jì)3.2.1硬件設(shè)計(jì)原理波形的產(chǎn)生是通過(guò)AT89S52單片機(jī)執(zhí)行某一波形發(fā)生程序,向D/A轉(zhuǎn)換器的輸入端按一定的規(guī)律發(fā)送數(shù)據(jù),從而在D/A轉(zhuǎn)換電路的輸出端得到相應(yīng)的電壓波形。AT89S52單片機(jī)的最小系統(tǒng)有三種聯(lián)接方式。一種是兩級(jí)緩沖器型,即輸入數(shù)據(jù)經(jīng)過(guò)兩級(jí)緩沖器型,送至D/A轉(zhuǎn)換電路。第二種是單級(jí)緩沖器型,輸入數(shù)據(jù)經(jīng)輸入寄存器直接送入D/A寄存器,然后送D/A轉(zhuǎn)換電

18、路。第三種是兩個(gè)緩沖器直通,輸入數(shù)據(jù)直接送D/A轉(zhuǎn)換電路進(jìn)行轉(zhuǎn)換。本電路仿真的總圖參見(jiàn)附件1。3.2.2單片機(jī)最小系統(tǒng)的設(shè)計(jì)AT89S52是片內(nèi)有ROM/EPROM的單片機(jī),因此,這種芯片構(gòu)成的最小系統(tǒng)簡(jiǎn)單可靠9。用AT89S52單片機(jī)構(gòu)成最小應(yīng)用系統(tǒng)時(shí),只要將單片機(jī)接上時(shí)鐘電路和復(fù)位電路即可,如圖3所示為AT89S52單片機(jī)最小系統(tǒng)。由于集成度的限制,最小應(yīng)用系統(tǒng)只能用作一些小型的控制單元。其應(yīng)用特點(diǎn):有可供用戶(hù)使用的大量I/O口線(xiàn)。內(nèi)部存儲(chǔ)器容量有限。應(yīng)用系統(tǒng)開(kāi)發(fā)具有特殊性。圖3 單片機(jī)最小系統(tǒng)3.2.2 4*4鍵盤(pán)的設(shè)計(jì)本系統(tǒng)4*4鍵盤(pán)采用線(xiàn)反轉(zhuǎn)法,鍵盤(pán)分別連接P1口的8位,如圖4所示。

19、圖4 4*4矩陣鍵盤(pán)3.2.3 數(shù)模轉(zhuǎn)換電路的設(shè)計(jì)DAC08329 是8位的D/A轉(zhuǎn)換集成芯片,與微處理器兼容。這個(gè)D/A芯片以其價(jià)格低廉、接口簡(jiǎn)單和轉(zhuǎn)換控制容易等優(yōu)點(diǎn),在單片機(jī)應(yīng)用系統(tǒng)中得到廣泛的應(yīng)用。D/A轉(zhuǎn)換器由8位輸入鎖存器、8位DAC寄存器、8位D/A轉(zhuǎn)換電路及轉(zhuǎn)換控制電路構(gòu)成。DAC0832是微處理器兼容型D/A轉(zhuǎn)換器,可以充分利用微處理器的控制能力實(shí)現(xiàn)對(duì)D/A轉(zhuǎn)換的控制。這種芯片有許多控制引腳,可以和微處理器控制線(xiàn)相連,接受微處理器的控制,如ILE、/CS、/WR1、/WR2、/XFER端。其主要特點(diǎn)如下:有兩級(jí)鎖存控制功能,能夠?qū)崿F(xiàn)多通道D/A的同步轉(zhuǎn)換輸出。DAC0832內(nèi)部

20、無(wú)參考電壓源,須外接參考電壓源。DAC0832為電流輸入型D/A轉(zhuǎn)換器,要獲得模擬電壓輸出時(shí),需要外加轉(zhuǎn)換電路。DAC0832的引腳及邏輯結(jié)構(gòu)如圖5所示:圖5 DAC0832的引腳圖及邏輯結(jié)構(gòu)數(shù)模轉(zhuǎn)換電路的設(shè)計(jì)思路是由單片機(jī)采用編程方法產(chǎn)生波形,通過(guò)D/A轉(zhuǎn)換模塊DAC0832的單緩沖模式。單片機(jī)的P3口連接DAC0832的八位數(shù)據(jù)輸入端,DAC0832的輸出端接放運(yùn)算放大器,經(jīng)過(guò)放大后輸出所要的波形。其電路如圖6所示。圖6 DAC0832波形產(chǎn)生電路3.2.3 LCD液晶顯示電路的設(shè)計(jì)通過(guò)P0口控制LCD的片選位,P2.0和P2.2控制讀寫(xiě),通過(guò)定時(shí)器定時(shí)接收參數(shù)并動(dòng)態(tài)顯示參數(shù)值,其詳細(xì)電路

21、如圖7所示。圖7 LCD液晶顯示電路3.3 軟件設(shè)計(jì)矩形波發(fā)生器的軟件設(shè)計(jì)包括主程序、延時(shí)子程序、系統(tǒng)初始化程序、顯示子程序、鍵盤(pán)掃描程序和定時(shí)器中斷子程序。其中主程序用來(lái)控制整個(gè)程序的執(zhí)行,它與各子程序緊密相聯(lián),共同實(shí)現(xiàn)矩形波發(fā)生器各種功能的執(zhí)行。3.3.1 主程序主程序包括系統(tǒng)初始化及顯示程序,是一個(gè)死循環(huán)系統(tǒng)。其流程如圖8所示:圖8主程序流程圖開(kāi)始系統(tǒng)初始化顯示3.3.2 顯示程序顯示子程序流程如圖9所示:顯示子程序入口分離頻率和占空比的各位數(shù)字高位置低電平串口發(fā)送各位數(shù)字字型碼軟件延時(shí)結(jié)束圖 9 顯示子程序流程圖3.3.3 定時(shí)中斷程序本設(shè)計(jì)采用單片機(jī)的定時(shí)器0,定時(shí)器工作方式選擇1工

22、作方式,來(lái)對(duì)波形頻率進(jìn)行控制,流程如圖10所示。定時(shí)器1中斷入口TR0=0重裝定時(shí)初值TR0=1結(jié)束圖10 定時(shí)器中斷程序流程圖3.3.4 鍵盤(pán)掃描程序鍵盤(pán)掃描用外部中斷方式0實(shí)現(xiàn),采用的是線(xiàn)反轉(zhuǎn)法,鍵盤(pán)掃描采用逐行掃描的方法。關(guān)于鍵盤(pán)掃描程序的說(shuō)明: 頻率可調(diào)時(shí),占空比保持原狀不變,反之亦然,只能進(jìn)行單一變量的調(diào)節(jié)。 頻率調(diào)節(jié):通過(guò)不同按鍵可以進(jìn)行加1Hz、減1Hz、加100Hz、減100Hz、加1000Hz和減1000Hz操作。如果按住某個(gè)鍵不放,便會(huì)執(zhí)行連續(xù)加值或減值操作。這里的頻率可調(diào)節(jié)的最大值為10000Hz,頻率可調(diào)節(jié)的最小值為10Hz。 占空比調(diào)節(jié):可進(jìn)行加0.1與減0.1操作,

23、分別由1號(hào)鍵、2號(hào)鍵控制。要注意的是占空比的初值是0.5,定義的ZKB為0.5,故調(diào)節(jié)占空比時(shí),ZKB會(huì)進(jìn)行加0.1或者減0.1操作。 為了減輕單片機(jī)的工作量,在軟件設(shè)計(jì)中采取了這樣的措施,在修改參數(shù)確定后才進(jìn)行單片機(jī)定時(shí)器0初值的計(jì)算。NYEA=0軟件延時(shí)消抖外部中斷0入口是否為抖動(dòng)鍵盤(pán)掃描,得到鍵碼查表取鍵值i按鍵處理實(shí)時(shí)顯示圖11 鍵盤(pán)中斷處理子程序流程圖鍵盤(pán)口初始化EA=1結(jié)束鍵盤(pán)中斷處理子程序流程如圖11所示:3.3.5 波形發(fā)生程序說(shuō)明:此程序截取自總程序中的一段,是矩形波的發(fā)生函數(shù),詳細(xì)程序源碼參見(jiàn)附件3。void square() /矩形波函數(shù)d+;if(d=k)P3=0xff

24、*chh/50;elseP3=0x00; 3.3.6 總程序 參見(jiàn)附件3。4 仿真調(diào)試4.1 軟件調(diào)試4.1.1調(diào)試問(wèn)題系統(tǒng)軟件調(diào)試是通過(guò)程序調(diào)節(jié)從而使電路系統(tǒng)更好的工作,以期得到更接近準(zhǔn)確的數(shù)據(jù),從而使電路工作輸出更精確,更接近實(shí)際。本設(shè)計(jì)主要有以下軟件調(diào)試:在對(duì)頻率處理時(shí),由于電路本身設(shè)計(jì)不足和外界的干擾,致使LCD12864顯示的頻率與用數(shù)字示波器觀察得到的頻率有一定的差別,但通過(guò)對(duì)數(shù)據(jù)的觀察和比較,發(fā)現(xiàn)了其中的誤差規(guī)律。在D/A轉(zhuǎn)換控制占空比的過(guò)程中,由于要取得雙極性輸出,需要用到運(yùn)算放大器,因此占空比的輸出也會(huì)有誤差。延時(shí)消除鍵抖動(dòng),就是說(shuō)一旦發(fā)現(xiàn)有鍵按下,就延時(shí)25ms以后再測(cè)按鍵

25、的狀態(tài)。這樣就避免按鍵發(fā)生抖動(dòng)的那一段時(shí)間,使CPU能可靠的讀按鍵的狀態(tài)。鍵盤(pán)掃描中應(yīng)防止誤按按鍵的情況。這種情況的發(fā)生通常是由于鍵掃描速度和鍵處理速度較快,當(dāng)某一個(gè)按下的鍵還未松開(kāi)時(shí),鍵掃描程序和鍵處理程序就執(zhí)行了。為了防止發(fā)生這種情況,在鍵掃描程序中不僅要檢測(cè)是否有按鍵按下,在有鍵按下的情況,作一次鍵處理,而且在鍵處理完畢后,還應(yīng)檢測(cè)按下的鍵是否松開(kāi),只有當(dāng)按下的鍵松開(kāi)以后,程序才往下執(zhí)行。這樣每按一個(gè)鍵,只作一個(gè)鍵處理,使兩者達(dá)到同步,消除按一次按鍵有多次鍵值輸入的錯(cuò)誤情況。按鍵電壓抖動(dòng)變化如圖12所示。4.1.2調(diào)試結(jié)果軟件調(diào)試分為Keil程序調(diào)試和Proteus仿真電路調(diào)試兩種,再通

26、過(guò)兩種軟件的協(xié)調(diào)調(diào)試可得出理想結(jié)果。下面通過(guò)四張軟件仿真結(jié)果圖的比較,通過(guò)按鍵改變其中某一參數(shù)而達(dá)到改變波形的目的。LCD液晶屏顯示的簡(jiǎn)碼“FZ”表示波形幅值,“BX”表示波形,“PL”表示波形的頻率,“ZK”表示波形的占空比。仿真結(jié)果如圖13、14、15和16所示。圖13 頻率為10Hz,占空比為0.5,幅值為5.0,周期為98.80ms圖14 調(diào)節(jié)頻率后的波形,頻率為3030Hz,占空比為0.5,幅值為5.0,周期為323.75us說(shuō)明:通過(guò)圖13和圖14進(jìn)行比較,通過(guò)按鍵調(diào)節(jié)波形頻率,圖中頻率值由10Hz調(diào)節(jié)至3030Hz,實(shí)際測(cè)試的周期值98.80ms(實(shí)際頻率值10.1Hz)變?yōu)?2

27、3.75us(實(shí)際頻率值3088.8Hz),其他參數(shù)保持不變,對(duì)兩圖波形進(jìn)行比較,波形的頻率發(fā)生變化。 圖15 調(diào)節(jié)占空比后的波形,頻率為3030Hz,占空比為0.5,幅值為3.7說(shuō)明:通過(guò)圖14和圖15進(jìn)行比較,通過(guò)按鍵調(diào)節(jié)波形幅值,圖中幅值由5.0調(diào)節(jié)至3.7,其他參數(shù)保持不變,對(duì)兩圖波形進(jìn)行比較,波形的幅值發(fā)生變化。圖16 調(diào)節(jié)幅值后的波形,頻率為3030Hz,占空比為0.7,幅值為3.7說(shuō)明:通過(guò)圖15和圖16進(jìn)行比較,通過(guò)按鍵調(diào)節(jié)波形占空比,圖中占空比由0.5調(diào)節(jié)至0.7,其他參數(shù)保持不變,比較兩圖波形,波形的占空比發(fā)生變化。4.2硬件調(diào)試整個(gè)系統(tǒng)硬件的調(diào)試有以下三個(gè)部分:采用現(xiàn)成的

28、單片機(jī)學(xué)習(xí)板,進(jìn)行插線(xiàn)連接,缺少的芯片自行購(gòu)買(mǎi),再在另外的電路板上焊接。運(yùn)放放大器使用的是LM324N芯片,D/A轉(zhuǎn)換芯片使用的是DAC0832芯片。D/A轉(zhuǎn)換電路中,為了保證D/A轉(zhuǎn)換器總線(xiàn)在空閑方式時(shí)為高電平,D/A轉(zhuǎn)換器的數(shù)據(jù)線(xiàn)和時(shí)鐘線(xiàn)都應(yīng)接上拉電阻與電源相連。4.3設(shè)計(jì)總結(jié)本設(shè)計(jì)能產(chǎn)生10hz-10khz的連續(xù)可調(diào)的矩形波,并且可通過(guò)調(diào)節(jié)占空比、幅值、頻率等參數(shù)。 輸出波形的頻率范圍為1Hz10kHz,可以通過(guò)鍵盤(pán)進(jìn)行步進(jìn)粗調(diào)和微調(diào)頻率,通過(guò)外部中斷可同步調(diào)節(jié)頻率,具有在低頻部分調(diào)節(jié)步進(jìn)小,在高頻部分調(diào)節(jié)步進(jìn)大的特點(diǎn)。占空比在 10%90%范圍內(nèi),可通過(guò)鍵盤(pán)進(jìn)行步進(jìn)粗調(diào)。 輸出波形幅度

29、范圍為0.15.0V,可通過(guò)按鍵進(jìn)行調(diào)整,每次步進(jìn)為0.1。電路中的LCD12864液晶屏具有同時(shí)顯示輸出波形的波形、頻率、占空比和幅度的功能。4.4 硬件實(shí)體電路參見(jiàn)附件2硬件圖。4.5 誤差分析通過(guò)比較軟件仿真和硬件仿真結(jié)果的對(duì)比,本設(shè)計(jì)出現(xiàn)了比較大的誤差,導(dǎo)致誤差原因可能有以下幾點(diǎn):由于D/A轉(zhuǎn)換精度的關(guān)系,本設(shè)計(jì)只是采用8位精度的D/A轉(zhuǎn)換芯片,D/A轉(zhuǎn)換精度越高,產(chǎn)生的占空比和頻率也越精確,本設(shè)計(jì)對(duì)于輸入的每個(gè)頻率值都不一定能達(dá)到實(shí)際值,只能盡量的接近,但是在高頻的時(shí)候這種缺陷越明顯,要彌補(bǔ)這個(gè)缺陷。采用按鍵調(diào)控的方便簡(jiǎn)捷,但是難免會(huì)在電路出現(xiàn)誤差,而且誤差在調(diào)控的時(shí)候也會(huì)出現(xiàn),通過(guò)

30、計(jì)算得出的理論值與測(cè)量值之間存在差別。在D/A轉(zhuǎn)換控制占空比的過(guò)程中,由于要取得雙極性輸出,需要用到運(yùn)算放大器,因此占空比的輸出也會(huì)有誤差。5 結(jié)論本設(shè)計(jì)按照課題的要求,采用按鍵調(diào)控的方法對(duì)波形幅值、占空比和頻率進(jìn)行選擇和調(diào)控,然后得到所需的幅值、占空比和頻率,并通過(guò)LCD液晶屏動(dòng)態(tài)顯示,而不是傳統(tǒng)的采用可變電阻調(diào)節(jié)占空比和頻率的方法,很方便實(shí)用。參考文獻(xiàn)1謝維成,楊家國(guó),單片機(jī)原理與應(yīng)用及C51程序設(shè)計(jì)M,清華大學(xué)出版社。20092李華,MCS-51 單片機(jī)實(shí)用接口技術(shù)。北京航空航天大學(xué)出版社。20083李剛,林凌,王炎。新概念單片機(jī)教程。天津大學(xué)出版社。20084趙文博,劉文濤。單片機(jī)語(yǔ)言

31、C51典型程序設(shè)計(jì)。人民郵電出版社。20095李全利,遲榮強(qiáng)。單片機(jī)原理及接口技術(shù)。高等教育出版社。20076李朝青。單片機(jī)原理與接口技術(shù)。北京航空航天大學(xué)出版社。19997相迎軍,李興城,李傳軍。 基于AT89C51單片機(jī)的專(zhuān)用信號(hào)發(fā)生器設(shè)計(jì)與應(yīng)用J。 微計(jì)算機(jī)信息。20048胡學(xué)武。用AT89C51實(shí)現(xiàn)超低頻任意函數(shù)發(fā)生器J?,F(xiàn)代電子技術(shù)。20059張鵬,陳健。一種高精度波形發(fā)生器的設(shè)計(jì)J。單片機(jī)與嵌入式系統(tǒng)應(yīng)用。2005 附件1主電路圖附件2硬件圖附件3總程序#include#define uchar unsigned char#define uint unsigned intsbit

32、rs=P20;sbit rw=P21;sbit eg=P22;uchar code table=FZ:;/方波顯示代碼uchar code table2=0,1,2,3,4,5,6,7,8,9; /數(shù)字代碼2,用于頻率顯示uchar code table5=9,8,7,6,5,4,3,2,1,0; /數(shù)字代碼5,用于占空比顯示uchar code table3=ZK:; /占空比uchar code table4=FB ;/幅度uchar code table7=BX:; /波形uchar d=0,i,k=127,tl,th; /t1,th定時(shí)器低位高位int ww=0,qw=0,bw=0,s

33、w=0,gw=0,n=10,chh=50;/chh,nint t,f,m,choice=0;void delay(uint x) /延時(shí)程序int i,j;for(i=0;ix;i+)for(j=0;j120;j+);void writezl(uchar zl) /LCD寫(xiě)入子程序rs=0;rw=0;P0=zl;delay(5);eg=1;delay(5);eg=0;void writesj(uchar sj) /LCD賦值子程序rs=1;rw=0;P0=sj;delay(5);eg=1;delay(5);eg=0;void initial() /LCD初始化程序eg=0;writezl(0x

34、38);writezl(0x0c);writezl(0x06);writezl(0x80);void display() /LCD顯示程序 if(choice!=0)writezl(0x80+0x00);writesj(table0);writezl(0x80+0x01);writesj(table1);writezl(0x80+0x02);writesj(table2);writezl(0x80+0x03);writesj(table3);writesj(table2chh/10);writezl(0x80+0x05);writesj(.);writezl(0x80+0x06);writes

35、j(table2chh%10);writezl(0x80+0x04);writezl(0x80+0x09);writesj(table70);writezl(0x80+0x0a);writesj(table71);writezl(0x80+0x0b);writesj(table72);writezl(0x02);writezl(0x80+0x40);writesj(P);writezl(0x80+0x41);writesj(L); writezl(0x80+0x42);writesj(:); writezl(0x80+0x43);writesj(table2ww); writezl(0x80+

36、0x44);writesj(table2qw); writezl(0x80+0x45);writesj(table2bw);writezl(0x80+0x46);writesj(table2sw); writezl(0x80+0x47);writesj(table2gw); writezl(0x80+0x48);writesj(H); writezl(0x80+0x49);writesj(Z);writezl(0x80+0x4a);writesj( );writezl(0x80+0x4b);writesj(table30);writezl(0x80+0x4c);writesj(table31)

37、;writezl(0x80+0x4d);writesj(table32);writezl(0x80+0x4e);writesj(.);writezl(0x80+0x4f);writesj(table5k/25);if(choice=1) writezl(0x80+0x0c); writesj(table40);writezl(0x80+0x0d); writesj(table41);writezl(0x80+0x0e); writesj(table42);else if(choice=0)writezl(0x01);void key1() /按鍵1,開(kāi)啟choice=1;void key2()

38、/按鍵2,占空比增大if(k28)k-=25;void key4() /按鍵0,波形關(guān)閉choice=0;void key5() if(k28)k-=25;void key7()/按鍵7,幅度增加if(chh!=50)chh+;elsechh=chh;void key8()/按鍵8,幅度減小if(chh!=0)chh-;void key9()/按鍵9,千位加if(n=1000)n=n-1000;void key11() /按鍵11,百位加 if(n90)n=n-100;void key13() /按鍵13,十位加 if(n9)n=n-10;void key15() /按鍵15,個(gè)位加 if(n0)n=n-1

溫馨提示

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

評(píng)論

0/150

提交評(píng)論