




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 . . . 0 引言波形隨著電子測量與其他部門對(duì)各類信號(hào)發(fā)生器的廣泛需求與電子技術(shù)的迅速發(fā)展,促使信號(hào)發(fā)生器種類增多,性能提高。尤其隨著70年代微處理器的出現(xiàn),更促使信號(hào)發(fā)生器向著自動(dòng)化、智能化方向發(fā)展。現(xiàn)在,許多信號(hào)發(fā)生器帶有微處理器,因而具備了自校、自檢、自和智能化方向發(fā)展。但市面上能看到的儀器在頻率精度、帶寬、波形種類與程控方面都已不能滿足許多方面實(shí)際應(yīng)用的需求。加之各類功能的半導(dǎo)體集成芯片的快動(dòng)故障診斷和自動(dòng)波形形成和修正等功能,可以和控制計(jì)算機(jī)與其他測量儀器一起方便的構(gòu)成自動(dòng)測試系統(tǒng)。在科學(xué)研究和生產(chǎn)實(shí)踐中,如工業(yè)過程控制,生物醫(yī)學(xué),地震模擬機(jī)械振動(dòng)等領(lǐng)域常常要用到低頻信號(hào)源。而由
2、硬件電路構(gòu)成的低頻信號(hào)其性能難以令人滿意,而且由于低頻信號(hào)源所需的RC很大;大電阻,大電容在制作上有困難,參數(shù)的精度亦難以保證;體積大,漏電,損耗顯著更是致命的弱點(diǎn)。一旦工作需求功能有增加,則電路復(fù)雜程度會(huì)大大增加。隨著集成電路的迅速發(fā)展,用集成電路可很方便地構(gòu)成各種信號(hào)波形發(fā)生器。用集成電路實(shí)現(xiàn)的信號(hào)波形發(fā)生器與其它信號(hào)波形發(fā)生器相比,其波形質(zhì)量、幅度和頻率穩(wěn)定性等性能指標(biāo),都有了很大的提高。當(dāng)前信號(hào)發(fā)生器總的趨勢是向著寬頻率覆蓋、低功耗、高頻率精度、多功能、自動(dòng)化速生產(chǎn),都使我們研制一種低功耗、寬頻帶,能產(chǎn)生多種波形并具有程控等低頻的信號(hào)發(fā)生器成為可能。在 70 年代前,信號(hào)發(fā)生器主要有兩
3、類:正弦波和脈沖波,而函數(shù)發(fā)生器介于兩類之間,能夠提供正弦波、余弦波、方波、三角波、上弦波等幾種常用標(biāo)準(zhǔn)波形,產(chǎn)生其它波形時(shí),需要采用較復(fù)雜的電路和機(jī)電結(jié)合的方法。這個(gè)時(shí)期的波形發(fā)生器多采用模擬電子技術(shù),而且模擬器件構(gòu)成的電路存在著尺寸大、價(jià)格貴、功耗大等缺點(diǎn),并且要產(chǎn)生較為復(fù)雜的信號(hào)波形,則電路結(jié)構(gòu)非常復(fù)雜。同時(shí),主要表現(xiàn)為兩個(gè)突出問題,一是通過電位器的調(diào)節(jié)來實(shí)現(xiàn)輸出頻率的調(diào)節(jié),因此很難將頻率調(diào)到某一固定值;二是脈沖的占空比不可調(diào)節(jié)。在 70 年代后,微處理器的出現(xiàn),可以利用處理器、A/D/和 D/A,硬件和軟件使波形發(fā)生器的功能擴(kuò)大,產(chǎn)生更加復(fù)雜的波形。這時(shí)期的波形發(fā)生器多以軟件為主,實(shí)質(zhì)
4、是采用微處理器對(duì) DAC的程序控制,就可以得到各種簡單的波形。 90 年代末,出現(xiàn)幾種真正高性能、高價(jià)格的函數(shù)發(fā)生器、但是HP公司推出了型號(hào)為 HP770S的信號(hào)模擬裝置系統(tǒng),它由 HP8770A任意波形數(shù)字化和 HP1776A波形發(fā)生軟件組成。HP8770A實(shí)際上也只能產(chǎn)生8 種波形,而且價(jià)格昂貴。不久以后,Analogic公司推出了型號(hào)為 Data-2020的多波形合成器,Lecroy 公司生產(chǎn)的型號(hào)為9100 的任意波形發(fā)生器等。到了二十一世紀(jì),隨著集成電路技術(shù)的高速發(fā)展,出現(xiàn)了多種工作頻率可過 GHz 的DDS 芯片,同時(shí)也推動(dòng)了函數(shù)波形發(fā)生器的發(fā)展,2003 年,Agilent的產(chǎn)品
5、 33220A能夠產(chǎn)生 17 種波形,最高頻率可達(dá)到 20M,2005 年的產(chǎn)品N6030A 能夠產(chǎn)生高達(dá) 500MHz 的頻率,采樣的頻率可達(dá) 1.25GHz。早在 1978 年,由美國 Wavetek 公司和日本東亞電波工業(yè)公司公布了最高取樣頻率為 5MHz ,可以形成 256 點(diǎn)(存儲(chǔ)長度)波形數(shù)據(jù),垂直分辨率為8bit,主要用于振動(dòng)、醫(yī)療、材料等領(lǐng)域的第一代高性能信號(hào)源,經(jīng)過將近30年的發(fā)展,伴隨著電子元器件、電路、與生產(chǎn)設(shè)備的高速化、高集成化,波形發(fā)生器的性能有了飛速的提高。變得操作越來越簡單而輸出波形的能力越來越強(qiáng)。波形操作方法的好壞,是由波形發(fā)生器控制軟件質(zhì)量保證的,編輯功能增加
6、的越多,波形形成的操作性越好。以下給出了幾種波形發(fā)生器的性能指標(biāo),從中可以看出當(dāng)今世界上重要電子儀器生產(chǎn)商在波形發(fā)生器上的研制水平。Tektronix公司的AWG710型,主要技術(shù)指標(biāo): 通道數(shù):2, 每通道的最高采樣速率:4GMS/s ,垂直分辨力:8比特,儲(chǔ)存容量:8M;橫河電機(jī)公司的AG5100型,通道數(shù):2, 每通道的最高采樣速率:1GMS/s ,垂直分辨力:8比特,儲(chǔ)存容量:8M;普源公司的DG3121型,通道數(shù):2, 每通道的最高采樣速率:300MS/s ,垂直分辨力:14比特,儲(chǔ)存容量:1M。從中不難看出,經(jīng)過將近30年的發(fā)展,伴隨著電子元器件、電路、與生產(chǎn)設(shè)備的高速化、高集成化
7、,波形發(fā)生器的性能有了飛速的提高。變得操作越來越簡單而輸出波形的能力越來越強(qiáng)。就目前國的成熟產(chǎn)品來看,我國目前在波形發(fā)生器的種類和性能差距正在逐漸地縮小。1設(shè)計(jì)要求與方案論證依據(jù)應(yīng)用場合,需要實(shí)現(xiàn)的波形種類,波形發(fā)生器的具體指標(biāo)要求會(huì)有所不同。依據(jù)不同的設(shè)計(jì)要求選取不同的設(shè)計(jì)方案,通常,波形發(fā)生器需要實(shí)現(xiàn)的波形有正弦波、方波、三角波和鋸齒波。有些場合可能還需要任意波形的產(chǎn)生。各種波形共有的指標(biāo)有:波形的頻率、幅度要求,頻率穩(wěn)定度,準(zhǔn)確度等。對(duì)于不同波形,具體的指標(biāo)要求也會(huì)有所差異,例如,占空比是脈沖波形特有的指標(biāo)。波形發(fā)生器的設(shè)計(jì)方案多種多樣,大致可以分為三大類:純硬件設(shè)計(jì)法、純軟件設(shè)計(jì)法和軟
8、硬件結(jié)合設(shè)計(jì)法。1.1設(shè)計(jì)要求設(shè)計(jì)制作一個(gè)波形發(fā)生器,該波形發(fā)生器能產(chǎn)生正弦波、方波、三角波和由用戶編輯的特定形狀波形。要求如下所示(1)具有產(chǎn)生正弦波、方波、三角波三種周期性波形的功能。(2)用鍵盤輸入編輯生成上述三種波形(同周期)的線性組合波形,以與由基波與其諧波(5次以下)線性組合的波形。(3)具有波形存儲(chǔ)功能。(4)輸出波形的頻率圍為100Hz20kHz(非正弦波頻率按10次諧波計(jì)算);重復(fù)頻率可調(diào),頻率步進(jìn)間隔100Hz。(5)輸出波形幅度圍05V(峰-峰值),可按步進(jìn)0.1V(峰-峰值)調(diào)整。(6)具有顯示輸出波形的類型、重復(fù)頻率(周期)和幅度的功能。1.2 方案論證方案一:波形發(fā)
9、生器設(shè)計(jì)的純硬件法早期,波形發(fā)生器的設(shè)計(jì)主要是采用運(yùn)算放大器加分立元件來實(shí)現(xiàn)。實(shí)現(xiàn)的波形比較單一,主要為正弦波、方波和三角波。工作原理嗍也相對(duì)簡單:首先是產(chǎn)生正弦波,然后通過波形變換(正弦波通過比較器產(chǎn)生方波,方波經(jīng)過積分器變?yōu)槿遣?實(shí)現(xiàn)方波和三角波。在各種波形后加上一級(jí)放大電路,可以使輸出波形的幅度達(dá)到要求,通過開關(guān)電路實(shí)現(xiàn)不同輸出波形的切換,改變電路的具體參數(shù)可以實(shí)現(xiàn)頻率、幅度和占空比的改變。通過對(duì)電路結(jié)構(gòu)的優(yōu)化與所用元器件的嚴(yán)格選取可以提高電路的頻率穩(wěn)定性和準(zhǔn)確度。純硬件法中,正弦波的設(shè)計(jì)是基礎(chǔ),實(shí)現(xiàn)方法也比較多,電路形式一般有LC、RC和石英晶體振蕩器三類。LC振蕩器適宜于產(chǎn)生幾Hz
10、至幾百M(fèi)Hz的高頻信號(hào);石英晶體振蕩器能產(chǎn)生幾百kHz至幾十MHz的高頻信號(hào)且穩(wěn)定度高;對(duì)于頻率低于幾MHz,特別是在幾百Hz時(shí),常采用RC振蕩電路。RC振蕩電路又分為文氏橋振蕩電路、雙T網(wǎng)絡(luò)式和移相式振蕩電路等類型。其中,以文氏橋振蕩電路最為常用。目前,實(shí)現(xiàn)波形發(fā)生器最簡單的方法是采用單片集成的函數(shù)信號(hào)發(fā)生器。它是將產(chǎn)生各種波形的功能電路集成優(yōu)化到一個(gè)集成電路芯片里,外加少量的電阻、電容元件來實(shí)現(xiàn)。采用這種方法的突出優(yōu)勢是電路簡單,實(shí)現(xiàn)方便,精度高,性能優(yōu)越;缺點(diǎn)是功能較全的集成芯片價(jià)格較貴。實(shí)際中應(yīng)用較多的單片函數(shù)信號(hào)發(fā)生器有MAX038(最高頻率可達(dá)40MHz)和ICL8038(最高頻率
11、為300kHz),方案一基本框圖如圖1所示。比較器積分器正選波差分放大器方波三角波圖1方案一基本框圖方案二:波形發(fā)生器設(shè)計(jì)的純軟件法 波形發(fā)生器的設(shè)計(jì)還可以采用純軟件的方法來實(shí)現(xiàn)。虛擬儀器鞠使傳統(tǒng)儀器發(fā)生了革命性的變化,是21世紀(jì)測試儀器領(lǐng)域技術(shù)發(fā)展的重要方向。它以計(jì)算機(jī)為基礎(chǔ),軟件為核心,沒有傳統(tǒng)儀器那樣具體的物理結(jié)構(gòu)在計(jì)算機(jī)上實(shí)現(xiàn)儀器的虛擬面板,通過軟件設(shè)計(jì)實(shí)現(xiàn)和改變儀器的功能。例如用圖形化編程工具LabVIEW來實(shí)現(xiàn)任意波形發(fā)生器的功能:在LabVIEW軟件的前面板通過拖放控件,設(shè)計(jì)儀器的功能面板(如波形顯示窗口,波形選擇按鍵,波形存儲(chǔ)回放等工作界面),在軟件的后面板直接拖放相應(yīng)的波形函
12、數(shù)并進(jìn)行參數(shù)設(shè)置或直接調(diào)用編程函數(shù)來設(shè)計(jì)任意波形以實(shí)現(xiàn)波形產(chǎn)生功能;完成的軟件打包后,可脫離編程環(huán)境獨(dú)立運(yùn)行。實(shí)現(xiàn)任意波形發(fā)生器的功能。采用純軟件的虛擬儀器設(shè)計(jì)思路可以使設(shè)計(jì)簡單、高效,僅改變軟件程序就可以輕松實(shí)現(xiàn)波形功能的改變或升級(jí)。從長遠(yuǎn)角度來看,純軟件法成本較低。軟件法的缺點(diǎn)是波形的響應(yīng)速度和精度遜色于硬件法,方案二基本框圖如圖2所示。信號(hào)輸入數(shù)據(jù)采集數(shù)據(jù)處理波形顯示參數(shù)測量頻譜分析圖2方案二基本框圖方案三:軟硬件結(jié)合法軟硬件結(jié)合的波形發(fā)生器設(shè)計(jì)方法同時(shí)兼具軟硬件設(shè)計(jì)的優(yōu)勢:既具有純硬件設(shè)計(jì)的快速、高性能,同時(shí)又具有軟件控制的靈活性、智能性。如以單片機(jī)和單片集成函數(shù)發(fā)生器為核心。輔以鍵盤
13、控制、液晶顯示等電路,設(shè)計(jì)出智能型函數(shù)波形發(fā)生器,采用軟硬件結(jié)合的方法可以實(shí)現(xiàn)功能較全、性能更優(yōu)的波形發(fā)生器,同時(shí)還可以擴(kuò)展波形發(fā)生器的功能,比如通過軟件編程控制實(shí)現(xiàn)波形的存儲(chǔ)、運(yùn)算、打印等功能,采用USB接口設(shè)計(jì),使波形發(fā)生器具有遠(yuǎn)程通信功能等。目前,實(shí)驗(yàn)、科研和工業(yè)生產(chǎn)中使用的信號(hào)源大多采用此方法來實(shí)現(xiàn)。綜合考慮,純硬件設(shè)計(jì)法功能較單一,波形改變困難、控制的靈活性不夠,不具備智能性,其中由運(yùn)算放大器加分立元件組成的波形發(fā)生器,除在學(xué)生實(shí)驗(yàn)訓(xùn)練中使用外,基本不被采用。純軟件設(shè)計(jì)法實(shí)現(xiàn)簡單,程序改變與功能升級(jí)靈活,但實(shí)現(xiàn)的波形精度與響應(yīng)速度不如硬件法高。純軟件法主要適用于對(duì)波形精度、響應(yīng)速度要
14、求不是很高的場合。相比之下,軟硬件結(jié)合的方法可以設(shè)計(jì)出性能最優(yōu)、功能擴(kuò)展靈活、控制智能化的新一代的波形發(fā)生器,可以滿足教學(xué)、科研、工業(yè)生產(chǎn)等各方面對(duì)波形發(fā)生器性能有較高要求的應(yīng)用場合。本設(shè)計(jì)采用方案三的方法軟硬件設(shè)計(jì)法,其方案能夠產(chǎn)生很好的波形,也易實(shí)現(xiàn)。本次設(shè)計(jì)所研究的就是對(duì)所需要的幾種波形輸出對(duì)應(yīng)的數(shù)字信號(hào),在通過D/A轉(zhuǎn)換器和單片機(jī)部分的轉(zhuǎn)換輸出一組連續(xù)變化的05V的電壓脈沖值。在通過顯示部分顯示其頻率和波形。在設(shè)計(jì)時(shí)分塊來做,按照波形設(shè)定,D/A轉(zhuǎn)換,51單片機(jī)連接,鍵盤控制和顯示五個(gè)模塊的設(shè)計(jì)。最后通過聯(lián)調(diào)仿真,做出電路板成品,系統(tǒng)結(jié)構(gòu)框圖如圖3所示。按鍵復(fù)位電路AT89C52LCD
15、顯示D/A轉(zhuǎn)換芯片電流電壓轉(zhuǎn)換電流波形輸出圖3系統(tǒng)結(jié)構(gòu)框圖模塊介紹:1波形設(shè)定:對(duì)任意波形的手動(dòng)設(shè)定。2 D/A轉(zhuǎn)換:主要選用DAC0832來把數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào),在送入單片機(jī)進(jìn)行處理。3電流電壓轉(zhuǎn)換:LM324運(yùn)放。4單片機(jī)部分:最小系統(tǒng)。5鍵盤:用按鍵來控制輸出波形的種類和數(shù)值的輸入。6顯示部分:采用液晶顯示波形的頻率和波形類別。2 系統(tǒng)硬件設(shè)計(jì)波形的產(chǎn)生是通過AT89C52單片機(jī)執(zhí)行某一波形發(fā)生程序,向D/A轉(zhuǎn)換器的輸入端按一定的規(guī)律發(fā)生數(shù)據(jù),從而在D/A轉(zhuǎn)換電路的輸出端得到相應(yīng)的電壓波形。AT89C52單片機(jī)和數(shù)模轉(zhuǎn)換器件DAC0832產(chǎn)生所需不同信號(hào)的低頻信號(hào)源,其信號(hào)幅度和頻率
16、都是可以按要求控制的。文中簡要介紹了DAC0832數(shù)模轉(zhuǎn)換器的結(jié)構(gòu)原理和使用方法,AT89C52的基礎(chǔ)理論,以與與設(shè)計(jì)電路有關(guān)的各種芯片應(yīng)用。2.1 單片機(jī)AT89C52與接口設(shè)計(jì)AT89C52是一種低功耗、高性能CMOS 8位微控制器,具有8K在系統(tǒng)可編程Flash 存儲(chǔ)器。使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。AT89C52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Fl
17、ash,256字節(jié)RAM,32 位I/O 口線,看門狗定時(shí)器,兩個(gè)數(shù)據(jù)指針,三個(gè)16 位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片晶振與時(shí)鐘電路。另外,AT89C52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作17。掉電保護(hù)方式下,RAM容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。AT89C52具有如下特點(diǎn):40個(gè)引腳,8k Bytes Flash片程序存儲(chǔ)器,256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),32個(gè)外部雙向輸入/輸出(I/O)口,5個(gè)中斷優(yōu)先級(jí)2
18、層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門狗(WDT)電路,片時(shí)鐘振蕩器,其功能引腳圖如圖4所示。圖4 單片機(jī)引腳單片機(jī)AT89C52的接口與引腳功能(1):接+5V電源。 (2):接電源地。(3)P0 口:P0口是一個(gè)8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0具有部上拉電阻。在flash編程時(shí),P0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。(4)P1 口:P1 口是一個(gè)具有部
19、上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P1 端口寫“1”時(shí),部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入(P1.1/T2EX),具體如下表所示。在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié),P1口引腳與其功能如表1所示。表1 P1口引腳與其功能引腳號(hào)第二功能P1.0T2(定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入),時(shí)鐘輸出P1.1T2EX(定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號(hào)和
20、方向控制)P1.5MOSI(在系統(tǒng)編程用)P1.6MISO(在系統(tǒng)編程用)P1.7SCK(在系統(tǒng)編程用)(5)P2 口:P2 口是一個(gè)具有部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P2 端口寫“1”時(shí),部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX DPTR)時(shí),P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強(qiáng)的部上拉發(fā)送1。在使用8位地址(如MOVX RI)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的容。在
21、flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。(6)P3 口:P3 口是一個(gè)具有部上拉電阻的8 位雙向I/O 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P3 端口寫“1”時(shí),部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于部電阻的原因,將輸出電流(IIL)。在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào),P3口亦作為AT89C52特殊功能(第二功能)使用,P3口引腳與其功能如下表2所示。表2 P3口引腳與其功能引腳號(hào)第二功能P3.0RXD(串行輸入)P3.1TXD(串行輸出)P3.2 (外部中斷0)P3.3 (外部中斷0)P3
22、.4T0(定時(shí)器0外部輸入)P3.5T1(定時(shí)器1外部輸入)P3.6 (外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 (外部數(shù)據(jù)存儲(chǔ)器寫選通)(7)RST:復(fù)位輸入。晶振工作時(shí),RST腳持續(xù)2 個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位。看門狗計(jì)時(shí)完成后,RST 腳輸出96 個(gè)晶振周期的高電平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能無效。DISRTO默認(rèn)狀態(tài)下,復(fù)位高電平有效。(8)ALE/:地址鎖存控制信號(hào)(ALE)是訪問外部程序存儲(chǔ)器時(shí),鎖存低8 位地址的輸出脈沖。在flash編程時(shí),此引腳()也用作編程輸入脈沖。在一般情況下,ALE 以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時(shí)器或
23、時(shí)鐘使用。然而,特別強(qiáng)調(diào),在每次訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),ALE脈沖將會(huì)跳過。如果需要,通過將地址為8EH的SFR的第0位置“1”,ALE操作將無效。這一位置“1”,ALE 僅在執(zhí)行MOVX 或MOVC指令時(shí)有效。否則,ALE 將被微弱拉高。這個(gè)ALE 使能標(biāo)志位(地址為8EH的SFR的第0位)的設(shè)置對(duì)微控制器處于外部執(zhí)行模式下無效。(9):外部程序存儲(chǔ)器選通信號(hào)()是外部程序存儲(chǔ)器選通信號(hào)。當(dāng)AT89C52從外部程序存儲(chǔ)器執(zhí)行外部代碼時(shí),在每個(gè)機(jī)器周期被激活兩次,而在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),PSEN將不被激活。(10)/VPP:訪問外部程序存儲(chǔ)器控制信號(hào)。為使能從0000H 到FFFFH的外部程序
24、存儲(chǔ)器讀取指令,必須接GND。為了執(zhí)行部程序指令,EA應(yīng)該接VCC。在flash編程期間,A也接收12伏VPP電壓。(11)XTAL1:振蕩器反相放大器和部時(shí)鐘發(fā)生電路的輸入端。(12)XTAL2:振蕩器反相放大器的輸出端。AT89C52是片有ROM/EPROM的單片機(jī),因此,這種芯片構(gòu)成的最小系統(tǒng)簡單可靠,最小系統(tǒng)如圖5所示。圖5 AT89C52最小系統(tǒng)單片機(jī)的時(shí)鐘信號(hào)用來提供單片機(jī)各種微操作的時(shí)間基準(zhǔn),復(fù)位操作則使單片機(jī)的片電路初始化,使單片機(jī)從一種確定的狀態(tài)開始運(yùn)行。在引腳XTAL1和XTAL2外接晶體振蕩器或瓷諧振蕩器,構(gòu)成了部振蕩方式。由于單片機(jī)部有一個(gè)高增益反相放大器,當(dāng)外接晶振后
25、,就構(gòu)成了自積振蕩,并產(chǎn)生振蕩時(shí)鐘脈沖。晶振通常選用6MHZ、12MHZ、或24MHZ。當(dāng)MCS-5l系列單片機(jī)的復(fù)位引腳RST(全稱RESET)出現(xiàn)2個(gè)機(jī)器周期以上的高電平時(shí),根據(jù)應(yīng)用的要求,復(fù)位操作通常有兩種基本形式:上電復(fù)位和上電或開關(guān)復(fù)位。上電復(fù)位要求接通電源后,自動(dòng)實(shí)現(xiàn)復(fù)位操作。上電或開關(guān)復(fù)位要求電源接通后,單片機(jī)自動(dòng)復(fù)位,并且在單片機(jī)運(yùn)行期間,用開關(guān)操作也能使單片機(jī)復(fù)位。上電后,由于電容C3的充電和反相門的作用,使RST持續(xù)一段時(shí)間的高電平。當(dāng)單片機(jī)已在運(yùn)行當(dāng)中時(shí),按下復(fù)位鍵K后松開,也能使RST為一段時(shí)間的高電平,從而實(shí)現(xiàn)上電或開關(guān)復(fù)位的操作。51單片機(jī)的復(fù)位是由RESET引腳來
26、控制的,此引腳與高電平相接超過24個(gè)振蕩周期后,51單片機(jī)即進(jìn)入芯片部復(fù)位狀態(tài),而且一直在此狀態(tài)下等待,直到RESET引腳轉(zhuǎn)為低電平后,才檢查EA引腳是高電平或低電平,若為高電平則執(zhí)行芯片部的程序代碼,若為低電平便會(huì)執(zhí)行外部程序。51單片機(jī)在系統(tǒng)復(fù)位時(shí),將其部的一些重要寄存器設(shè)置為特定的值,至于部RAM部的數(shù)據(jù)則不變。2.2 D/A轉(zhuǎn)換電路的設(shè)計(jì)1 DAC0832芯片:DAC0832是CMOS工藝制造的8位D/A轉(zhuǎn)換器,屬于8位電流輸出型D/A轉(zhuǎn)換器,轉(zhuǎn)換時(shí)間為1us,片帶輸入數(shù)字鎖存器。DAC0832與單片機(jī)接成數(shù)據(jù)直接寫入方式,當(dāng)單片機(jī)把一個(gè)數(shù)據(jù)寫入DAC寄存器時(shí),DAC0832的輸出模擬
27、電壓信號(hào)隨之對(duì)應(yīng)變化。利用D/A轉(zhuǎn)換器可以產(chǎn)生各種波形,如方波、三角波、正弦波、鋸齒波等以與它們組合產(chǎn)生的復(fù)合波形和不規(guī)則波形。2 DAC0832的主要特性參數(shù)如下:分辨率為8位;電流穩(wěn)定時(shí)間1us;可單緩沖、雙緩沖或直接數(shù)字輸入;只需在滿量程下調(diào)整其線性度;單一電源供電(+5V+15V);低功耗,200mW。3 DAC0832結(jié)構(gòu): D0D7:8位數(shù)據(jù)輸入線,TTL電平,有效時(shí)間應(yīng)大于90ns(否則鎖存器的數(shù)據(jù)會(huì)出錯(cuò));ILE:數(shù)據(jù)鎖存允許控制信號(hào)輸入線,高電平有效;CS:片選信號(hào)輸入線(選通數(shù)據(jù)鎖存器),低電平有效;WR1:數(shù)據(jù)鎖存器寫選通輸入線,負(fù)脈沖(脈寬應(yīng)大于500ns)有效。由IL
28、E、CS、WR1的邏輯組合產(chǎn)生LE1,當(dāng)LE1為高電平時(shí),數(shù)據(jù)鎖存器狀態(tài)隨輸入數(shù)據(jù)線變換,LE1的負(fù)跳變時(shí)將輸入數(shù)據(jù)鎖存;XFER:數(shù)據(jù)傳輸控制信號(hào)輸入線,低電平有效,負(fù)脈沖(脈寬應(yīng)大于500ns)有效;WR2:DAC寄存器選通輸入線,負(fù)脈沖(脈寬應(yīng)大于500ns)有效。由WR1、XFER的邏輯組合產(chǎn)生LE2,當(dāng)LE2為高電平時(shí),DAC寄存器的輸出隨寄存器的輸入而變化,LE2的負(fù)跳變時(shí)將數(shù)據(jù)鎖存器的容打入DAC寄存器并開始D/A轉(zhuǎn)換。IOUT1:電流輸出端1,其值隨DAC寄存器的容線性變化;IOUT2:電流輸出端2,其值與IOUT1值之和為一常數(shù);Rfb:反饋信號(hào)輸入線,改變Rfb端外接電阻值
29、可調(diào)整轉(zhuǎn)換滿量程精度;Vcc:電源輸入端,Vcc的圍為+5V+15V;VREF:基準(zhǔn)電壓輸入線,VREF的圍為-10V+10V;AGND:模擬信號(hào)地DGND:數(shù)字信號(hào)地。DAC0832簡化電路框圖如圖6所示。圖6 DAC0832簡化電路框圖待轉(zhuǎn)換的8位數(shù)字量由芯片的8位數(shù)據(jù)輸入線D0D7輸入,經(jīng)DAC0832轉(zhuǎn)換后,通過2個(gè)電流輸出端IOUT1和IOUT2輸出,IOUT1是邏輯電平為"1"的各位輸出電流之和,IOUT2是邏輯電平為"0"的各位輸出電流之和。DAC0832由8位輸入寄存器、8位DAC寄存器和8位D/A轉(zhuǎn)換電路組成。輸入寄存器和DAC寄存器作
30、為雙緩沖,因?yàn)樵贑PU數(shù)據(jù)線直接接到DAC0832的輸入端時(shí),數(shù)據(jù)在輸入端保持的時(shí)間僅僅是在CPU執(zhí)行輸出指令的瞬間,輸入寄存器可用于保存此瞬間出現(xiàn)的數(shù)據(jù)。有時(shí),微機(jī)控制系統(tǒng)要求同時(shí)輸出多個(gè)模擬量參數(shù),此時(shí)對(duì)應(yīng)于每一種參數(shù)需要一片DAC0832,每片DAC0832的轉(zhuǎn)換時(shí)間一樣,就可采用DAC寄存器對(duì)CPU分時(shí)輸入到輸入寄存器的各參數(shù)在同一時(shí)刻開始鎖存,進(jìn)而同時(shí)產(chǎn)生各模擬信號(hào)。4 DAC0832與AT89C52連接DAC0832的數(shù)據(jù)輸出方式在微機(jī)應(yīng)用系統(tǒng)中,通常使用的是電壓信號(hào),而DAC0832輸出的是電流信號(hào),這就需要由運(yùn)算放大器組成的電路實(shí)現(xiàn)轉(zhuǎn)換。其中有輸出電壓各自極性固定的單位性輸出和
31、在隨動(dòng)系統(tǒng)中輸出電壓有正負(fù)極性的雙極性輸出兩種輸出方式。 DAC 0832同CPU的連接,微處理器與DAC0832之間可以不加鎖存器,而是利用DAC0832部鎖存器,將CPU通過數(shù)據(jù)總線直接向DAC0832輸出的停留時(shí)間很短的數(shù)據(jù)保存,直至轉(zhuǎn)換結(jié)束。DAC0832同AT89C52的接口如圖7所示。圖7 DAC0832同AT89C52連接電路2.3按鍵電路設(shè)計(jì)人機(jī)交互接口的設(shè)計(jì)所謂人機(jī)交互接口,是指人與計(jì)算機(jī)之間建立聯(lián)系、交互信息的輸入/輸出設(shè)備的接口。這些輸入/輸出設(shè)備主要有鍵盤、顯示器和打印機(jī)等,他們是計(jì)算機(jī)應(yīng)用系統(tǒng)中必不可少的輸入、輸出設(shè)備,是控制系統(tǒng)與操作人員之間的交互窗口。一個(gè)安全可靠
32、的控制系統(tǒng)必須具有方便的交互功能。操作人員可以通過系統(tǒng)顯示的容,與時(shí)掌握生產(chǎn)情況,并可通過鍵盤輸入數(shù)據(jù),傳遞命令,對(duì)計(jì)算機(jī)應(yīng)用系統(tǒng)進(jìn)行人工干擾,使其隨時(shí)能按照操作人員的意圖工作。鍵盤設(shè)計(jì)需要解決的幾個(gè)問題鍵盤是若干按鍵的集合,是向系統(tǒng)提供操作人員干預(yù)命令與數(shù)據(jù)的接口設(shè)備。鍵盤可分為編碼鍵盤和非編碼鍵盤兩種類型。編碼鍵盤能自動(dòng)識(shí)別按下的鍵并產(chǎn)生相應(yīng)代碼,以并行或串行方式發(fā)給CPU。它使用方便,接口簡單,響應(yīng)速度快,但需要專用的硬件電路。非編碼鍵盤則是通過軟件來確定按鍵并計(jì)算鍵值。這種方法雖然沒有編碼鍵盤速度快,但它不需要專用的硬件支持,因此得到了廣泛的應(yīng)用。鍵盤是計(jì)算機(jī)應(yīng)用系統(tǒng)中的一個(gè)重要組成部
33、分,設(shè)計(jì)時(shí)必須解決下述一些問題。按鍵的確認(rèn),鍵盤實(shí)際上是一組按鍵開關(guān)的集合,其中每一個(gè)按鍵就是一個(gè)開關(guān)量輸入裝置。鍵的閉合與否,取決于機(jī)械彈性開關(guān)的通、斷狀態(tài)。反應(yīng)在電壓上就是呈現(xiàn)出高電平或低電平,若高電平表示斷開,那么低電平鍵閉合。所以,通過電平狀態(tài)(高或低)的檢測,便可確定相應(yīng)按鍵是否已被按下。重鍵與連擊的處理, 實(shí)際按鍵操作中,若無意中同時(shí)或先后按下兩個(gè)以上的鍵,系統(tǒng)確定哪個(gè)鍵操作是有效的,完全取決設(shè)計(jì)者的意圖。如視按下時(shí)間最長者為有效鍵,或認(rèn)為最先按下的鍵為當(dāng)前的按鍵,也可以將最后釋放的鍵看成是輸入鍵。不過單片機(jī)控制系統(tǒng)的資源有限,交互能力不強(qiáng),通??偸遣捎脝捂I按下有效,多鍵同時(shí)按下無
34、效的原則。有時(shí),由于操作人員按鍵動(dòng)作不夠熟練,會(huì)使一次按鍵產(chǎn)生多次擊鍵的效果,與重鍵的情形。為消除重鍵的影響,編制程序時(shí)可以將鍵的釋放作為按鍵的結(jié)束。等鍵釋放電平后再轉(zhuǎn)去執(zhí)行相應(yīng)的功能程序,以防止一次擊鍵多次執(zhí)行的錯(cuò)誤發(fā)生。按鍵防抖動(dòng)技術(shù),鍵盤作為向系統(tǒng)提供操作人員的干預(yù)命令的接口,以其特定的按鍵代表著各種確定操作命令。所以準(zhǔn)確無誤地辨認(rèn)每個(gè)鍵的動(dòng)作與其所處的狀態(tài),是系統(tǒng)能否正常工作的關(guān)鍵。多數(shù)鍵盤的按鍵均采用機(jī)械彈性開關(guān)。一個(gè)電信號(hào)通過機(jī)械觸點(diǎn)的斷開、閉合過程,完成高、低電平的切換。由于機(jī)械觸點(diǎn)的彈性作用,一個(gè)按鍵開關(guān)閉合與斷開的瞬間必然伴隨有一連串的抖動(dòng)。消除按鍵盤抖動(dòng)通常有兩種方法:硬件
35、消抖和軟件消抖。通過硬件電路消除按鍵過程中抖動(dòng)的影響是一種廣為采用的措施。這種做法,工作可靠,且節(jié)省機(jī)時(shí)。 硬件消抖是通過在按鍵輸出電路上加一定的硬件線路來消除抖動(dòng),一般采用RS觸發(fā)器或單穩(wěn)態(tài)電路。單穩(wěn)態(tài)硬件消抖電路如圖8所示,軟件消抖則是利用延時(shí)來跳過抖動(dòng)過程。圖8 單穩(wěn)態(tài)硬件消抖電路鍵盤的結(jié)構(gòu)形式一般有兩種:獨(dú)立式鍵盤與矩陣式鍵盤。獨(dú)立式鍵盤就是各按鍵相互獨(dú)立,每個(gè)按鍵各接一根I/O口線,每根I/O口線上的按鍵都不會(huì)影響其它的I/O口線。矩陣式鍵盤又叫行列式鍵盤。用I/O口線組成行、列結(jié)構(gòu),鍵位設(shè)置在行列的交點(diǎn)上。例如4×4的行、列結(jié)構(gòu)可組成16個(gè)鍵的鍵盤,比一個(gè)鍵位用一根I/O
36、口線的獨(dú)立式鍵盤少了一半的I/O口線。對(duì)矩陣鍵盤的工作過程可分兩步:第一步是CPU首先檢測鍵盤上是否有鍵按下;第二步是再識(shí)別是哪一個(gè)鍵按下,獨(dú)立式鍵盤如圖9所示。圖9 獨(dú)立式鍵盤矩陣鍵盤的工作方式查詢工作方式:這種方式是直接在主程序中插入鍵盤檢測子程序,主程序每執(zhí)行一次,則鍵盤檢測子程序就對(duì)鍵盤進(jìn)行檢測一次。如果沒有鍵按下,則跳過鍵識(shí)別,直接執(zhí)行其他程序;如果有鍵按下,則通過鍵盤掃描子程序識(shí)別按鍵,得到按鍵的編碼值。然后根據(jù)編碼值進(jìn)行相應(yīng)的處理,處理完后再回到主程序執(zhí)行。中斷工作方式:鍵盤中斷工作方式如圖10所示,就是中斷工作方式,當(dāng)有中斷的時(shí)候,就去執(zhí)行掃描程序,沒有中斷的時(shí)候,CPU可以去
37、做其他的事情,這樣可以提高CPU的效率。圖10 鍵盤中斷工作方式在本系統(tǒng)中設(shè)置了5個(gè)按鍵,波形選在按鍵與P1.0口連接,頻率控制鍵分別P1.1和P1.2口連接,幅值增減控制鍵位分別接P1.3和P1.4口,實(shí)現(xiàn)了波形選擇和頻幅控制,系統(tǒng)鍵盤實(shí)現(xiàn)設(shè)計(jì)圖如圖11所示。圖11 系統(tǒng)鍵盤實(shí)現(xiàn)設(shè)計(jì)圖2.4顯示模塊設(shè)計(jì)液晶模塊采用的是液晶LCD1602字符型液晶,字符型液晶顯示模塊是一種專門用于顯示字母、數(shù)字、符號(hào)等點(diǎn)陣式LCD。相對(duì)于數(shù)碼管,液晶顯示屏顯得更加專業(yè)和直觀,顯示容更加豐富,在通訊,儀器儀表,電子設(shè)備,家用電器等低功耗應(yīng)用系統(tǒng)中得到廣泛的應(yīng)用。目前常用16*1,16*2,20*2和40*2行等
38、的模塊。1602LCD分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的厚,是否帶背光在應(yīng)用中并無差別,液晶模塊如圖12所示。圖12 液晶模塊圖引腳功能說明1602LCD采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如下所示:第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高,對(duì)比度過高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對(duì)比度。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電
39、平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。LCD1602液晶顯示模塊直接與單片機(jī)AT89C52相連接,1腳接地,2腳接電源,46腳分別與P1.5P1.7口連接,714腳D0D7分別和51單片機(jī)P0.1P0.7口連接,LCD1602與AT89C52連接圖如圖13所示。 圖13 LCD1602與AT89C52連接圖2.5 LM324簡
40、介LM324是四運(yùn)放集成電路,它采用14腳雙列直插塑料封裝,外形如圖所示。它的部包含四組形式完全一樣的運(yùn)算放大器,除電源共用外,四組運(yùn)放相互獨(dú)立。每一組運(yùn)算放大器可用圖1所示的符號(hào)來表示,它有5個(gè)引出腳,其中“+”、“-”為兩個(gè)信號(hào)輸入端,“V+”、“V-”為正、負(fù)電源端,“Vo”為輸出端。兩個(gè)信號(hào)輸入端中,Vi-(-)為反相輸入端,表示運(yùn)放輸出端Vo的信號(hào)與該輸入端的相位相反;Vi+(+)為同相輸入端,表示運(yùn)放輸出端Vo的信號(hào)與該輸入端的相位一樣。由于LM324四運(yùn)放電路具有電源電壓圍寬,靜態(tài)功耗小,可單電源使用,價(jià)格低廉等優(yōu)點(diǎn),因此被廣泛應(yīng)用在各種電路中,LM324管腳功能如圖14所示。圖
41、14 LM324各對(duì)應(yīng)管腳若D/A轉(zhuǎn)換器輸出為雙極性,如圖15所示。圖15 D/A轉(zhuǎn)換器雙極性輸出電路圖15中,運(yùn)算放大器A2的作用是把運(yùn)算放大器A1的單向輸出電壓轉(zhuǎn)換成雙向輸出電壓。其原理是將A2的輸入端通過電阻R1與參考電壓VREF相連,VREF經(jīng)R1向A2提供一個(gè)偏流I1,其電流方向與I2相反,因此運(yùn)算放大器A2的輸入電流為I1、I2之代數(shù)和。則D/A轉(zhuǎn)換器的總輸出電壓為: (1) (2) 為DAC0832提供的參考電壓,輸入的波形數(shù)據(jù)。由上兩式可得: (3)取,當(dāng)時(shí),;時(shí),;時(shí),。由上述分析可看出,取不同數(shù)據(jù)時(shí)(0255),可得對(duì)稱的雙極性波形輸出。再取,則式(1)可表示為:由上式可知
42、,輸出信號(hào)的幅度受的改變而改變。DAC0832為電流輸出型轉(zhuǎn)換器,一般要求輸出是電壓,所以還必須經(jīng)過一個(gè)外接的運(yùn)算放大器轉(zhuǎn)換成電壓。如圖16所示為一種用兩級(jí)運(yùn)算放大器組成的模擬電壓輸出電路,從第一個(gè)運(yùn)放輸出為單極性模擬電壓,從第二個(gè)運(yùn)放輸出為雙極性模擬電壓。如果參考電壓為+5V,則點(diǎn)a輸出電壓為0-5V,點(diǎn)b輸出電壓為±5V。 圖16 I/V轉(zhuǎn)換波形發(fā)生電路3系統(tǒng)軟件設(shè)計(jì)系統(tǒng)軟件由主程序和產(chǎn)生波形的子程序組成,軟件設(shè)計(jì)主要是產(chǎn)生各種波形的子程序的編程,通過編程可得到各種波形。周期的改變可采用插入延時(shí)子程序的方法來實(shí)現(xiàn),主程序和幾種常用波形子程序的流程圖如下圖所示。3.1 主程序流程圖
43、開 始讀取波形選擇開關(guān)狀態(tài)調(diào)波形發(fā)生子程初 始 化波形判別驅(qū)動(dòng)相應(yīng)的芯片結(jié) 束波形轉(zhuǎn)換否圖17 主程序流程圖信號(hào)的產(chǎn)生:利用8位D/A轉(zhuǎn)換器DAC0832,可以將8位數(shù)字量轉(zhuǎn)換成模擬量輸出。數(shù)字量輸入的圍為0255,對(duì)應(yīng)的模擬量輸出的圍在VREF-到VREF+之間。根據(jù)這一特性,可以利用單片機(jī)的并行口輸出的數(shù)字量,產(chǎn)生常用的波形。例如,要產(chǎn)生幅度為05V的三角波,只要將DAC0832的VREF-接地,VREF+接+5V,單片機(jī)的并行口首先輸出00H,再輸出01H、02H,直到輸出FFH,再輸出00H,依此循環(huán),這樣在圖16所示的Vout端就可以看到在0到5V之間變化的三角波。3.2鍵位掃描子程
44、序設(shè)計(jì)鍵位掃描子程序的任務(wù)是檢查4個(gè)按鍵是否有鍵按下,若有鍵按下,則執(zhí)行相應(yīng)的功能。在這里,4個(gè)按鍵分別用于頻率增減、波形選擇和波形復(fù)位功能。其流程圖如圖18所示。圖18鍵盤掃描流程圖波形數(shù)據(jù)產(chǎn)生子程序流程圖波形數(shù)據(jù)產(chǎn)生的子程序是定時(shí)器T1的中斷程序,當(dāng)定時(shí)器溢出時(shí),發(fā)生一次中斷。當(dāng)發(fā)生中斷時(shí),單片機(jī)將按波形數(shù)據(jù)表中的波形數(shù)據(jù)一一送入DAC0832,DAC0832再根據(jù)輸入的輸入數(shù)據(jù)大小輸出對(duì)應(yīng)的電壓, 波形數(shù)據(jù)產(chǎn)生子程序流程圖如圖19所示。圖19波形數(shù)據(jù)產(chǎn)生子程序流程圖3.3 正弦波程序設(shè)計(jì)正弦波波形設(shè)計(jì)通過查表指令得出,DAC0832是8位的D/A轉(zhuǎn)換器件,其工作電壓是05V,當(dāng)輸入00數(shù)
45、字量的時(shí)候,輸出為0V電壓;當(dāng)輸入80數(shù)字量的時(shí)候,輸出為2.5V電壓;當(dāng)輸入FF數(shù)字量的時(shí)候,輸出為5V電壓。單片機(jī)的I/O輸出均為+5 V的TTL電平,因此產(chǎn)生的正弦波幅值為+2.5 V。將一個(gè)周期的正弦波形等分為256份,那么第一點(diǎn)的角度為0°,對(duì)應(yīng)的正弦值為2.5sin0°;第二點(diǎn)的角度為360°/256,對(duì)應(yīng)的正弦值為2.5sin (360°/256 ) ,如此計(jì)算下去,將這些模擬量正弦值都轉(zhuǎn)換為單極性方式下的數(shù)字量,得到一按照點(diǎn)號(hào)順序排列的正弦波波形數(shù)據(jù)表如表3所示。其實(shí)在計(jì)算正弦波形數(shù)據(jù)的時(shí)候,并不需要算出整個(gè)02區(qū)間的每一個(gè)值,而只需計(jì)算
46、出四分之一周期中的值就行,其他區(qū)間的值都可以通過對(duì)四分之一周期中的值取不同的變換得到。表3 正弦波形數(shù)據(jù)表序號(hào)幅度(Y值)遞增率A數(shù)字遞增率數(shù)字量(十進(jìn)制)02.50012812.5613530.061353313122.6226690.122669613432.6839110.183911913742.7450430.2450431214052.8060270.3060271514362.8668260.3668261814672.9274050.4274052114982.9877260.4877262415293.0477530.54775327155103.107450.6074530
47、158113.1667820.66678234162123.2257120.72571237165133.2842040.78420440168143.3422250.84222542170153.3997380.89973845173163.4567080.95670848176173.5131031.01310351179183.5688881.06888854182193.6240281.12402857185203.6784921.17849260188213.7322451.23224562190223.7852571.28525765193233.8374941.337494681
48、96243.8889261.38892670198253.939521.4395273201263.9892481.48924875203274.0380791.53807978206284.0859831.58598380208294.1329321.63293283211304.1788971.67889785213314.2238511.72385187215324.2677671.76776790218334.3106171.81061792220344.3523781.85237894222續(xù)表354.3930221.89302296224364.4325261.9325269822
49、6374.4708661.970866100228384.5080192.008019102230394.5439622.043962104232404.5786742.078674106234414.6121342.112134107235424.6443212.144321109237434.6752182.175218110238444.7048032.204803112240454.7330612.233061113241464.7599732.259973115243474.7855242.285524116244484.8096992.309699117245494.8324822
50、.332482119247504.853862.35386120248514.873822.37382121249524.8923512.392351122250534.909442.40944122250544.9250782.425078123251554.9392552.439255124252564.9519632.451963125253574.9631942.463194125253584.9729412.472941126254594.9811992.481199126254604.9879622.487962126254614.9932262.493226127255624.9
51、969892.496989127255634.9992472.4992471272556452.5127255正弦波程序設(shè)計(jì)如下:#include<math.h>main()int n,i=0,j,k; float y=0, a=3.1415926,b=0,c=2.5000,d=0; for(n=0;n<=64;n+) y=2.5*sin(a*n/128)+2.5; b=y; /b,y為當(dāng)前幅度值 d=b-c; /d為遞增率 j=d/0.0196; /j為數(shù)字遞增率,0.0196為 k=128+j; /k為數(shù)字量 printf(“%d,%f,%f,%d,%dn”,i,y,d,
52、j,k); i+;44 / 443.4 三角波程序設(shè)計(jì)三角波產(chǎn)生是通過P0口將00H送入寄存器A中,DAC0832輸出A中的容,通過A中數(shù)值的加1遞升,同時(shí)延時(shí),當(dāng)A中的容為0FF時(shí),A中的容減1遞減,從而循環(huán)產(chǎn)生三角波。else if( wave_choice = 2 ) /三角波 if(c <= 128) P0 = c; else P0 = 255 - c; c +; 3.5 方波程序設(shè)計(jì)方波產(chǎn)生是通過P0口將00H輸出給DAC0832,輸出對(duì)應(yīng)模擬量,然后讀取P2口的狀態(tài),取反后作為延時(shí)常量,延時(shí)時(shí)間到,將FFH輸出時(shí),同樣輸出對(duì)應(yīng)模擬量,再延時(shí),從而得到方波。else if( wave_choice = 3 ) / 方波 k = zk * 256 / 100; d +; if(d <= k) P0 = 0x00; else P0 = 0xff; 3.6鋸齒波程序設(shè)計(jì) 鋸齒波中的斜線用一個(gè)個(gè)小臺(tái)階來逼近,在一個(gè)周期從最小值開始逐步遞增,當(dāng)達(dá)到最大值后又回到最小值,如此循環(huán),當(dāng)臺(tái)階間隔很小時(shí),波形基本上近似于直線。適當(dāng)選擇循環(huán)的時(shí)間,可以得到不同周期的鋸齒波。鋸齒波發(fā)生原理與方波類似,只是高低兩個(gè)延時(shí)的常數(shù)不同,所以用延時(shí)法,來產(chǎn)生鋸齒波。else if(wave_choice = 4) /鋸齒波 if(e <= 255) P0 = 25
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫維護(hù)計(jì)劃
- 社區(qū)網(wǎng)絡(luò)安全的關(guān)注要點(diǎn)計(jì)劃
- 學(xué)校評(píng)價(jià)與反饋系統(tǒng)建設(shè)計(jì)劃
- 班級(jí)班規(guī)與紀(jì)律維護(hù)計(jì)劃
- 幼兒園小班數(shù)理邏輯訓(xùn)練計(jì)劃
- 財(cái)務(wù)資源保障計(jì)劃
- 課程外聯(lián)計(jì)劃
- 遠(yuǎn)程會(huì)診服務(wù)的進(jìn)展和挑戰(zhàn)計(jì)劃
- 科技賦能下的現(xiàn)代橋梁結(jié)構(gòu)設(shè)計(jì)變革
- 非標(biāo)智能裝備推動(dòng)企業(yè)自動(dòng)化的成功案例研究
- Unit5 What day is it today?(教學(xué)設(shè)計(jì))-2023-2024學(xué)年教科版(廣州)英語四年級(jí)下冊(cè)
- 《網(wǎng)絡(luò)信息安全教學(xué)》課件
- 徐州2025年江蘇徐州市口腔醫(yī)院招聘非在編醫(yī)務(wù)人員53人筆試歷年參考題庫附帶答案詳解-1
- 2025年01月2025中國作家協(xié)會(huì)所屬單位公開招聘11人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 影視制作項(xiàng)目委托制作協(xié)議
- 用色彩情感引發(fā)共鳴社交媒體運(yùn)營秘訣
- 廣東2024年12月佛山市教育局公開選調(diào)1名公務(wù)員筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 植物角創(chuàng)設(shè)培訓(xùn)
- 《住院患者身體約束的護(hù)理》團(tuán)體標(biāo)準(zhǔn)解讀課件
- 2024年黑龍江建筑職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫全面
- MOOC 跨文化交際通識(shí)通論-揚(yáng)州大學(xué) 中國大學(xué)慕課答案
評(píng)論
0/150
提交評(píng)論