吳智浩
(北方工業大學 北京市 100043)
DDS(直接數字頻率合成)在移動電信和通用電子儀器設備方面的技術應用已經非常廣泛,是目前完成通信設備頻率數字化的重要合成技術。
我們可以通過頻率合成來獲得所需要的頻率。常見的頻率合成方式有三種:直接使用模擬數字頻率轉換合成(DAFS)、鎖相模擬頻率轉換合成(PIFS)和直接使用數字模擬頻率轉換合成(DDS)[1]。其中直接數字頻率合成(DDS)從相位量化的概念出發,以全數字技術來合成我們所需要的波形,具有頻率轉換速度快,相位噪聲低等優點[2]。在本設計中,使用采用DDS技術的AD9851芯片,以及具有較低成本與功耗的單片機——STM32。
美國的ADI公司(Analog Devices, Inc)生產眾多類型的DDS集成芯片,在DDS芯片制作行業處于領先地位。本次設計將使用此公司的AD9851芯片,可以輸出正弦波,采用比較器還能夠輸出方波,經濾波后的波形無明顯失真,且本設計輸出的波形為高頻信號,可以滿足部分高頻信號的使用。
本次設計的主要元件由按鍵部分,控制部分,信號發生部分三大部分組成。使用STM32單片機作為本次的控制部分,來進行對整體電路的控制;我們可以通過按鍵進行對頻率的設置,通過控制模塊傳達頻率至信號發生模塊,信號發生部分則受指令才產生我們所設置頻率的波形。
2.2.1 DDS原理

圖1:AD9851的結構框圖

圖2:信號發生模塊的總電路圖
DDS的基本原理之一是時域香農采樣定理(也叫奈奎斯特采樣定理):如果F是一個連續信號的最高頻率,那么我們所進行等間隔采樣的采樣頻率設置為其兩倍(即2F)。這樣我們就有可能將所有在采樣時得到的連續離散射頻信號數據進行無損或失真地直接恢復為我們原本的連續離散信號。而使用DDS就可以相當于將一個離散發射信號再次恢復轉換為連續發射信號的一個過程。實質意義為其每進行一次輸出更新一系列非常離散的與之前相位水平對應的輸出點,每隔一個更新周期后再進行一次更新后輸出與之前的相位相應點對應的輸出電壓水平。實則輸出一個階梯信號。然后將所得信號經LPF(低通濾波器)后,就能獲得我們所想要的一個連續信號。
2.2.2 DDS芯片的選取及引腳圖
本次信號發生模塊選用的芯片是美國的ADI公司(Analog Devices, In)的AD9851芯片。它是以AD9850為基礎,通過一些改良,在原有的基礎上多了一些新的功能。AD9851是采用6倍頻,30晶體,內部時鐘為180M。在參考時鐘輸入端,便只要輸入30M就能夠達到要求[3]。
由圖1可以知道AD9851是如何利用DDS芯片來實現正弦波和方波,其過程如下:當得到采樣時鐘的控制指令,經由相位累加器(基于頻率碼控制)輸出到正弦查詢表地址上。查詢表把計算獲得的電路輸入和源地址的正弦相位訊號信息按一定的頻率規律依次讀出,經數/模轉換后進行低通濾波處理后輸出正弦信號,比較后輸出方波信號。
AD9851的封裝形式為28引腳的SSOP表面封裝,關于部分引腳的定義如下[4]:
D0~D7:作為8位數據的輸入口,用于把40 位控制數據裝入內部寄存器。
FQ-UD:頻率更新控制信號,當時鐘為上升沿信號時,判定輸入數據有效。
W-CLK:字裝入信號,上升沿有效。
FREFCLOCK:外部參考時鐘輸入。
RSET:DAC外部復位連接端。
RESET:復位端。
VOUTN:內部比較器負向輸出端。
VOUTP:內部比較器正向輸出端。
IOUTB:“互補”DAC 輸出。
IOUT:內部 DAC 輸出端。
2.2.3 信號發生電路的搭建
AD9851為此信號發生電路的中樞,故要配置好AD9851,確保它在接收到控制信號后能正常執行他的功能。
數字信號電路主要為方波,會帶有大部分諧波,如若與數字信號接到一起,則會影響模擬信號,特別是處理信號為高頻信號。而AD9851最高輸出頻率達到了Mhz級,故更有必要做好隔離工作。如圖2所示,我們可以通過設置模擬地和數字地來達到隔離數字電路和模擬電路的效果。這兩個地相連的部分較少,能夠維持參考電位處于同一水平,且重疊面積小,能夠很大程度的減小模擬電路和數字電路之間的干擾,輸出波形的質量得到了保障。
如果不對每個輸出的高頻波形信號進行雜散處理,則采樣所得到的波形不僅帶有雜散且還帶有大量的噪聲,為了能夠有效抑制高頻雜散和噪聲,我們需要對輸出信號進行低通濾波處理。我們可以采用AD9851的官方建議的濾波器——橢圓濾波器,橢圓濾波器過渡區較窄,衰減極為陡峭[5],能夠符合設計要求。橢圓濾波器各元件參數計算較為繁瑣,其主要方法為歸一化法,即歸結為截止頻率1/2π的低通濾波器的設計[6]。首先在歸一化后的表內給出查詢是否符合上述指標的一個橢圓低通濾波器,然后通過計算所有待進行設計橢圓濾波器的截止頻率與(1/2π)Hz的頻率比值均為M,以及計算待進行設計橢圓濾波器中的特征電容阻抗與1Ω的阻抗比值均為K,將歸一化后在表內查詢相應橢圓濾波器的特征電容值可以縮小為KM倍,電感的值可以減小為目的是在于能夠易于得到能滿足我們所需設計要求的橢圓低通濾波器。
所采樣的橢圓濾波電路可觀察圖2的總電路圖,其濾波器階數為7。
2.2.4 按鍵模塊
按鍵控制電路用于調節頻率大小,其中key0用于控制頻率加0.5Mhz,key1用于控制頻率減0.5Mhz,按鍵REST對輸出波形進行復位(即恢復默認狀態輸出頻率為1Mhz的波)。
2.2.5 控制模塊與信號發生模塊的連接
STM32與AD9851的端口利用杜邦線進行連接,連接方法為STM32的PA11,PA3,PA2,PA12分 別 與AD9851的W_CLK,FQ_UP,RST,D7相連接。
2.3.1 總程序方案設計
(1)將STM32進行初始化,配置AD9851芯片,然后進行鍵盤初始化。
(2)配置好各個模塊,進入主程序,判斷按鍵是否被按下,如果沒有重復檢測。
(3)如果按鍵被按下,判斷是進行什么操作,然后執行相對應的指令,刷新頻率數值。
(4)輸出波形。
2.3.2 頻率計算
我們需要將所要輸出波形的頻率化為HEX值,故需要從控制模塊獲取頻率值之后進行換算。
代碼實現為:Freq=Freq*4294967296/180000000; //先乘法后除法,效率高;4294967296為32位調頻字,相當于分辨率,計算頻率的HEX值。
2.3.3 AD9851芯片的數據讀取
AD9851的控制字有40位,前32位為頻率信息,后五位為相位信息,本次設置是通過設置PA12的電位進行數據的傳輸,其中前32位的數據傳輸如下:
預定義代碼:

控制代碼(節選):

后8位為默認值,代碼較為簡單不展示。
最后,提供給FQ_UD端口一個上升沿,此時信號發生電動路就能按照我們的需求準確輸出波形。
將電路連接好后進行上電操作,連接示波器后可以觀察到:所輸出的正弦波無明顯失真,波形輸出良好,初始頻率為1Mhz。按動按鍵即可調節頻率,可以看到所正弦波,頻率發生改變,幅值維持不變。
本文基于AD9851與STM32,結合實際電路設計,選用比較新興的DDS技術實現了可以輸出1Mhz-50Mhz,可以通過按鍵調整(步長為0.5Mhz)的正弦波信號發生器。經過調試驗證,輸出波形良好,且體積小便于攜帶,可以用于平時實驗與學習。