[精品資料]常用信號發(fā)生器的設(shè)計_第1頁
[精品資料]常用信號發(fā)生器的設(shè)計_第2頁
[精品資料]常用信號發(fā)生器的設(shè)計_第3頁
[精品資料]常用信號發(fā)生器的設(shè)計_第4頁
[精品資料]常用信號發(fā)生器的設(shè)計_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

論文題目:常用信號發(fā)生器的設(shè)計摘 要本設(shè)計充分利用單片機靈活的控制、豐富的外設(shè)處理能力,采用DDS技術(shù)根據(jù)需要方便地實現(xiàn)各種比較復雜的調(diào)頻、調(diào)相和調(diào)幅功能,具有良好的實用性。 該設(shè)計的硬件系統(tǒng)由單片機作為核心控制單元,通過可編程鍵盤顯示接口芯片連接鍵盤控制電路和LED數(shù)碼管顯示電路,與單片機相連的還有D/A轉(zhuǎn)換電路、復位電路、電源電路、時鐘電路等。任意波形發(fā)生器通過單片機向0832發(fā)送數(shù)字編碼,產(chǎn)生不同的輸出,先利用采樣定理對各波形進行抽樣,然后把各采樣值進行編碼,得到的數(shù)字量存入各個波形表,然后將波形數(shù)據(jù)存儲于存儲器中,而后用可程控的時鐘信號為存儲器提供掃描地址,與每個地址相對應的數(shù)據(jù)則代表波形在等間隔取樣點上的幅度值。數(shù)據(jù)被送至DAC,從而產(chǎn)生一個正比于其數(shù)字編碼的電壓值,每個電壓值保持一個時鐘周期,直至新的數(shù)據(jù)送至DAC,經(jīng)數(shù)模轉(zhuǎn)換后得到所需要的模擬電壓波形。執(zhí)行程序時通過查表方法依次取出,經(jīng)過D/A轉(zhuǎn)換后輸出就可以得到波形。關(guān)鍵詞: 任意波形發(fā)生器;AT89S51;D/A轉(zhuǎn)換器;頻率THE DESIGN OF ARBITRARY WAVEFORM GENERATORSAbstractThis article introduced one kind uses the MCS-51 monolithic constitution the generator, its line is simple, the structure is compact, the price is inexpensive. The profile production is carries out some profile through AT89S51 to have the procedure, has the data to the D/A switch input end according to certain rule, thus obtains the corresponding voltage waveform in the D/A switching circuit out-port. Meets 5 in at89S51 P2 mouth to press turns, chooses each kind of profile, the peak-to-peak value voltage and the frequency through the software programming, through the software programming, has the P0 mouth base pin to meet 8279 chips in addition, each kind of profile corresponds a button.The monolithic integrated circuit electric circuit function forms the scanning code, the key value recognition, key processing, the parameter establishment; Produces fixed time interrupts; Forms the profile the digital coding, and outputs the D/A connection electric circuit and the demonstration actuation electric circuit. The profile generator system software design and has each kind of profile subroutine by the master routine, the time delay procedure, the data sheet procedure and so on。 Key words:Arbitrary Waveform Generators; AT89S51; D/A Switching Circuit; Frequency18目 錄1.引言11.1 課題的來源與技術(shù)背景11.2 研究信號發(fā)生器的目的及意義11.3 主要研究內(nèi)容22. 信號發(fā)生器的理論分析與設(shè)計方案22.1 常用波形介紹32.1.1 正弦函數(shù)32.1.2 方波波形函數(shù)32.2 設(shè)計方案42.2.1 直接模擬法42.2.2 直接數(shù)字法42.3 信號發(fā)生器的基本結(jié)構(gòu)框圖53. 硬件系統(tǒng)設(shè)計63.1單片機的選取63.2 復位電路63.3 時鐘電路73.4 可編程鍵盤/顯示器接口芯片73.5 鍵盤控制電路83.6 數(shù)碼顯示電路93.7 數(shù)模轉(zhuǎn)換電路103.8 電源電路114. 系統(tǒng)軟件設(shè)計114.1 系統(tǒng)程序總體框圖114.2波形產(chǎn)生程序各部分流程圖134.2.1 正弦波形查表形成流程圖144.2.2 三角波、鋸齒波的形成154.2.3 方波的形成和實現(xiàn)154.2.4 程序?qū)崿F(xiàn)的功能165. 總結(jié)17謝辭17參考文獻18 1.引言1.1 課題的來源與技術(shù)背景不論是在生產(chǎn)還是在科研與教學上,信號發(fā)生器都是電子工程師仿真實驗的最佳工具。隨著我國經(jīng)濟和科技的發(fā)展,對相應的測試儀器和測試手段也提出了更高的要求,信號發(fā)生器己成為測試儀器中至關(guān)重要的一類,因此開發(fā)信號發(fā)生器具有重大意義。傳統(tǒng)的信號發(fā)生器采用專用芯片,成本高,控制方式不靈活。本設(shè)計充分利用單片機靈活的控制、豐富的外設(shè)處理能力,采用DDS技術(shù),實現(xiàn)頻率、幅值可調(diào)的函數(shù)波形的輸出,同時可以根據(jù)需要方便地實現(xiàn)各種比較復雜的調(diào)頻、調(diào)相和調(diào)幅功能,具有良好的實用性。根據(jù)其頻率發(fā)生方法又可分為諧振法和合成法兩種。一般的傳統(tǒng)發(fā)生器都是采用的諧振法,即用具有頻率選擇性的回路來產(chǎn)生正弦振蕩,來獲得所需頻率,也可以根據(jù)頻率合成技術(shù)來獲得所需頻率。利用頻率合成技術(shù)制成的合成波形發(fā)生器,通常被稱為頻率合成器或頻率綜合器。頻率綜合器是指利用頻率合成技術(shù)合成的頻率源,它常常是沒有調(diào)制的,也沒有足夠?qū)挼暮妥銐驕蚀_的輸出電平調(diào)節(jié),其工作范圍往往也不寬,最小頻率間隔也比較大,一般做專用設(shè)備使用,或做某一個系統(tǒng)中的一個組成部分。1.2 研究信號發(fā)生器的目的及意義波形發(fā)生器是信號源的一種,主要給被測電路提供所需要的己知信號(各種波形),然后用其它儀表測量感興趣的參數(shù)??梢娦盘栐丛诟鞣N實驗應用和試驗測試處理中,它的應用非常廣泛。它不是測量儀器,而是根據(jù)使用者的要求,作為激勵源,仿真各種測試信號,提供給被測電路,以滿足測量或各種實際需要。目前我國己經(jīng)開始研制波形發(fā)生器,并取得了可喜的成果。但總的來說,我國波形發(fā)生器還沒有形成真正的產(chǎn)業(yè)。就目前國內(nèi)的成熟產(chǎn)品來看,多為一些PC儀器插卡,獨立的儀器和VXI系統(tǒng)的模塊很少,并且我國目前在波形發(fā)生器的種類和性能都與國外同類產(chǎn)品存在較大的差距,因此加緊對這類產(chǎn)品的研制顯得迫在眉睫。函數(shù)波形發(fā)生器發(fā)展很快近幾年來,國際上波形發(fā)生器技術(shù)發(fā)展主要體現(xiàn)在以下幾個方面: (1)過去由于頻率很低應用的范圍比較狹小,輸出波形頻率的提高,使得波形發(fā)生器能應用于越來越廣的領(lǐng)域。波形發(fā)生器軟件的開發(fā)正使波形數(shù)據(jù)的輸入變得更加方便和容易。波形發(fā)生器通常允許用一系列的點、直線和固定的函數(shù)段把波形數(shù)據(jù)存入存儲器。同時可以利用一種強有力的數(shù)學方程輸入方式,復雜的波形可以由幾個比較簡單的公式復合成v=f(t)形式的波形方程的數(shù)學表達式產(chǎn)生。從而促進了波形發(fā)生器向任意波形發(fā)生器的發(fā)展,各種計算機語言的飛速發(fā)展也對任意波形發(fā)生器軟件技術(shù)起到了推動作用。目前可以利用可視化編程語言(如Visual Basic, Visual C等等)編寫任意波形發(fā)生器的軟面板,這樣允許從計算機顯示屏上輸入任意波形,來實現(xiàn)波形的輸入。(2)與VXI資源結(jié)合。目前,波形發(fā)生器由獨立的臺式儀器和適用于個人計算機的插卡以及新近開發(fā)的VXI模塊。由于VXI總線的逐漸成熟和對測量儀器的高要求,在很多領(lǐng)域需要使用VXI系統(tǒng)測量產(chǎn)生復雜的波形,VXI的系統(tǒng)資源提供了明顯的優(yōu)越性,但由于開發(fā)VXI模塊的周期長,而且需要專門的VXI機箱的配套使用,使得波形發(fā)生器VXI模塊僅限于航空、軍事及國防等大型領(lǐng)域。在民用方面,VXI模塊遠遠不如臺式儀器更為方便。(3)隨著信息技術(shù)蓬勃發(fā)展,臺式儀器在走了一段下坡路之后,又重新繁榮起來。不過現(xiàn)在新的臺式儀器的形態(tài),和幾年前的己有很大的不同。這些新一代臺式儀器具有多種特性,可以執(zhí)行多種功能。而且外形尺寸與價格,都比過去的類似產(chǎn)品減少了一半。1.3 主要研究內(nèi)容(1)理論基礎(chǔ)分析。了解波形發(fā)生器的相關(guān)理論,包括幾種常用波形,如正弦波、方波等,然后介紹了波形發(fā)生器的主要方案及原理。(2)硬件系統(tǒng)設(shè)計。主要包括以下幾個模塊:串口電路;鍵盤、LED顯示電路;單片機系統(tǒng);DAC芯片和放大電路設(shè)計。 (3)軟件系統(tǒng)設(shè)計。主要有:系統(tǒng)總體流程設(shè)計;串口程序設(shè)計;單片機程序設(shè)計;鍵盤響應程序設(shè)計;LED顯示程序設(shè)計;DAC控制程序設(shè)計。(4)系統(tǒng)仿真調(diào)試。通過計算機進行模擬仿真調(diào)試。2. 信號發(fā)生器的理論分析與設(shè)計方案在測試與測量技術(shù)過程中,常用到已知波形的數(shù)字化生成,它在許多與測量有關(guān)的領(lǐng)域有著不可替代的作用。例如,數(shù)字化仿真,常被用于算法研究、模型研究、系統(tǒng)辨識或以蒙特卡羅法搜索模型與算法。任意波形發(fā)生器出現(xiàn)以后,給人們提供的不僅是一個通用的基礎(chǔ)技術(shù)平臺,而是在人們面前打開了通往無限寬廣空間的一扇門,使得人們對于信號波形的掌握與應用再也不必局限于簡單的正弦波、方波等幾種有限的波形了,它可以按照人們提供的測量序列產(chǎn)生出幾乎任意形狀的連續(xù)波形信號。2.1 常用波形介紹函數(shù)波形的一般表達式可以表示為 ,下面來介紹幾種常用的函數(shù)波形3:2.1.1 正弦函數(shù)正弦信號與余弦信號,兩者只是在相位上相差2,可以統(tǒng)稱為正弦信號。其一般形式為 f (t)=Asin(t+ ) (1)式中,A 為振幅, 是角頻率, 為初相位。上述三量是正弦信號的三要素。它的波形見圖1。正弦信號是周期信號,其周期T 與頻率f 及角頻率 之間的關(guān)系為: (2)圖1 正弦波形 在實際應用中經(jīng)常遇到單邊指數(shù)衰減的正弦信號,其波形如圖2所示,表達式為: (3)圖2 指數(shù)衰減的正弦信號波形2.1.2 方波波形函數(shù) 方波函數(shù)是一種常用的波形函數(shù),其表達式為: (4)方波的波形如圖2-3所示:圖3 方波波形2.2 設(shè)計方案目前信號發(fā)生的主要實現(xiàn)方法由直接模擬法、直接數(shù)字法兩種。2.2.1 直接模擬法圖4 直接模擬法框圖這是傳統(tǒng)函數(shù)發(fā)生器的簡化基本結(jié)構(gòu),一般都是由自由振蕩器產(chǎn)生原始波形,然后經(jīng)過轉(zhuǎn)換電路將原始波形轉(zhuǎn)換成其他波形,在上圖中三角波是由振蕩器產(chǎn)生的,方波是三角波通過比較器轉(zhuǎn)變而成的,正弦波是三角波通過一個波形整形電路(正弦波整形器)演變而來的,所需要波形經(jīng)過放大和衰減輸出,顯然這種方式產(chǎn)生的波形種類有限,每增加一種波形,都要增加相應的轉(zhuǎn)換電路,整個電路變得很復雜,最重要的是要產(chǎn)生用戶所需要的任意波形復雜的波形幾乎不可能5。2.2.2 直接數(shù)字法直接數(shù)字法是采用直接數(shù)字合成(Direct Digital Synthesis)的方法實現(xiàn)信號產(chǎn)生。該技術(shù)具有頻率轉(zhuǎn)換速度快、頻率分辨率高、易于控制的突出特點。直接數(shù)字合成技術(shù)近年來發(fā)展得很快,而要產(chǎn)生任意波形就必須采用直接數(shù)字很成技術(shù)。隨著DDS技術(shù)的發(fā)展,出現(xiàn)了各種各樣的直接數(shù)字合成的結(jié)構(gòu),但基本上可以發(fā)成兩種:(1)基于地址計數(shù)器的數(shù)字頻率合成法;(2)基于相位累加器的數(shù)字頻率合成法。由于直接數(shù)字法在設(shè)計上的的優(yōu)點,本課題設(shè)計采用的是基于地址計數(shù)器的直接數(shù)字合成法。2.3 信號發(fā)生器的基本結(jié)構(gòu)框圖AT89S51單片機復位電路時鐘電路電源電路模塊鍵盤控制電路(五個按鈕)八位數(shù)碼管LED顯示模塊D/A轉(zhuǎn)換器(數(shù)模轉(zhuǎn)換器和運算放大器)可編程鍵盤顯示器芯片調(diào)頻調(diào)幅控制圖5 電路結(jié)構(gòu)框圖信號發(fā)生器采用的是直接數(shù)字合成的方法,上圖是信號產(chǎn)生電路的結(jié)構(gòu)框圖,該系統(tǒng)由單片機作為核心控制單元,通過可編程鍵盤顯示接口芯片連接鍵盤控制電路和LED數(shù)碼管顯示電路,外圍電路有DAC轉(zhuǎn)換電路、復位電路、電源電路、時鐘電路等。單片機向0832發(fā)送數(shù)字編碼,產(chǎn)生不同的輸出。先利用采樣定理對各波形進行抽樣,然后把各采樣值進行編碼,得到的數(shù)字量存入各個波形表,執(zhí)行程序時通過查表方法依次取出,經(jīng)過D/A轉(zhuǎn)換后輸出就可以得到波形。假如N個點構(gòu)成波形的一個周期,則0832輸出N個樣值點后,樣值點形成運動軌跡,即一個周期。重復輸出N個點,成為第二個周期。利用單片機的晶振控制輸出周期的速度,也就是控制了輸出的波形的頻率,這樣就控制了輸出的波形及其幅值和頻率。將波形數(shù)據(jù)存儲于存儲器中,而后用可程控的時鐘信號為存儲器提供掃描地址,與每個地址相對應的數(shù)據(jù)則代表波形在等間隔取樣點上的幅度值。數(shù)據(jù)被送至DAC,從而產(chǎn)生一個正比于其數(shù)字編碼的電壓值,每個電壓值保持一個時鐘周期,直至新的數(shù)據(jù)送至DAC,經(jīng)數(shù)模轉(zhuǎn)換后得到所需要的模擬電壓波形。3. 硬件系統(tǒng)設(shè)計硬件系統(tǒng)主要分為以下幾個模塊:單片機功能模塊、顯示接口電路,波形變換DAC轉(zhuǎn)換模塊、時鐘電路、復位電路和電源電路等。波形的產(chǎn)生是通過AT89S51 執(zhí)行某一波形發(fā)生程序,向D/A轉(zhuǎn)換器的輸入端按一定的規(guī)律發(fā)生數(shù)據(jù),從而在D/A轉(zhuǎn)換電路的輸出端得到相應的電壓波形。在AT89S51的P2口接5個按扭,通過軟件編程來選擇各種波形、幅值電壓和頻率,另有P0口管腳接8279芯片,以驅(qū)動數(shù)碼管顯示電壓幅值和頻率,每種波形對應一個按鈕。波形的產(chǎn)生是通過單片機系統(tǒng)執(zhí)行波形發(fā)生程序,在其數(shù)據(jù)線上送出一系列按一定規(guī)律變化的數(shù)據(jù)信息,通過D/A轉(zhuǎn)換器和運算放大器轉(zhuǎn)化為電壓信號。3.1單片機的選取根據(jù)系統(tǒng)對控制芯片的要求,單片機功能模塊選取AT89S51芯片,AT89S51是一個低功耗,高性能CMOS 8位單片機,片內(nèi)含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S51可為許多嵌入式控制應用系統(tǒng)提供高性價比的解決方案。該單片機的功能是形成掃描碼,鍵值識別、鍵處理、參數(shù)設(shè)置;形成顯示段碼;產(chǎn)生定時中斷;形成波形的數(shù)字編碼,并輸出到D/A接口電路和顯示驅(qū)動電路。 AT89S51具有如下特點:40個引腳,4k Bytes Flash片內(nèi)程序存儲器,128 bytes的隨機存取數(shù)據(jù)存儲器(RAM),32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,看門狗(WDT)電路,片內(nèi)時鐘振蕩器。AT89S51的P2口作為功能按鈕和TEC6122的接口,P1口做為D/A轉(zhuǎn)換芯片0832的接口。 此外,AT89S51設(shè)計和配置了振蕩頻率可為0Hz并可通過軟件設(shè)置省電模式??臻e模式下,CPU暫停工作,而RAM定時計數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復位。3.2 復位電路復位電路如圖6所示,控制引腳RST,引腳9,復位輸入信號,振蕩器工作時,該引腳上2個機器周期的高電平可以實現(xiàn)復位操作。本文采用上電復位,上電復位要求接通電源后,自動實現(xiàn)復位操作。圖中電容C13和電阻R10對+5V的電源來說構(gòu)成微分電路,使在剛啟動電源時向RST引腳輸入高電平信號,完成系統(tǒng)的復位操作。圖6 復位電路3.3 時鐘電路時鐘引腳XTAL1和XTAL2:XTAL1,引腳18,內(nèi)部振蕩器外接晶振的一個輸入端,XTAL2,引腳19,內(nèi)部振蕩器外接晶振的另一個輸入端。AT89S51內(nèi)部有一個高增益的反相放大器,通過XTAL1和XTAL2引腳外接石晶振子、微調(diào)電容構(gòu)成振蕩器,該振蕩器發(fā)出的脈沖直接送入內(nèi)部時鐘電路。圖7 時鐘電路本設(shè)計中Y1為石英振子,當選用石英振子時,電容通常選擇30PF,振蕩頻率范圍為112MHz,該設(shè)計選用12MHz。3.4 可編程鍵盤/顯示器接口芯片8279是Intel公司生產(chǎn)的通用可編程鍵盤/顯示器接口芯片。8279可實現(xiàn)對鍵盤/顯示器的自動掃描,并識別鍵盤上閉合鍵的鍵號。這樣不僅可節(jié)省CPU對鍵盤/顯示器的操作時間,而且顯示穩(wěn)定,程序簡單,不會出現(xiàn)誤動作。8279可按其功能分為:鍵盤功能塊;顯示功能塊;控制功能塊;與CPU接口功能塊控制功能塊包括控制和定時寄存器,定時和控制,掃描計數(shù)器三部分,它主要用來控制鍵盤和顯示功能塊工作.圖8 8279芯片的鍵盤顯示電路8279能自動完成鍵盤輸入和顯示控制兩種功能。鍵盤控制部分提供一種掃描工作方式,可與64個按鍵的矩陣鍵盤連接,能對鍵盤進行自動掃描、自動消抖、自動識別出按下的鍵并給出編碼,能同時按下雙鍵或鍵實行保護,其接收鍵盤上的輸入信息存入內(nèi)部FIFO緩沖器,并可在有鍵輸入時向CPU請求中斷。8279提供了按掃描方式工作的顯示接口,其內(nèi)部有一個168的顯示緩沖器,能對8位或16位LED自動進行掃描,將顯示緩沖器的內(nèi)容在LED上顯示出來。8279通過74LS 138譯碼器擴展44鍵盤、6位顯示器。由3-8譯碼器對SL0SL2譯出鍵掃描線,由另一3-8譯碼器譯出顯示器的位掃描線,并采用了編碼掃描方式。為了防止出現(xiàn)重鍵現(xiàn)象,掃描輸出線高位SL3不參加鍵掃描譯碼。CPU對8279的監(jiān)視采用了查詢方式,故8279的中斷請求信號IRQ懸空未用,整個電路結(jié)構(gòu)見圖。3.5 鍵盤控制電路矩陣式鍵盤也稱為行列式鍵盤。行線通過上拉電阻接到VCC電源上,列線上逐列給低電平,如果有鍵按下,相應的行線就能夠接收到低電平,據(jù)此就可以判斷出相應的鍵值。單片機中所需按鍵較少,多采用獨立式鍵盤。此種鍵盤結(jié)構(gòu)簡單,每只按鍵接單片機的一條I/O線,通過查詢即可示別出每只按鍵的狀態(tài)來。但由于本系統(tǒng)按鍵較多,在這里采用矩陣式排列鍵盤,如圖所示。圖9 鍵盤控制電路矩陣式鍵盤可以合理應用硬件資源,把16只按鍵排列成4*4矩陣形式,用一個8位I/O口控制,把鍵盤上的行和列分別接在IOA0IOA3和IOA4IOA7先置IOA0IOA3為帶數(shù)據(jù)緩存器的高電平輸出,置IOA4IOA7為帶下拉電阻的輸管腳,此時若有鍵按下,取IOA4IOA7的數(shù)據(jù)將得到一個值,把此值保存下來,再置IOA4IOA7為帶數(shù)據(jù)反相器的高電平輸出,置IOA0IOA3為帶下拉電阻的輸入管腳,此時若鍵仍沒彈起,取IOA0IOA3的數(shù)據(jù)將得到另一個值,把這兩個值組合就可得知是哪個鍵按下了,再通過查表得到鍵值。3.6 數(shù)碼顯示電路電路中74LS164的A、B聯(lián)在一起,接收由單片機串口送來的信號,它的Q7輸出端又與下一個164的A、B端聯(lián)在一起,以此類推,實際組成了N8位的移位寄存器,與數(shù)碼管聯(lián)接,可同時顯示多位數(shù)字。在設(shè)計中為了節(jié)省芯片資源,采用了匯編語言實現(xiàn)了日期和時間分屏,僅采用六個74164驅(qū)動六位的數(shù)碼管,顯示由于數(shù)碼管實際上是由多個正常工作電壓為3V的發(fā)光二極管組成的,系統(tǒng)沒有必要單獨為數(shù)碼管提供電源,而是直接從主電源上引出一路為數(shù)碼管供電,在實際應用中,可以在數(shù)碼管電源與系統(tǒng)主電源之間加上三個二極管來降壓,剛好使其端電壓為3V左右,符合數(shù)碼管長時間工作的要求。數(shù)碼管顯示電路的具體聯(lián)接方式圖10所示。圖10 4位數(shù)碼顯示電路3.7 數(shù)模轉(zhuǎn)換電路與單片機相連的是D/A轉(zhuǎn)換電路將波形樣值的編碼轉(zhuǎn)換成模擬值,完成雙極性的波形輸出。D/A轉(zhuǎn)換電路是由一片DAC0832數(shù)模轉(zhuǎn)換器和一塊運算放大器uA741組成。DAC0832是一個具有兩個輸入數(shù)據(jù)寄存器的8位DAC。目前生產(chǎn)的DAC芯片分為兩類,一類芯片內(nèi)部設(shè)置有數(shù)據(jù)寄存器,不需要外加電路就可以直接與微型計算機接口。另一類芯片內(nèi)部沒有數(shù)據(jù)寄存器,輸出信號隨數(shù)據(jù)輸入線的狀態(tài)變化而變化,因此不能直接與微型計算機接口,必須通過并行接口與微型計算機接口。DAC0832是具有20條引線的雙列直插式CMOS器件,它內(nèi)部具有兩級數(shù)據(jù)寄存器,完成8位電流D/A轉(zhuǎn)換,故不需要外加電路。0832是電流輸出型,示波器上顯示波形,通常需要電壓信號,電流信號到電壓信號的轉(zhuǎn)換可以由運算放大器實現(xiàn),可以實現(xiàn)雙極性輸出。圖11 D/A轉(zhuǎn)換器的連接電路D/A轉(zhuǎn)換器采用DAC0832芯片,它由8位輸入寄存器、8位DAC寄存器和8位D/A轉(zhuǎn)換電路組成。輸入寄存器和DAC寄存器作為雙緩沖,因為在CPU數(shù)據(jù)線直接接到DAC0832的輸入端時,數(shù)據(jù)在輸入端保持的時間僅僅是在CPU執(zhí)行輸出指令的瞬間內(nèi),輸入寄存器可用于保存此瞬間出現(xiàn)的數(shù)據(jù)。有時,微機控制系統(tǒng)要求同時輸出多個模擬量參數(shù),此時對應于每一種參數(shù)需要一片DAC0832,每片DAC0832的轉(zhuǎn)換時間相同,就可采用DAC寄存器對CPU分時輸入到輸入寄存器的各參數(shù)在同一時刻開始鎖存,進而同時產(chǎn)生各模擬信號。轉(zhuǎn)換的8位數(shù)字量由芯片的8位數(shù)據(jù)輸入線D0D7輸入,經(jīng)DAC0832轉(zhuǎn)換后,通過2個電流輸出端IOUT1和IOUT2輸出,IOUT1是邏輯電平為1的各位輸出電流之和,IOUT2是邏輯電平為0的各位輸出電流之和。另外,ILE、和是控制轉(zhuǎn)換的控制信號。8位D/A轉(zhuǎn)換器有8個輸入端(其中每個輸入端是8位二進制數(shù)的一位),有一個模擬輸出端。輸入可有28-256個不同的二進制組態(tài),輸出為256個電壓之一,即輸出電壓不是整個電壓范圍內(nèi)任意值,而只能是256個可能值。 3.8 電源電路電源電路如圖13所示,采用220V供電,220交流電經(jīng)過變壓器T1降壓、二極管D1D4整流、電容C5濾波后產(chǎn)生12V直流電,可以作為控制繼電器的驅(qū)動電壓。12V電壓經(jīng)過穩(wěn)壓器7805穩(wěn)壓后產(chǎn)生5V電壓,作為控制電路的主電源。電容C2作為高頻旁路電容,將各種高頻干擾信號旁路接地。在設(shè)計的過程中,濾波電容C1要盡量選擇的大,因為在單片機向EEPROM中寫數(shù)據(jù)的過程中,持續(xù)時間很長,典型時間為8ms,這里選用的是2200uF。所以只有選用較大容量的電容,才能在系統(tǒng)突然斷電的情況下保證單片機有足夠的時間將RAM中的數(shù)據(jù)寫入EEPROM中。圖12 電源電路圖4. 系統(tǒng)軟件設(shè)計4.1 系統(tǒng)程序總體框圖軟件設(shè)計程序由主程序和子程序組成,兩者都存放在AT89S51單片機中。 主程序的功能是:開機以后負責查鍵,即做鍵盤掃描及顯示工作,然后根據(jù)用戶所按的鍵轉(zhuǎn)到相應的子程序進行處理,主程序框圖如圖1所示。 子程序的功能有:幅值輸入處理、頻率輸入處理、正弦波輸出、鋸齒波輸出、方波輸出、顯示等。波形的產(chǎn)生是通過AT89S51 執(zhí)行某一波形發(fā)生程序,向D/A轉(zhuǎn)換器的輸入端按一定的規(guī)律發(fā)生數(shù)據(jù),從而在D/A轉(zhuǎn)換電路的輸出端得到相應的電壓波形。在AT89S51的P2口接5個按扭,通過軟件編程來選擇各種波形、幅值電壓和頻率,另有3個P2口管腳接TEC6122芯片,以驅(qū)動數(shù)碼管顯示電壓幅值和頻率,每種波形對應一個按鈕。此方案的有點是電路原理比較簡單,實現(xiàn)起來比較容易。缺點是,采樣頻率由單片機內(nèi)部產(chǎn)生故使整個系統(tǒng)的頻率降低。其波形發(fā)生器技術(shù)指標與操作設(shè)計如下:圖13 整體流程圖(1)波形:方波、正弦波、鋸齒波; (2)幅值電壓:1V、2V、3V、4V、5V; (3)頻率:10HZ、20HZ、50HZ、100HZ、200HZ、500HZ、1KHZ;(4)上電后,系統(tǒng)初始化,數(shù)碼顯示6個,等待輸入設(shè)置命令。 (5)按鈕分別控制“幅值”、“頻率”、“方波”、“正弦波”、“鋸齒波”。 (6)“幅值“鍵初始值是1V,隨后再次按下依次增長1V,到達5V后在按就回到1V。 (7)“頻率“鍵初始值是10HZ,隨后在按下依次為20HZ、50HZ、100HZ、200HZ、500HZ、1000HZ循環(huán)。圖14 按鍵控制流程圖 根據(jù)上面的要求,程序分為主程序和子程序兩部分.其中主程序的主要功能為,開機后利用查表法,通過程序結(jié)合鍵盤控制,進行鍵盤掃描和顯示工作,根據(jù)按下的按鈕轉(zhuǎn)入相應的子程序中去,子程序分為六部分程序,分別為: 幅值輸入處理程序、頻率輸入處理程序、正弦波輸出程序、鋸齒波輸出程序、方波輸出程序、顯示程序。按照程序的要求,五個按鈕分別控制波形的幅值,波形的頻率,另外三個按鈕分別控制相對應的方波,正弦波,鋸齒波。4.2波形產(chǎn)生程序各部分流程圖使用AT89S51單片機使外圍電路變得異常簡單,整個波形發(fā)生器的主體任務落到了程序編寫上。整個系統(tǒng)的軟件設(shè)計方案如圖,采用外部中斷二來中斷所顯示波形,以便進入下一波形的編輯和輸出,在波形輸出的同時利用外部中斷一來實現(xiàn)同步的頻率調(diào)節(jié)。掃描的過程中,先置IOA0IOA3為帶數(shù)據(jù)緩存器的高電平輸出,IOA4IOA7為帶下拉電阻的輸入管腳,此時若有鍵按下,取IOA4IOA7的數(shù)據(jù)將得到一個值,把此值保存下來,再置IOA4IOA7為帶數(shù)據(jù)反相器的高電平輸出,置IOA0IOA3為帶下拉電阻的輸入管腳,此時若鍵仍沒彈起,取IOA0IOA3的數(shù)據(jù)將得到另一個值,把這兩個值組合就可得知是哪個鍵按下了,再通過查表得到鍵值,跳轉(zhuǎn)至相應程序段,執(zhí)行輸出相應波形或者編輯波形,從而達到控制波形的目的。整體按鍵過程如圖14所示。4.2.1 正弦波形查表形成流程圖設(shè)計之初,我一直都在嘗試使用函數(shù)來計算輸出波形,使用這種方法,在示波器上得到了很好的波形,但是在CPU時鐘頻率沒調(diào)至最高的情況下,所得到的頻率只是多少毫赫茲到幾十赫茲之間,基本上沒有實用價值。要達到更高的頻率,就得另辟蹊徑了。分析一下為什么頻率上不去,主要原因在于,使用單片機進行正弦函數(shù)的運算時占去了不少時間,如果去掉這一計算過程波形的頻率應該大有提高,另外就是CPU時鐘頻率沒有調(diào)至最高,以及DAC轉(zhuǎn)換過程需要時間。為了達到更高的頻率,首先就要免去單片機的計算負擔,我使用的解決方法是人為計算出要輸出的點,然后建一個表通過查表來進行輸出,這樣主要工作任務就落到了建表的過程中。這樣做的好處在于,查表所耗費的時鐘周期相同,這樣輸出的點與點之間的距離就相等了,輸出的波形行將更趨于完美,當然更讓我們感到的高興的是它輸出波形的頻率將近達到了100K赫茲,能夠滿足我們設(shè)計的擴展要求了。為了實現(xiàn)頻率的調(diào)整,我在一個正弦波周期里建了兩百個點,如果我們隔一個取點的話,且在CPU時鐘頻率不改變的情形下,正弦波頻率將相對于前面的頻率提高將近一倍。這樣我們就得到了解決頻率調(diào)整的方法,首先進行CPU時鐘頻率選擇,再調(diào)整一個正弦函數(shù)一個周期輸出的點數(shù),幅度的調(diào)節(jié)是通過初始幅度設(shè)置再通過外部放大電路來調(diào)節(jié),設(shè)計程序流程圖如圖15所示。圖15 正弦波形查表形成流程圖在另外,由于函數(shù)產(chǎn)生波形及其方便,單片機又提供了大量函數(shù)庫,在設(shè)計過程中我在低頻部分依然采用函數(shù)設(shè)計,因為這更有利于數(shù)字幅度和頻率的調(diào)節(jié)。4.2.2 三角波、鋸齒波的形成三角波、鋸齒波形成的原理同正弦波形成的原理大致相同,在這里將不做作詳細介紹,其流程圖如圖16所示。4.2.3 方波的形成和實現(xiàn)方波是我們最常用的一種波形,并且常常作為一種標準信號應用在各個領(lǐng)域,凌陽SPCE061A提供了一種很好的方波發(fā)生機制,就是APWM調(diào)制,通過寫入P_TimerA_Ctrl($700BH)單元的第69位,可選擇設(shè)置APWM輸出波形的脈寬占空比;同理,寫入P_TimerB_Ctrl($700DH)單元的第69位,便可選擇設(shè)置BPWM輸出波形的脈寬占空比。我們可以將IOB8設(shè)置成同相輸出端口,通過設(shè)置P_TimerA_Ctrl(寫)($700BH)的第05位來選擇TimerA的時鐘源(時鐘源A、B)。設(shè)置該單元的第69位(如圖所示),TimerA將輸出不同頻率的脈寬調(diào)制信號,即對脈寬占空比輸出APWM進行控制。這里為了得到最標準的波形采用這種方式來實現(xiàn)標準方波。在某些應用領(lǐng)域由于各種干擾和響應的存在,實際電路往往存在各種信號缺陷和瞬變信號,為了滿足各種需要我們還設(shè)計了有頻率突變的方波,如圖11所示。具體設(shè)計方案是采用不停的輸出和停止輸出某一幅度的值,在一個序列周期我們總共提供八位可變數(shù)值,因為在數(shù)據(jù)傳輸過程中一般是八位為一幀進行傳輸。通過鍵盤的編輯可以達到我們的需求。按鍵控制的第6到第12個按鍵,都是用來改變和編輯波形參數(shù)的,這就為整個系統(tǒng)能輸出各種波形提供了可能性,以及增加了它的實用性。另外還用外部中斷一來進行同步調(diào)試,我們可在中斷里寫入各種參數(shù),就可達到我們所要求的波形及其實現(xiàn)參數(shù)變化的目的。圖16 三角波查表形成流程圖 4.2.4 程序?qū)崿F(xiàn)的功能(1)能產(chǎn)生正弦波、方波、三角波、鋸齒波幾種周期性波形,并且可通過調(diào)節(jié)變形成其它相關(guān)波形。 (2)用鍵盤輸入編輯可生成正弦波由基波及其諧波線性組合的波形,以及各次諧波單獨的波形。 (3)輸出波形的頻率范圍為100mHz100

溫馨提示

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

最新文檔

評論

0/150

提交評論