基于AD9850的多功能信號(hào)源設(shè)計(jì)
摘要 :AD9850以芯片為多功能信號(hào)源頻率合成核心,以單片機(jī)(89C52)為控制和數(shù)據(jù)處理核心,實(shí)現(xiàn)了正弦波、方波及AM、FM、ASK、FSK、PSK 等調(diào)制波形的產(chǎn)生和輸出。結(jié)合鍵盤和顯示部分,實(shí)現(xiàn)了任意頻率值的選擇和顯示,構(gòu)成了一個(gè)完整實(shí)用的信號(hào)發(fā)生器。該信號(hào)發(fā)生器可在10 Hz~40 MHz范圍內(nèi)實(shí)現(xiàn)任意頻率的輸出,步進(jìn)值和輸出幅值可調(diào)。經(jīng)過(guò)對(duì)系統(tǒng)的最終測(cè)試與實(shí)驗(yàn)數(shù)據(jù)分析表明,該系統(tǒng)具有穩(wěn)定性好、精度高、且范圍寬等優(yōu)點(diǎn)。
本文引用地址:http://www.ex-cimer.com/article/201610/307886.htm直接數(shù)字合成技術(shù)(Direct Digital Synthesizer,DDS)是由一個(gè)參考頻率源產(chǎn)生多種頻率的技術(shù),其采用數(shù)字信號(hào)控制的相位增量,具有頻率轉(zhuǎn)換時(shí)間短、頻率分辨率高、輸出相位連續(xù)、可編程、全數(shù)字化易于集成等優(yōu)點(diǎn)。因此,得到了廣泛的應(yīng)用。本文提出了以直接頻率合成芯片AD9850為核心的多功能信號(hào)源的設(shè)計(jì)方案,給出了實(shí)現(xiàn)多種信號(hào)生成的具體方法。
1 直接數(shù)字頻率合成原理及構(gòu)成
AD9850是美國(guó)AD公司推出的高集成度頻率合成器,內(nèi)含可編程DDS系統(tǒng)和高速比較器,能實(shí)現(xiàn)全數(shù)字編程控制的頻率合成??删幊?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/DDS">DDS系統(tǒng)的核心是相位累加器,其由一個(gè)加法器和一個(gè)N位相位寄存器組成。每來(lái)一個(gè)時(shí)鐘脈沖,加法器將頻率控制數(shù)據(jù)與累加寄存器輸出的累加相位數(shù)據(jù)相加,將相加后的結(jié)果送至累加寄存器的數(shù)據(jù)輸入端,累加寄存器將加法器在上一個(gè)時(shí)鐘作用后所產(chǎn)生的新相位數(shù)據(jù)反饋到加法器的輸入端,以使加法器在下一個(gè)時(shí)鐘的作用下繼續(xù)與頻率控制數(shù)據(jù)相加。這樣,相位累加器在參考時(shí)鐘的作用下進(jìn)行線性相位累加,當(dāng)相位累加器累加滿量時(shí)就會(huì)產(chǎn)生一次溢出,完成一個(gè)周期性的動(dòng)作,這個(gè)周期就是DDS合成信號(hào)的一個(gè)頻率周期,累加器的溢出頻率就是輸出的信號(hào)頻率。相位寄存器的輸出與相位控制字相加后,可輸入到正弦查詢表地址上。正弦查詢表包含一個(gè)正弦波周期的數(shù)字幅度信息,每個(gè)地址對(duì)應(yīng)正弦波中0°~360°范圍的一個(gè)相位點(diǎn)。查詢表將輸入地址的相位信息映射成正弦波幅度信號(hào),然后驅(qū)動(dòng)DAC以輸出模式量,實(shí)現(xiàn)正弦信號(hào)的合成。
相位寄存器每經(jīng)個(gè)fc時(shí)鐘周期后回到初始狀態(tài),相應(yīng)地,正弦查找表經(jīng)過(guò)一個(gè)循環(huán)回到初始位置,DDS輸出一個(gè)正弦波。輸出的正弦波周期為
頻率控制字與輸出信號(hào)頻率和參考時(shí)鐘頻率之間的關(guān)系為
M=(fout·2N)/fc, 0≤M≤2N-1 (3)
其中,N是相位累加器的字長(zhǎng);M是頻率控制字的字長(zhǎng);fc是晶振頻率;fout是輸出頻率,從式(1)~式(3)可看出頻率控制字與輸出信號(hào)頻率成正比關(guān)系。相位累加器輸出位并不全部加到查詢表,而要截?cái)?。相位截?cái)鄿p小了查詢表長(zhǎng)度,但并不影響頻率分辨率,對(duì)最終輸出僅增加一個(gè)較小的相位噪聲。DAC分辨率一般比查詢表長(zhǎng)度小2~4位。通常用頻率增量來(lái)表示頻率合成器的分辨率,DDS的最小分辨率為
接上精密時(shí)鐘源并寫(xiě)入控制字后,AD9850就可產(chǎn)生一個(gè)頻率和相位都可編程控制的模擬正弦波輸出。如果經(jīng)過(guò)內(nèi)部高速比較器轉(zhuǎn)換后則可得到方波輸出。一個(gè)基本的DDS結(jié)構(gòu),主要由參考時(shí)鐘、相位累加器、相位調(diào)制器、ROM查找表、D/A轉(zhuǎn)換器(DAC)和低通濾波器(LPF)構(gòu)成,如圖1所示。
2 多功能信號(hào)源的總體設(shè)計(jì)
2.1 系統(tǒng)總體設(shè)計(jì)框架
為實(shí)現(xiàn)多功能常用信號(hào)源的設(shè)計(jì)要求,選用AD9850為頻率合成核心芯片,AD9850是一個(gè)運(yùn)用先進(jìn)的DDS技術(shù),并結(jié)合集成在一片芯片內(nèi)的高速、高性能的D/A轉(zhuǎn)換電路和比較器構(gòu)成一個(gè)完全數(shù)控的可編程頻率合成器,且具有時(shí)鐘產(chǎn)生功能的高度集成芯片。當(dāng)有一個(gè)精確時(shí)鐘源作為參考頻率源時(shí),AD9850 能產(chǎn)生一個(gè)頻譜很純的頻率或相位可編程的模擬正弦波輸出。對(duì)于125 MHz參考時(shí)鐘,AD9850能產(chǎn)生一個(gè)32位頻率調(diào)整控制字,其導(dǎo)致一個(gè)0.029 1 Hz的輸出調(diào)諧頻率分辨率。另外,AD9850采用先進(jìn)的CMOS工藝,在3.3 V供電時(shí)其功耗僅為155mW。
將單片機(jī)實(shí)現(xiàn)對(duì)DDS的控制與微機(jī)實(shí)現(xiàn)的控制相比,具有編程控制簡(jiǎn)便、接口簡(jiǎn)單、成本低、容易實(shí)現(xiàn)系統(tǒng)小型化等優(yōu)點(diǎn),因此采用STC89C52單片機(jī)作為系統(tǒng)控制芯片,主要功能是完成對(duì)外部信號(hào)的采樣、運(yùn)算、頻率控制,鍵盤數(shù)據(jù)接收、數(shù)據(jù)傳輸?shù)?矩陣鍵盤用于進(jìn)行正弦波、方波頻率參數(shù)設(shè)定;各個(gè)信號(hào)的輸出選擇,頻偏、調(diào)制度的設(shè)定以及其他功能設(shè)置;按照指標(biāo)要求可完成正弦波、方波、FM波、AM波、PM波的輸出。系統(tǒng)總體框架如圖2所示。
2.2 單片機(jī)與DDS芯片的連接方式
AD9850的40位頻率/相位控制字可通過(guò)并行或串行兩種方式送入器件。選用并行傳輸方式,充分發(fā)揮芯片AD9850的高速性能。在并行方式下連續(xù)輸入 5次數(shù)據(jù),每次輸入8位(1 Byte),將40位頻率/相位控制字送入器件。系統(tǒng)中,單片機(jī)通過(guò)數(shù)據(jù)鎖存器和控制鎖存器來(lái)實(shí)現(xiàn)對(duì)AD9850模塊的控制,數(shù)據(jù)鎖存器打開(kāi)時(shí),控制鎖存器關(guān)閉,此時(shí)傳輸數(shù)據(jù);控制鎖存器打開(kāi)時(shí),數(shù)據(jù)鎖存器關(guān)閉,此時(shí)根據(jù)AD9850的時(shí)序?qū)_CLK、FQ_UD、RESET執(zhí)行相應(yīng)的操作。單片機(jī) 89C52控制AD9850工作連線圖,如圖3所示。
3 多功能信號(hào)源各個(gè)輸出信號(hào)實(shí)現(xiàn)
3.1 正弦波信號(hào)的實(shí)現(xiàn)
要得到所需要頻率的信號(hào),關(guān)鍵是計(jì)算該信號(hào)所對(duì)應(yīng)的40位控制字。AD9850中40位控制字其中相位控制占5位,所以相位控制位的精度為 360/25=11.25,根據(jù)實(shí)際需要設(shè)置不同的相位控制字,便可實(shí)現(xiàn)不同精度的相位控制,所以相位控制位可采用11.25、22.5、45,90、 180和其的倍數(shù)精度來(lái)設(shè)置,例如選用11.25°,用二進(jìn)制表示為00001,若相位控制為90°,則控制字為01000。40位控制字中頻率控制占 32位,頻率控制字M可根據(jù)需要輸出頻率值經(jīng)式(3)計(jì)算得出,再將所計(jì)算出的M通過(guò)單片機(jī)STC89C52并口寫(xiě)入芯片AD9850,AD9850根據(jù)控制字來(lái)設(shè)定相位累加器的步長(zhǎng)大小。AD9850采用32位的相位累加器將信號(hào)截?cái)喑?4位輸入到正弦查詢表,查詢表的輸出再被截?cái)喑?0位后輸入到 DAC,DAC再輸出兩個(gè)互補(bǔ)的電流。將波形存儲(chǔ)器的輸出送到D/A轉(zhuǎn)換器,得到所需頻率的正弦波信號(hào)。
3.2 AM調(diào)制信號(hào)的實(shí)現(xiàn)
AM調(diào)制是調(diào)制信號(hào)控制高頻正弦載波的幅度按照調(diào)制信號(hào)的規(guī)律變化的過(guò)程。AM調(diào)制中,調(diào)制系數(shù)Ma是指調(diào)制信號(hào)與載波信號(hào)幅度比,可根據(jù)式(5)計(jì)算。A、B分別表示波形垂直方向上的最大和最小長(zhǎng)度
電路實(shí)現(xiàn)采用模擬乘法器集成芯片AD835,載波信號(hào)由AD9850模塊產(chǎn)生送給AD835的Y1端,調(diào)制信號(hào)由TLC7528構(gòu)成D/A轉(zhuǎn)換電路產(chǎn)生送給AD835的X1端,從AD835的W端口輸出得到。
3.3 2ASK/2PSK信號(hào)的實(shí)現(xiàn)
2ASK實(shí)現(xiàn)很簡(jiǎn)單,通過(guò)改變電源控制字的0、1狀態(tài)實(shí)現(xiàn),即調(diào)制信號(hào)為高電平時(shí),W0為0x00;低電平時(shí),W0信號(hào)為0x04。
2PSK調(diào)制是通過(guò)改變相位控制字實(shí)現(xiàn)的。W0的高5位是相位控制字,使W0的最高位(Phase-b4)為1,則相位為π,即調(diào)制信號(hào)為高電平時(shí),W0為0x00;低電平時(shí),W0為0x80。
2ASK調(diào)制和2PSK調(diào)制在T0中斷中實(shí)現(xiàn)。設(shè)定不同按鍵控制AD9850模塊輸出2ASK波、2PSK波和退出中斷。
3.4 FM信號(hào)的實(shí)現(xiàn)
FM調(diào)制是一種使載波頻率按照調(diào)制信號(hào)改變的調(diào)制方式。采用間接調(diào)頻法,先積分再調(diào)相實(shí)現(xiàn)調(diào)頻,其優(yōu)點(diǎn)是提高了中心頻率的穩(wěn)定度。按照要求的頻偏值間接調(diào)頻公式為
fre+(table[i]/127-0.5)xfc (6)
其中,fre為載波信號(hào)頻率;fc為頻偏;table[i]是用于D/A轉(zhuǎn)換的64點(diǎn)電壓值中的一點(diǎn)。計(jì)算頻率值,再計(jì)算頻率控制字通過(guò)單片機(jī)并口送入AD9850實(shí)現(xiàn)對(duì)頻率的控制,即實(shí)現(xiàn)FM調(diào)制。
4 軟件設(shè)計(jì)
4.1 系統(tǒng)主程序
在系統(tǒng)設(shè)計(jì)過(guò)程中,對(duì)系統(tǒng)軟件采用模塊化設(shè)計(jì)方法。系統(tǒng)軟件由監(jiān)控軟件、鍵盤和顯示管理模塊、各功能模塊和數(shù)據(jù)模塊構(gòu)成。
系統(tǒng)初始化包括對(duì)各個(gè)芯片的初始化。對(duì)AD9850初始化是向AD9850寫(xiě)入設(shè)定的頻率/相位控制字,AD9850按設(shè)定狀態(tài)輸出所需頻率的波形,直到重新對(duì)這些控制位進(jìn)行設(shè)定。初始化后,LCD將顯示歡迎界面和系統(tǒng)初始狀態(tài)。鍵盤管理模塊主要是識(shí)別命令、解釋命令,并獲得完成該命令的相應(yīng)模塊入口,引導(dǎo)進(jìn)入正常工作程序。系統(tǒng)軟件用C語(yǔ)言設(shè)計(jì),相對(duì)于匯編語(yǔ)言,C語(yǔ)言對(duì)機(jī)器底層硬件操作較為方便,可讀性和可移植性較好。主程序流程圖如圖5所示。
4.2 AD9850子程序
AD9850的40位頻率/相位控制字,通過(guò)并行方式連續(xù)輸入5次,每次輸入8位,將40位頻率/相位控制字送入器件。在并行輸入方式下,單片機(jī)通過(guò)8位總線D0~D7將外部控制字裝載到AD9850的數(shù)據(jù)輸入寄存器,在WCLK的上升沿裝入第1 Byte,并將指針指向下一個(gè)輸入寄存器,連續(xù)5個(gè)WCLK的上升沿讀入5 Byte數(shù)據(jù)到輸入寄存器后,WCLK的邊沿就不再起作用。然后在FQ_UD上升沿到來(lái)時(shí),將這40位數(shù)據(jù)從輸入寄存器裝載到頻率/相位寄存器。這時(shí),DDS的輸出頻率更新一次,同時(shí)將地址指針復(fù)位到第一個(gè)輸入寄存器,以等待下一次的控制字輸入,其工作時(shí)序如圖6所示。
單片機(jī)通過(guò)控制“數(shù)據(jù)鎖存器”和“控制鎖存器”來(lái)實(shí)現(xiàn)對(duì)AD9850模塊的控制,數(shù)據(jù)鎖存器打開(kāi)時(shí),控制鎖存器關(guān)閉,此時(shí)傳輸數(shù)據(jù);控制鎖存器打開(kāi)時(shí),數(shù)據(jù)鎖存器關(guān)閉,此時(shí)根據(jù)AD9850的時(shí)序?qū)_CLK、FQ_UD、RESET執(zhí)行相應(yīng)的操作。AD9850模塊的子程序流程圖如圖7所示。
5 系統(tǒng)測(cè)試
5.1 正弦波/方波信號(hào)指標(biāo)測(cè)試
經(jīng)測(cè)試,系統(tǒng)可產(chǎn)生20 Hz~40 MHz的平滑正弦波,正弦波在20 Hz~40 MHz頻率范圍內(nèi)的頻率誤差在±0.5%之內(nèi),輸出電壓最小能保持在0.3 V,最大能保持約在5 V,頻率最小步進(jìn)可達(dá)1 Hz,波形穩(wěn)定,無(wú)失真。測(cè)試結(jié)果如圖8所示。
5.2 2ASK/2PSK測(cè)試
示波器觀察2PSK和2ASK波形,其中載波為固定頻率200 kHz,波形分別如圖10和圖11所示。
5.3 FM調(diào)制波指標(biāo)測(cè)試
利用數(shù)字示波器測(cè)試FM性能,載波頻率為200 kHz,10 kHz/20 kHz二級(jí)調(diào)節(jié)的最大頻偏測(cè)試數(shù)據(jù)達(dá)到10 kHZ/20 kHz的頻偏,具體圖像如圖12和圖13所示。
5.4 AM調(diào)制波指標(biāo)測(cè)試
示波器觀察AM信號(hào)。載波信號(hào)頻率為10 kHz,調(diào)制信號(hào)頻率為100 Hz。記錄每次已調(diào)信號(hào)的試驗(yàn)結(jié)果,計(jì)算調(diào)制度。調(diào)制系數(shù)的測(cè)試及計(jì)算數(shù)據(jù)調(diào)幅波的調(diào)制度隨調(diào)制信號(hào)幅度變化線性較好,能夠?qū)崿F(xiàn)10%~100%的調(diào)制度。圖14和圖15所示為載波頻率10 kHz,調(diào)制頻率100 Hz下的AM波,其中,圖14調(diào)制系數(shù)為95%,圖15調(diào)制系數(shù)為45%。
6 結(jié)束語(yǔ)
以芯片AD9850為頻率合成的核心,以單片機(jī)(89C52)為控制和數(shù)據(jù)處理核心,實(shí)現(xiàn)了正弦波、方波、調(diào)頻和調(diào)幅等常用波形的產(chǎn)生和輸出,結(jié)合鍵盤和顯示部分,實(shí)現(xiàn)了任意頻率值的選擇和顯示,構(gòu)成了一個(gè)完整的實(shí)用的信號(hào)發(fā)生器。該信號(hào)發(fā)生器能在10 Hz~20 MHz范圍內(nèi)以任意頻率輸出,步進(jìn)值可調(diào),最小步進(jìn)可達(dá)到1 Hz,幅度0.3~5 V;可在固定載波頻率下進(jìn)行數(shù)字鍵控,產(chǎn)生2ASK/2PSK信號(hào);實(shí)現(xiàn)了頻偏為10 kHz/20 kHz的調(diào)頻波;采用AD835乘法器,實(shí)現(xiàn)常規(guī)雙邊帶調(diào)幅。經(jīng)系統(tǒng)測(cè)試和實(shí)驗(yàn)數(shù)據(jù)的分析結(jié)果表明,該系統(tǒng)具有穩(wěn)定性好、精度高、范圍寬等優(yōu)點(diǎn)。
評(píng)論