基于AD9850的信號發(fā)生器設計畢業(yè)設計_第1頁
基于AD9850的信號發(fā)生器設計畢業(yè)設計_第2頁
基于AD9850的信號發(fā)生器設計畢業(yè)設計_第3頁
基于AD9850的信號發(fā)生器設計畢業(yè)設計_第4頁
基于AD9850的信號發(fā)生器設計畢業(yè)設計_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于ad9850的信號發(fā)生器設計基于ad9850的信號發(fā)生器設計摘 要介紹adi 公司出品的ad9850 芯片,給出芯片的引腳圖和功能。并以單片機at89s52 為控制核心設計了一個串行控制方式的正弦信號發(fā)生器的可行性方案,給出了單片機at89s52 與ad9850 連接電路圖和調(diào)試通過的源程序以供參考。直接數(shù)字合成(dds)是一種重要的頻率合成技術,具有分辨率高、頻率變換快等優(yōu)點,在雷達及通訊等領域有著廣泛的應用前景。系統(tǒng)采用ad9850為頻率合成器,以單片機為進程控制和任務調(diào)度的核心,設計了一個信號發(fā)生器。實現(xiàn)了輸出頻率在10hz1mhz范圍可調(diào),輸出信號頻率穩(wěn)定度優(yōu)于10-3的正弦波、方

2、波和三角波信號。正弦波信號的電壓峰峰值vopp能在05v范圍內(nèi)步進調(diào)節(jié),步進間隔達0.1v,所有輸出信號無明顯失真,且?guī)ж撦d能力強。該電路設計方案正確可行,頻率容易控制,操作簡單靈活,且具有廣闊的應用前景。關鍵詞:信號發(fā)生器;直接數(shù)字頻率合成;ad9850芯片;at89s52單片機abstracton the basis of direct digital synthesis(dds)principle, a signal generator was designed , using at89s52 single chip machine as control device and adopt

3、ing ad9850 type dds device .hardware design parameters were given .the system can output sine wave ,square wave with wide frequency stability and good waveform .the signal generator has stronger market competitiveness , with wide development prospect ,in frequency modulation technology and radio com

4、munication technology fields.key words: signal generator ;direct digital synthsis;ad9850;at89s52 目 錄第一章 緒論11.1背景11.2問題的提出21.3論證方案21.4總體設計框圖3第二章 dds技術產(chǎn)生信號的基本原理52.1dds簡介52.2頻率預置與調(diào)節(jié)電路52.3累加器62.4控制相位的加法器62.5控制波形的加法器62.6波形存儲器62.7d/a轉換器72.8低通濾波器72.9數(shù)字波形合成的理論分析8第三章 芯片的簡介93.1ad9850結構與性能93.2ad9850的控制字與控制時序11

5、3.3 at89s52結構與性能123.4 24c02結構與性能153.5max232的結構與性能163.6rt1602結構與性能17第四章 主要硬件的總體設計194.1ad9850與單片機的接口電路194.2 lcd與單片機的連接20第五章 軟件部分設計21第六章 用到的數(shù)學原理246.1數(shù)學原理246.2算法比較和選擇266.2.1采樣回放法266.2.2查表法276.2.3泰勒級數(shù)展開法276.2.4數(shù)字正弦振蕩器法276.2.5遞推數(shù)列法28第七章 電路原理圖的繪制317.1一般步驟317.2原理圖的繪制31結束語32致 謝33iv第一章 緒論1.1背景 在電子技術領域中,也就是所謂的

6、信號源號源有很多種,包括正弦波信號源、函數(shù)發(fā)生器、脈沖發(fā)生器、掃描發(fā)生器、任意波形發(fā)生器、合成的信號源等,經(jīng)常要用一些信號作為測量基準信號或輸入信號。作為電子系統(tǒng)必不可少的組成部分的信號源,在很大程度上決定了系統(tǒng)的性能,因而常稱之為電子系統(tǒng)的“心臟”。近年來,隨著電子技術的發(fā)展,對信號源的要求越來越高,要求其輸出頻率高達微波頻段甚至更高,頻率范圍從零hz到幾ghz頻率分辨率達到mhz甚至更小,相應點數(shù)更多。頻率轉換時間達到ns級:頻譜純度越來越高。傳統(tǒng)的信號源采用振蕩器,只能產(chǎn)生少數(shù)幾種波形,自動化程度較低,且儀器體積大、靈活性與準確度差。因此,我們對頻率合成器功耗、體積、重量等也有了更高的要

7、求而現(xiàn)在要求信號源能產(chǎn)生波形的種類多、頻率高,而且還要體積小、可靠性高、操作靈活、使用方便及可由計算機控制。所以要實現(xiàn)高性能的信號源,必須在技術手段上有新的突破。直接數(shù)字頻率合成器問世之初,構成dds元器件的速度的限制和數(shù)字化引起的噪聲這兩個主要缺點阻礙了dds的發(fā)展與實際應用。近幾年超高速數(shù)字電路的發(fā)展以及對dds的深入研究,dds的最高工作頻率以及噪聲性能已接近并達到鎖相頻率合成器相當?shù)乃?。隨著微電子技術的迅速發(fā)展,直接數(shù)字頻率合成器得到了飛速的發(fā)展,它以有別于其他頻率合成方法的優(yōu)越性能和特點成為現(xiàn)代頻率合成技術中的佼佼者。于是,函數(shù)發(fā)生技術結合最新的信號生成技術(dds),便產(chǎn)生了。直

8、接數(shù)字頻率合成器問世之初,構成dds元器件的速度的限制和數(shù)字化引起的噪聲這兩個主要缺點阻礙了dds的發(fā)展與實際應用。近幾年超高速數(shù)字電路的發(fā)展以及對dds的深入研究,dds的最高工作頻率以及噪聲性能已接近并達到鎖相頻率合成器相當?shù)乃?。隨著微電子技術的迅速發(fā)展,直接數(shù)字頻率合成器得到了飛速的發(fā)展,它以有別于其他頻率合成方法的優(yōu)越性能和特點成為現(xiàn)代頻率合成技術中的佼佼者。具體體現(xiàn)在相對帶寬、頻率轉換時間短、頻率分辨率高、輸出相位連續(xù)、可產(chǎn)生寬帶正交信號及其他多種調(diào)制信號、可編程和全數(shù)字化、控制靈活方便等方面,并具有極高的性價比?,F(xiàn)已廣泛應用于通訊、導航、雷達、遙控遙測、電子對抗以及現(xiàn)代化的儀器儀

9、表工業(yè)等領域。dds是從上世紀七十年代發(fā)展起來的一種頻率合成技術,它采用數(shù)字處理模塊,參照一個頻率固定且精確的時鐘頻率源,產(chǎn)生頻率、相位均可調(diào)的輸出信號。相對于直接法、鎖相法等傳統(tǒng)信號合成方法,dds技術具有頻率分辨率高、電路簡單且易于控制的優(yōu)點。并且,dds可輸出信號的相位,在變頻時,可保持相位的連續(xù);生成的正弦/余弦正交特性好等優(yōu)點。因此基于dds技術的函數(shù)發(fā)生器出現(xiàn)雖晚,但發(fā)展迅猛,市場份額日見擴大,已開始逐步取代傳統(tǒng)的函數(shù)發(fā)生器。信號發(fā)生器是一種常用的信號源,廣泛應用于電子測量、自動控制和工程設計等領域。隨著電子技術的發(fā)展,對信號源頻率的穩(wěn)定度、準確度以及頻譜純度的要求越來越高。1.2

10、問題的提出基于ad9850信號發(fā)生器硬件設計主要有三部分組成:單片機控制電路模塊、dds波形產(chǎn)生模塊和液晶顯示模塊。難點在于要弄清楚各模塊的作用,根據(jù)要求進行各模塊在電路中的布置。單片機控制電路模塊,ad9850控制字的寫入方式有并行和串行兩種,并行寫入方式的優(yōu)點是數(shù)據(jù)傳輸?shù)乃俣瓤?,能夠提升整個系統(tǒng)的處理速度 ,但占用的單片機的 i/ o 口資源太多。與并行方式相比 ,串行寫入方式在數(shù)據(jù)傳輸?shù)乃俣壬弦?,但它更大優(yōu)點是能節(jié)省很多 i/ o 口資源。要根據(jù)實際需求選擇合適的控制核心。數(shù)字信號的輸出經(jīng)由d/a轉換成模擬信號。但是dds有一個明顯的缺點,輸出頻率接近時鐘頻率的一半時,采樣點數(shù)就

11、越少,輸出地雜散干擾就越大。因此選擇一個高性能的濾波器尤為重要。采用dds芯片制作的信號源,輸出信號的頻率和幅度都可由微機來精確控制,常用的幅度調(diào)節(jié)方法是在dds輸出端加數(shù)字增益控制電路,或者通過改變dac的參考電壓或編程電阻來實現(xiàn)。lcd具有顯示內(nèi)容多、電路結構簡單、占用單片機資源少等特點,因此,我們要根據(jù)這特點選擇其總體的設計方案論證本文提出的采用dds作為信號發(fā)生核心器件的函數(shù)信號發(fā)生器設計方案, 根據(jù)輸出信號波形類型可設置、輸出信號幅度和頻率可數(shù)控、輸出頻率寬等要求,選用了美國a/d公司的ad9850 芯片,并通過單片機程序控制和處理ad9850的32位頻率控制字, 再經(jīng)放大后加至以數(shù)

12、字電位器為核心的數(shù)字衰減網(wǎng)絡, 從而實現(xiàn)了信號幅度、頻率、類型以及輸出等選項的數(shù)字控制。1.3論證方案ad9850控制字的寫入方式有并行和串行兩種,并行寫入方式的優(yōu)點是數(shù)據(jù)傳輸?shù)乃俣瓤?,能夠提升整個系統(tǒng)的處理速度 ,但占用的單片機的 i/ o 口資源太多。與并行方式相比 ,串行寫入方式在數(shù)據(jù)傳輸?shù)乃俣壬弦?,但它更大優(yōu)點是能節(jié)省很多 i/ o 口資源。所以,本系統(tǒng)采用at89s52作為控制核心,為了提高運算速度,所以采用并行方式。低通濾波器的設計尤為重要,其性能的優(yōu)劣對輸出信號的質量起著重要的作用。一般設計主要有三中常見的濾波器:巴特沃斯低通濾波器、切比雪夫低通濾波器和橢圓濾波器。通過比

13、較,實現(xiàn)相同的性能指標時,橢圓濾波器的設計階數(shù)低而且頻率特性好,但非線性相位響應最明顯。綜合考慮后本設計選用5階的橢圓濾波器。lcd具有顯示內(nèi)容多、電路結構簡單、占用單片機資源少等特點,因此,本設計采用1602c型lcd液晶顯示屏來顯示信號的類型和頻率的大小。1.4總體設計框圖系統(tǒng)框圖如圖1.1所示鍵盤lcd1602單片機ad9850低通濾波器信號輸出圖1.1 系統(tǒng)框圖通過鍵盤對波形的頻率進行控制實可行的型號。lcd顯示單片機2*8鍵盤頻率檢測dds方波lpf放大幅度步進調(diào)節(jié)積分電路(電容選擇)方波輸出繼電開關選擇輸出三角波放大輸出正弦波輸出電源時鐘a/d轉換真有效值轉換正弦波1.2 硬件系統(tǒng)

14、組成框圖第二章 dds技術產(chǎn)生信號的基本原理2.1dds簡介直接數(shù)字頻率合成技術(dds)是從相位概念出發(fā),直接對參考正弦信號進行抽樣,得到不同的相位通過數(shù)字計算技術產(chǎn)生對應的電壓幅度,最后濾波平滑輸出所需頻率。一個數(shù)字頻率合成器由相位累加器、加法器、波形存儲器(rom)、d/a轉換器和低通濾波器(lpf)其工作原理如圖2.1所示:累加器加法器加法器romd/a參考信號f clpf 圖2.1 原理框圖其中k為頻率控制字、p為相位控制字、w為波形控制字、f c為參考時鐘頻率,n為相位累加器的字長,d為rom數(shù)據(jù)位及d/a轉換器的字長。正弦函數(shù)是一個周期函數(shù),因此它的相位值和幅值有一一對應關系。這

15、一關系可以通過查詢rom很容易實現(xiàn),該查詢表的地址線對應相位信息,數(shù)據(jù)線對應幅值信息,所以正弦信號沿軸方向等間隔取樣,就得到該信號的抽樣序列,并將取樣值用二進制表示。改變頻率控制字時,相位增量也發(fā)生相應的改變,取樣值也隨之而改變,從而合成所需頻率,抽樣序列通過d/a轉換形成量化的正弦波,最后通過濾波平滑,生成連續(xù)的標準的正弦波。2.2頻率預置與調(diào)節(jié)電路k被稱為頻率控制字,也叫相位增量。dds方程為:f0=fclk/2n,f0為輸出頻率,fc 為時鐘頻率。當k=1時,dds輸出最低頻率(也即頻率分辨率),為fc/2n,而dds的最大輸出頻率由nyquist采樣定理決定,即fc/2,也就是說k的最

16、大值為2n-1。因此,只要n足夠大,dds可以得到很細的頻率間隔。要改變dds的輸出頻率,只要改變控制字k即可。2.3累加器 寄存器圖2.2 累加器框圖相位累加器由n位加法器與n位寄存器級聯(lián)構成。每來一個時鐘脈沖fc,加法器將頻率控制字k與寄存器輸出的累加相位數(shù)據(jù)相加,再把相加后的結果送至寄存器的數(shù)據(jù)輸入端。寄存器將加法器在上一個時鐘作用下繼續(xù)與頻率控制字進行相加。這樣,相位累加器在時鐘的作用下,進行相位累加。當相位累加器累加滿時就會產(chǎn)生一次溢出,完成一個周期性的動作。2.4控制相位的加法器通過改變相位控制字p可以控制輸出信號的相位參數(shù)。令相位加法器的字長為n,當相位控制字由0躍變到p(p0)

17、時,波形存儲器的輸入為相位累加器的輸出與相位控制字p之和,因而其輸出的幅度編碼相位會增加p/2n,從而使最后輸出的信號產(chǎn)生相移。2.5控制波形的加法器通過改變波形控制字w可以控制輸出信號的波形。由于波形存儲器中的不同波形是分塊存儲的,所以當波形控制字改變時,波形存儲器的輸入為改變相位后的地址與波形控制字w(波形地址)之和,從而使最后輸出的信號產(chǎn)和相移。2.6波形存儲器用相位累加器輸出的數(shù)據(jù)作為波形存儲器的取樣地址,進行波形的相位一幅值轉換,即可在給定的時間上確定輸出的波形的抽樣幅值。n位的尋址rom相當于把0360的正弦信號離散成具有2n個采樣值的序列,若波形rom有d位數(shù)據(jù)位,則2n個樣值的

18、幅值d位二進制數(shù)值固化在rom中,按照地址的不同可以輸出相應相位的正弦信號的幅值。相位幅度變換原理圖如下圖所示:地址相位量化序列波形幅度量化序列(數(shù)據(jù)) 圖2.3 相位幅度變換原理圖2.7d/a轉換器d/a轉換器的作用是把合成的正弦波數(shù)字量轉換成模擬量。正弦幅度量化序列s(n)經(jīng)d/a轉換后變成了包絡為正弦波的階梯波s(t)。需要注意的是,頻率合成器對d/a轉換器的分辨率有一定的要求,d/a轉換器的分辨率越高,合成的正弦波s(t)臺階數(shù)就越多,輸出的波形的精度也就越高。2.8低通濾波器對d/a輸出的階梯波s(t)進行頻譜分析,可知s(t)中除主頻fo外,還存在分布在fc,2fc等等的兩邊f(xié)o處

19、的非諧波分量,幅值包絡為辛格函數(shù)。因此,為了取出主頻f0,必須在d/a轉換器的輸出端接入截止頻率為fc/2的低通濾波器,濾波電路的設計如下圖所示:圖2.4濾波電路為了使輸出的頻率不受外界和一些雜波的干擾,需用一個低通濾波器(lpf)濾除高次諧波。常用的濾波器的頻率響應有三種:巴特沃斯型(butterworth),切比雪夫型 (chebyshev)和橢圓型 (cauer)。其中巴特沃斯濾波器通帶最平坦,它的通帶內(nèi)沒有紋波,在靠近零頻處,有最平坦通帶,趨向阻帶時衰減單調(diào)增大,缺點是從通帶到阻帶的過渡帶最寬,對于帶外干擾信號的衰減作用最弱,過渡帶不夠陡峭,因此它適用于對通帶要求較高,而去除的頻率離通

20、帶較遠的情況;切比雪夫濾波器在通帶內(nèi)衰減在零值和一個上限值之間做等起伏變化,阻帶內(nèi)衰減單調(diào)增大,帶內(nèi)有起伏,但過渡帶比較陡峭;橢圓濾波器不僅通帶內(nèi)有起伏,阻帶內(nèi)也有起伏,而且過渡帶陡峭。比較起來,橢圓濾波器性能更好,本設計中采用的是橢圓濾波器10。具體電路圖如圖2.4所示。2.9數(shù)字波形合成的理論分析對于一個標準的正弦信號可用如下函數(shù)表示: 它的相位是時間的線性函數(shù),即相位函數(shù)對時間的導數(shù)是常數(shù),即對于(1.1)式信號進行采樣,若采樣周期為則可得到離散的波形序列離散的相位序列為第三章 芯片的簡介3.1ad9850結構與性能 隨著數(shù)字技術的飛速發(fā)展,用數(shù)字控制方法從一個參考頻率源產(chǎn)生多種頻率的技

21、術,即直接數(shù)字頻率合成(dds)技術異軍突起。美國ad公司推出的高集成度頻率合成器ad9850便是采用dds技術的典型產(chǎn)品之一。ad9850采用先進的cmos工藝,其功耗在3.3v供電時僅為155mw,擴展工業(yè)級溫度范圍為4080,采用28腳ssop表面封裝形式。ad9850的引腳排列如圖3.1所示,圖3.2為其組成框圖。中層虛線內(nèi)是一個完整的可編程dds系統(tǒng),外層虛線內(nèi)包含了ad9850的主要組成部分7。圖3.1 ad9850管腳排列圖微控制器相位控制字頻率控制字相位累加器相位寄存器正弦查詢表daclpf比較器圖3.2 ad9850組成框圖合成。可編程dds系統(tǒng)的核心是相位累加器,它由一個加

22、法器和一個n位相位寄存器組成, n一般為2432。每來一個外部參考時鐘,相位寄存器便以步長m遞加。相位寄存器的輸出與相位控制字相加后可輸入到正弦查詢表地址上。正弦查詢表包含一個正弦波周期的數(shù)字幅度信息,每一個地址對應正弦波中0360范圍的一個相位點。查詢表把輸入地址的相位信息映射成正弦波幅度信號,然后驅動dac以輸出模擬量。相位寄存器每過2n/m個外部參考時鐘后返回到初始狀態(tài)一次,相應地正弦查詢表每經(jīng)過一個循環(huán)也回到初始位置,從而使整個dds系統(tǒng)輸出一個正弦波。輸出的正弦波周期t0=tc2n/ m,頻率fout=mfc/ 2n,tc、fc分別為外部參考時鐘的周期和頻率。ad9850采用32位的

23、相位累加器將信號截斷成14位輸入到正弦查詢表,查詢表的輸出再被截斷成10位后輸入到dac, dac再輸出兩個互補的電流8。dac滿量程輸出電流通過一個外接電阻rset調(diào)節(jié),調(diào)節(jié)關系為: (3-1) rset的典型值是3.9k。將dac的輸出經(jīng)低通濾波后接到ad9850內(nèi)部的高速比較器上即可直接輸出一個抖動很小的方波。其系統(tǒng)功能如圖3-3所示。高速dds頻率相位數(shù)據(jù)寄存器數(shù)據(jù)輸入寄存器圖3.3 ad9850系統(tǒng)功能圖ad9850在接上精密時鐘源和寫入頻率相位控制字之后就可產(chǎn)生一個頻率和相位都可編程控制的模擬正弦波輸出,此正弦波可直接用作頻率信號源或經(jīng)內(nèi)部的高速比較器轉換為方波輸出。在125mhz

24、的時鐘下, 32位的頻率控制字可使ad9850的輸出頻率分辨率達0.0291hz;并具有5位相位控制位,而且允許相位按增量180、90、45、22.5、11.25或這些值的組合進行調(diào)整。3.2ad9850的控制字與控制時序ad9850有40位控制字, 32位用于頻率控制,5位用于相位控制, 1位用于電源休眠(powerdown)控制, 2位用于選擇工作方式。這40位控制字可通過并行方式或串行方式輸入到ad9850,圖3.4是控制字并行輸入的控制時序圖,在并行裝入方式中,通過8位總線d0d7將可數(shù)據(jù)輸入到寄存器,在重復5次之后再在fq-ud上升沿把40位數(shù)據(jù)從輸入寄存器裝入到頻率/相位數(shù)據(jù)寄存器

25、(更新dds輸出頻率和相位),同時把地址指針復位到第一個輸入寄存器。接著在w-clk的上升沿裝入8位數(shù)據(jù),并把指針指向下一個輸入寄存器,連續(xù)5個w-clk上升沿后, w-clk的邊沿就不再起作用,直到復位信號或fq-ud上升沿把地址指針復位到第一個寄存器9。圖3.4 控制字并行輸入的時序圖3.3 at89s52結構與性能at89s52是一種低功耗、高性能cmos8位微控制器,具有8k 在系統(tǒng)可編程flash 存儲器。使用atmel公司高密度非易失性存儲器技術制造,與工業(yè)80c51 產(chǎn)品指令和引腳完全兼容。片上flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位c

26、pu 和在系統(tǒng)可編程flash,使得at89s52為眾多嵌入式控制應用系統(tǒng)提供高靈活、有效的解決方案2。at89s52具有以下標準功能:8k字節(jié)flash、256字節(jié)ram、32 位i/o 口線、看門狗定時器、2個數(shù)據(jù)指針、三個16 位定時器/計數(shù)器、一個6向量2級中斷結構、全雙工串行口、片內(nèi)晶振及時鐘電路。另外,at89s52 可降至0hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu停止工作,允許ram、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,ram內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止3。at89s52的引腳結構如圖:圖3.

27、5 單片機at89s52引腳結構圖p0口:p0口是一個8位漏極開路的雙向i/o口。作為輸出口,每位能驅動8個ttl邏輯電平。對p0端口寫“1”時,引腳用作高阻抗輸入。當訪問外部程序和數(shù)據(jù)存儲器時,p0口也被作為低8位地址/數(shù)據(jù)復用。在這種模式下,p0具有內(nèi)部上拉電阻。在flash編程時,p0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。p1口:p1 口是一個具有內(nèi)部上拉電阻的8 位雙向i/o 口,p1 輸出緩沖器能驅動4個ttl邏輯電平。對p1 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,

28、將輸出電流。此外,p1.0和p1.2分別作定時器/計數(shù)器2的外部計數(shù)輸入(p1.0/t2)和時器/計數(shù)器2的觸發(fā)輸入(p1.1/t2ex),在flash編程和校驗時,p1口接收低8位地址字節(jié)。p2 口:p2 口是一個具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器。能驅動4個ttl 邏輯電平。對p2 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流。在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器時,p2 口送出高八位地址。在這種應用中,p2口使用很強的內(nèi)部上拉發(fā)送1。在使用8時鐘電路晶振電路:圖3.6

29、時鐘電路xtal1是片內(nèi)振蕩器的反相放大器輸入端,xtal2則是輸出端,使用外部振蕩器時,外部振蕩信號應直接加到xtal1,而xtal2懸空。內(nèi)部方式時,時鐘發(fā)生器對振蕩脈沖二分頻,如晶振為12mhz,時鐘頻率就為6mhz。晶振的頻率可以在1mhz-24mhz內(nèi)選擇。電容取30pf左右。at89c51中有一個用于構成內(nèi)部振蕩器的高增益反相放大器,引腳xtal1和xtal2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或者陶瓷諧振器一起構成自激振蕩器5。片外石英晶體或者陶瓷諧振器及電容c1、c2接在放大器的反饋回路中構成并聯(lián)振蕩電路。對外接電容c1、c2雖然沒有十分嚴格的

30、要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性,這里采用電容30pf,晶振采用11.0592mhz。復位電路at89s52的外部復位電路有上電自動復位和手動按鍵復位。上電復位電容充電來實現(xiàn)。手動按鍵復位又分為按鍵電平復位和按鍵脈沖復位。按鍵電平復位電路是在普通rc復位電路的基礎上接一個有下拉電阻10k、上拉電容10f接vcc,電源由開關經(jīng)串接的1k限流電阻至復位腳(和上拉電容并聯(lián)),上拉電容支路負責在“上電”瞬間實施復位;開關通過1k上拉電阻和10k下拉電阻分壓器,保證對單片機實施按鍵電平復位。電路圖如下圖所示:圖3.7 復位電路位地址(如mov

31、x ri)訪問外部數(shù)據(jù)存儲器時,p2口輸出p2鎖存器的內(nèi)容。在flash編程和校驗時,p2口也接收高8位地址字節(jié)和一些控制信號4。隨著計算機技術的高速發(fā)展,單片機以其自身的特點,已廣泛應用于智能儀器、工業(yè)控制、家用電器、電子玩具等各個領域。3.4 24c02結構與性能24c02與單片機的接口非常簡單,如下圖所示: 圖3.8 單片機接口e0,e1,e2為器件地址線,wp為寫保護引腳,scl,sda為二線串行接口,符合i2c總線協(xié)議。在一般單片機系統(tǒng)中,24c02 數(shù)據(jù)受到干擾的情況是很少的,但是隨著單片機抗干擾性能的變差,以及惡劣工業(yè)環(huán)境中單片機系統(tǒng)的應用,一些智能單片機控制系統(tǒng)相繼出現(xiàn)24c0

32、2數(shù)據(jù)被沖掉的問題,而且隨著單片機的牌號以及24c02的牌號不同而出現(xiàn)不同程度的干擾現(xiàn)象。以前通過簡單的器件之間替換比較,發(fā)現(xiàn)不同牌號的24c02其抗干擾性能是不一樣的,于是就認定24c02器件存在質量好壞的問題。后來在一次偶然的機會里,發(fā)現(xiàn)有些24c02的wp引腳并不起到保護作用,也就是說將 wp引腳與cpu輸出引腳斷開并保持高電平的情況下,cpu仍然能夠對24c02中的數(shù)據(jù)進行修改寫入!在驚訝之余,筆者收集了許多不同牌號的24c02 進行試驗,除了基本的讀寫功能外,還對地址功能以及wp引腳保護功能進行了全面的檢測,發(fā)現(xiàn)一種atmel(激光印字)以及xicor牌號的24c02具有全面的符合i

33、2c總線協(xié)議的功能,而有些牌號24c02要么沒有wp引腳保護功能,要么沒有器件地址功能(即2 片24c02不能共用一個i2c總線),有些甚至兩種功能均無。所以說一些同樣功能型號的電子器件在兼容性上往往會帶來意想不到的問題,值得引起注意。3.5max232的結構與性能max232芯片是美信公司專門為電腦的rs-232標準串口設計的接口電路,使用+5v單電源供電。 它的內(nèi)部結構基本可分三個部分; 第一部分是電荷泵電路。由1、2、3、4、5、6腳和4只電容構成。功能是產(chǎn)生+12v和-12v兩個電源,提供給rs-232串口電平的需要。第二部分是數(shù)據(jù)轉換通道。由7、8、9、10、11、12、13、14腳

34、構成兩個數(shù)據(jù)通道。其中13腳(r1in)、12腳(r1out)、11腳(t1in)、14腳(t1out)為第一數(shù)據(jù)通道。 8腳(r2in)、9腳(r2out)、10腳(t2in)、7腳(t2out)為第二數(shù)據(jù)通道。ttl/cmos數(shù)據(jù)從t1in、t2in輸入轉換成rs-232數(shù)據(jù)從t1out、t2out送到電腦dp9插頭; dp9插頭的rs-232數(shù)據(jù)從r1in、r2in輸入轉換成ttl/cmos數(shù)據(jù)后從r1out、r2out輸出。而我們用只需一個通道就行啦。所以一通道的11、12、13、14腳就全空腳啦。我們只用了第二通道的4只腳。 第三部分就是供電啦。15腳dng、16腳vcc(+5v)。

35、20%pr 其實美信公司生產(chǎn)的用于rs-232接口的芯片有好多好多。有各種各樣的封裝,有只有一個通道的,也有多通道的,有底耗電的,也有耐15kv高壓的。其中max3233e使用+3v電源、+-15kvesd保護、而且省去了電荷泵的4只電容。 內(nèi)部原理圖如下: 圖3.95 max232原理圖3.6rt1602結構與性能1602型lcd可以顯示2行16個字符,有8位數(shù)據(jù)總線d0d7和rs,r/w,en三個控制端口,工作電壓為5v,并且具有字符對比度調(diào)節(jié)和背光功能6。1602型lcd的接口信號說明,如表3.1所示:表3.1 lcd1602接口說明編號符號引腳說明編號符號引腳說明1vss電源地9d2d

36、ata i/o2vdd電源正極10d3data i/o3vl液晶顯示偏壓信號11d4data i/o4rs數(shù)據(jù)/命令選擇端(h/l)12d5data i/o5r/w讀寫選擇端(h/l)13d6data i/o6e使能信號14d7data i/o7d0data i/o15bla背光源正極8d1data i/o16blk背光源負極基本操作程序讀狀態(tài):輸入:rs=l,rw=h,e=h輸出:d0d7=狀態(tài)字讀數(shù)據(jù):輸入:rs=h,rw=h,e=h輸出:無寫指令:輸入:rs=l,rw=l,d0d7=指令碼,e=高脈沖 輸出:d0d7=數(shù)據(jù)寫數(shù)據(jù):輸入:rs=h,rw=l,d0d7=數(shù)據(jù),e=高脈沖 輸出

37、:無第四章 主要硬件的總體設計4.1ad9850與單片機的接口電路ad9850有兩種與微機并行打印口相連的評估版,并配有windows下運行的軟件,可以作為應用參考,但運用單片機實現(xiàn)對dds的控制與微機實現(xiàn)的控制相比,具有編程控制簡便、接口簡單、成本低,容易實現(xiàn)系統(tǒng)的小型化等優(yōu)點,因此普遍采用mcs51單片機作為控制核心來向ad9850發(fā)送控制字。單片機與ad9850的接口既可采用并行方式,也可采用串行方式,但為了充分發(fā)揮芯片的高速性能,應在單片機資源允許的情況下盡可能選擇并行方式,本文重點介紹其并行方式的接口。p3.1 i/o方式并行接口i/ o方式的并行接口電路比較簡單,但占用單片機資源相

38、對較多,圖3-8是i/o方式并行接口的電路圖,ad9850的數(shù)據(jù)線d0d7與p1口相連, fq_ud和w_clk分別與p2.3(10引腳)和p2.4(11引腳)相連,所有的時序關系均可通過軟件控制實現(xiàn)。圖4.1 ad9850與單片機連接4.2 lcd與單片機的連接圖4.2 lcd與單片機的接口電路在實際的接線中,1602的db0db7與89s52的p0口相接,rs與p1.3相接,4.3、鍵盤模塊圖4.3 鍵盤控制電路/w與p1.2相接,e與p1.1相接。vl與地之間接一個10k的滑動變阻器來到1602初始顯示的調(diào)節(jié)。第五章 軟件部分設計軟件程序的功能就是通過程序使整個系統(tǒng)按照人們的設想要求工作

39、起來,本系統(tǒng)中最主要的部分就是將ad9850 的40 位控制字通過單片機寫入到ad9850 芯片內(nèi),系統(tǒng)的程序流程圖如圖4 所示。要根據(jù)寫入控制字方式的不同嚴格按照ad9850 的時序圖來編寫控制字寫入子程序9 ,10 。本文主要給出串行寫入方式的匯編源程序以供讀者調(diào)試參考。ad9850 數(shù)據(jù)傳送子程序如下:dds_data bit p1. 3dds_wcl k bit p1. 4dds_fqud bit p1. 5data0 data 30hdata1 data 31hdata2 data 32hdata3 data 33hdata4 data 34horg 0000hmain :mov 3

40、0h , # 0h118ad9850 數(shù)據(jù)傳送子程序如下:dds_data bit p1. 3dds_wcl k bit p1. 4dds_fqud bit p1. 5data0 data 30hdata1 data 31hdata2 data 32hdata3 data 33hdata4 data 34horg 0000hmain :mov 30h , # 0hmov 31h , # 06hmov 32h , # 66hmov 33h , # 66hmov 34h , # 66hlcall send_datalcall send_datasjmp end_data :mov r1 , # d

41、ata4mov r0 , # 05hclr dds_fqudloop_send_w:mov a , r1clr c send_1_bit :loop_send :clr dds_wcl krrc a mov dds_data ,cdjnz r2 ,loop_senddec r1djnz r0 ,loop_send_wsetb dds_fqudret endat89s52初始化ad9850初始化lcd1602初始化正弦波、方波、三角波發(fā)生顯示及數(shù)據(jù)輸出圖5.1 系統(tǒng)程序流程圖第六章 用到的數(shù)學原理6.1數(shù)學原理設有一頻率為的余弦信號:現(xiàn)在以采樣頻率對進行采樣,得到的離散序列為: 其中為采樣周期。

42、對應的相位序列為 從上式可以看出相位序列呈線性,即相鄰的樣值之間的相位增量是一個常數(shù),而且這個常數(shù)僅與信號的頻率有關,相位增量為:因為信號頻率與采樣頻率之間有以下關系: 其中與為兩個正整數(shù),所以相位的增量也可以完成:由上式可知,若將的相位均勻的分為等份,那么頻率為的余弦信號以頻率采樣后,它的量化序列的樣品之間的量化相位增量為一個不變值。根據(jù)上述原理可以構造一個不變量為量化相位增量的量化序列: 然后完成從到另一個序列的映射,由構造序列: 公式(61)公式(6-1)是連續(xù)信號經(jīng)采樣頻率為采樣后的離散時間序列,根據(jù)采樣定理,當時,經(jīng)過低通濾波器平滑后,可唯一恢復出。 可見,通過上述變換不變量將唯一的

43、確定一個單頻率模擬余弦信號: 該信號的頻率為: 公式(62)公式(62)就是直接數(shù)字頻率合成(dds)的方程式,在實際的dds中,一般取,于是dds方程就可以寫成: 公式(63)根據(jù)公式(63)可知,要得到不同的頻率只要通過改變的具體數(shù)值就可以了,而且還可以得到dds的最小頻率分辨率(最小頻率間隔)為當時的輸出頻率:可見當參考頻率始終一定是,其分辨率由相位累加器的位數(shù)決定,若取,則,即分辨率可以達到,這也是最低的合成頻率,輸出頻率的高精度dds的一大優(yōu)點。由奈奎斯特準則可知,允許輸出的最高頻率,即,但實際上在應用中受到低通濾波器的限制,通常,以便于濾波鏡像頻率,一般:由此可見dds的工作頻率帶

44、較寬,可以合成從直流到的頻率信號,同時它的輸出相位連續(xù),頻率穩(wěn)定度高。對于一個標準的正弦信號可用如下函數(shù)表示: 它的相位是時間的線性函數(shù),即、相位函數(shù)對時間的導數(shù)是常數(shù),即對于(1.1)式信號進行采樣,若采樣周期為則可得到離散的波形序列 離散的相位序列為是連續(xù)兩次采樣之間的相位增量,要據(jù)采樣原理只要 從式(1.4)的離散序列即可唯一地恢復出式(1.1)的模擬信6.2算法比較和選擇產(chǎn)生正弦波的方法一般有:采樣回放法、查表法、泰勒級數(shù)展開法、數(shù)字正弦振蕩器法、遞推數(shù)列法等。6.2.1采樣回放法該方法最為容易實現(xiàn),只需對已有標準正弦信號源進行采樣得到數(shù)據(jù)后直接回放或進行變頻變幅處理后回放。該方法的關

45、鍵在于采用高性能的a/d、d/a芯片并合理設計硬件電路,使信號處理過程中保證良好的波形,以保證采樣數(shù)據(jù)的精準性。在進行數(shù)字變頻及變幅處理時,要清楚數(shù)據(jù)的格式并保證回放數(shù)據(jù)的點數(shù)滿足奈奎斯特定理,防止頻譜混迭。6.2.2查表法可以通過程序直接使用該表中的數(shù)據(jù),由d/a回放出正弦波。但由于該表中數(shù)據(jù)量有限,得到的正弦波頻率單一;且如ti公司的聲明所述,芯片rom中的內(nèi)容可能在將來發(fā)生改動,這樣不利于系統(tǒng)的兼容。有效的解決方法是使用自己生成的正弦數(shù)據(jù)表。這樣,不但可以解決頻率單一的問題,還可以增加數(shù)據(jù)量,從而增加精度。其缺點在于使用大量的存儲空間。正弦表可以通過matlab模擬仿真后生成數(shù)據(jù)文件得到

46、,也可以采用方法3和4的辦法用計算的方法生成。6.2.3泰勒級數(shù)展開法這是一種有效的生成正弦波的方法。一定角度的正弦及余弦波都可以展開成泰勒級數(shù),實際應用是只取有限項進行近似處理。例如取前五項的近似公式為: (6-4) (6-5)其中: 為角度值,x為其對應的弧度值。計算不同的角度只需不斷地變換 的值,且利用弧度與頻率之間的關系很容易實現(xiàn)變頻處理。如果進一步掌握好dsp及所用d/a的數(shù)據(jù)格式及參考電壓,還可以實現(xiàn)變幅處理。6.2.4數(shù)字正弦振蕩器法數(shù)字正弦波振蕩器可以視為在單位圓上有兩個復共軛極點的二階振蕩器。其系統(tǒng)函數(shù)可表示為: (6-6)其中:共軛極點為:其離散時域脈沖響應:由上式可知 ,

47、對于給定 的沖激信號將產(chǎn)生一單頻的正弦信號,實際應用中常以差分方程的形式給出: (6-7)該 沖擊作用于系統(tǒng) 的主要 目的就是開始一個正弦振蕩 ,但如果 系統(tǒng)無阻尼且穩(wěn)定 ,則振蕩將持續(xù)下去。為方便起見 ,我們不對系統(tǒng)加入沖擊信號 ,而改變的起始值 ,從而使系統(tǒng)滿足起振的起始條件。這樣系統(tǒng)差分方程變?yōu)?: (6-8)其中: 為采樣頻率,為正弦波頻率,a為正弦波幅度,可見由自己決定了正弦波的幅度。在下面的dtmf編碼波形產(chǎn)生中采用的公式為: (2-6)可見用數(shù)字頻率振蕩器產(chǎn)生正弦波的實質就是如何用程序實現(xiàn)上述的差分方程。6.2.5遞推數(shù)列法本算法介紹快速計算正弦波的方法,并且就速度和精度問題進行

48、一些討論。在dsp運用中,經(jīng)常需要產(chǎn)生正弦波。如果 直接用c的數(shù)學函數(shù)sin,當然可以產(chǎn)生正弦波,但是由于sin函數(shù)本身的效率很低,產(chǎn)生正弦波所需要的mips就會占去dsp處理能力的相當大的一部 分。本章介用遞推數(shù)列算正弦波的方法,先介紹原理,推導出遞推公式,然后用浮點小數(shù)實現(xiàn)計算,再用定點小數(shù)進一步優(yōu)化算法,最后進行誤差分析,并提出更精 確的定點小數(shù)算法。 先來看看如何推導出遞推數(shù)列的公式。我們所要產(chǎn)生的正弦波,其實是一系列的整數(shù),把這些整數(shù)按照一定的取樣頻率發(fā)送給數(shù)模轉換器,就可以變成真正的正弦波了。假設取樣周期是ts,產(chǎn)生的正弦波的圓頻率為w,那么我們需要產(chǎn)生的數(shù)列就是:sin(0),

49、sin(w*ts), sin(2*w*ts), . sin(n*w*ts)假設f(n)= sin(n*w*ts),則問題就變成,從f(n-1), f(n-2), f(n-3),., 如何計算f(n)了。解決了這個問題,也就找到了遞推公式。下面是這個遞推公式的求解過程,假設x=w*ts:公式:sin( a + b) = sin(a)*cos(b) + cos(a)*sin(b) (2-7)sin(x+(n-1)x)=sin(x)*cos(n-1)x)+cos(x)*sin( (n-1)x) (2-8)公式:sin(a)*cos(b) = 1/2 * sin( a+b ) + sin( a-b )

50、 (2-9)sin(x)*cos(n-1)x)=1/2 *sin(nx) - sin(n-2)x) (2-10)sin(nx)=1/2 * sin(nx)-sin(n-2)x) +cos(x)*sin(n-1)x)(2-11)sin(nx)= 2*cos(x)*sin( (n-1)x ) - sin( (n-2)x ) (2-12)我們看到這個遞推公式是:f(n)=2*cos(w*ts)*f(n-1) - f(n-2) (2-13)也就是說只要知道最初始的兩項f(0)和f(1),就可以計算出整個正弦波了。根據(jù)上面的遞推公式,很容易寫出下面的正弦波計算程序。只要事先計算一次sin(w*ts)和c

51、os(w*ts),以后的值就可以通過遞推公式得到,所以計算一個值所需要的工作就是一次乘法,一次加法,兩次變量復制而已了。float y3 = 0, sin(w*ts),0; / y(n), y(n-1), y(n-2)float a1=2*cos(w*ts);float a2=-1;float singen()y0=a1*y1+a2*y2;y2=y1;y1=y0;return y0;假如我們需要產(chǎn)生取樣頻率為8khz的440hz的正弦波,那么a1=2*cos(2*pi*440/8000)=1.8817615,而y1=sin(2*pi*440/8000)=0.33873792?,F(xiàn)在看如何用定點小

52、數(shù)來更快的計算正弦波。我們使用16bit也就是short型的整數(shù)來表示定點小數(shù)。首先需要決定的是小數(shù)的q值,雖然我們最后計算的正弦波的值都是小于1的,但是在計算過程中需要用2*cos(w*ts),而這個值最大為2,所以我們選擇的q值必須至少最大能表示2。這里我們選擇q14,q14的定點小數(shù)能表示-2到2的取值范圍,對于本例的正弦波計算正好合適。1.8817615的q14值是1.8817615*214=5550=0x786f,同樣0.33873792的q14值為0x15ae。下面就是完整的計算8khz取樣頻率的400hz的定點小數(shù)的正弦波的程序。short y3 = 0, 0x15ae,0; / y(n), y(n-1), y(n-2)short a1=0x786f;short a2=0xc000;short singen() y0=( (long)a1*(long)y1+(long)a2*(long)y2 )14; y2=y1; y1=y0; return y0;使用定點小數(shù)計算不但速度比浮點更快,而且計算得出來的值是整數(shù),這個數(shù)值可以直接傳遞給dac(數(shù)模轉換器)轉換為模擬的聲音信號,如果使用浮點小數(shù)計算的話,還必須把浮點數(shù)轉換為整數(shù)才能傳遞給dac

溫馨提示

  • 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

提交評論