基于DDS的調(diào)頻信號發(fā)生器的設(shè)計與仿真
信號發(fā)生模塊
本文引用地址:http://www.ex-cimer.com/article/110154.htm信號發(fā)生模塊主要由DDS芯片組成,這里選用美國ADI公司的雙通道直接數(shù)字頻率合成器AD9958,最高采樣頻率可達(dá) 500 MSPS。它有兩個DDS核,能夠提供兩個內(nèi)部同步、獨(dú)立編程同步輸出通道,在系統(tǒng)時鐘工作在500 MHz時,輸出頻率可控制范圍可以達(dá)到0 ~ 200 MHz[4],可以滿足系統(tǒng)設(shè)計的要求。
AD9958有4種工作模式,分別為單頻模式、調(diào)制模式、線性掃描模式和幅度輸出控制模式。其中單頻模式是芯片服務(wù)后默認(rèn)的工作模式,在此模式下輸出是某一單調(diào)頻率、幅度和初始相位的正弦波[5]。本系統(tǒng)中AD9958采用的就是單頻模式,在這種工作模式下,兩個DDS通道共享一個公共地址,頻率控制字地址是寄存器(0x04),通過改變頻率控制字,可以很方便的改變輸出頻率,結(jié)合通道選擇控制字,兩個通道可以獨(dú)立輸出互不相關(guān)的兩路正弦波,控制功能由MCU完成。
由于DDS的輸出最大頻率受奈奎斯特抽樣定理的限制,所以有,此時,考慮到器件因素,在實際使用中一般取。本系統(tǒng)中,外部參考時鐘采用50M高穩(wěn)晶振,DDS芯片時鐘倍頻器設(shè)置倍率為10,使系統(tǒng)時鐘達(dá)到500 MHz。從而使每個通道可保證信號質(zhì)量的最高輸出頻率達(dá)到200 MHz。
控制模塊
控制模塊的功能主要由MCU芯片組成,MCU內(nèi)部集成豐富的外圍設(shè)備,具有卓越的處理能力,應(yīng)用MCU完成外圍電路,可以使得整個系統(tǒng)結(jié)構(gòu)簡單,使用方便。在本系統(tǒng)中,MCU作為核心控制模塊完成調(diào)制信號頻率控制字的獲取和載波頻率控制字的接收以及對DDS的控制。
調(diào)制信號頻率控制字:本系統(tǒng)通過MCU芯片集成的ADC完成調(diào)制信號頻率控制字的獲取。根據(jù)實際需要,本系統(tǒng)的調(diào)制信號為語音信號,頻率集中在50 ~ 3400 Hz。根據(jù)奈奎斯特采樣定理,ADC采樣頻率應(yīng)不小于6.4 kHz,,考慮到高速密集采樣可以減少頻偏偏差,因此設(shè)定ADC采樣頻率為100 kHz。語音調(diào)制信號經(jīng)過A/D轉(zhuǎn)換,得到12位數(shù)字信號,與調(diào)制常數(shù)相乘作為調(diào)制信號頻率控制字。
載波頻率控制字:MCU通過片上集成的UART接口與外部控制模塊進(jìn)行通信,外部控制模塊采用異步通信方式將載波頻率控制字等指令發(fā)送給MCU。MCU收到的指令信號進(jìn)行處理,并提取出用戶要求的載波頻率控制字。
調(diào)頻波頻率控制字:MCU將調(diào)制信號頻率控制字與載波頻率控制字相加作為調(diào)頻波的頻率控制字并按照DDS的頻率控制字格式進(jìn)行處理后送入DDS。
低通濾波器
DDS采用數(shù)字化技術(shù),最終合成信號是經(jīng)D/A轉(zhuǎn)換后得到的,其頻譜含有豐富的高次頻譜分量,為了得到頻譜純凈的信號輸出,必須要用低通濾波器將他們?yōu)V除,要求濾波器的衰減特性要陡直,延遲時間要短。
軟件設(shè)計
整個系統(tǒng)采用模塊化程序設(shè)計,采用C語言編寫,便于移植,可讀性強(qiáng),主要是根據(jù)AD9958的頻率控制字格式,通過MCU將這些控制字寫入AD9958內(nèi)部的寄存器中,從而產(chǎn)生相應(yīng)的頻率。軟件主要實現(xiàn)兩個方面的功能:系統(tǒng)初始化和頻率控制字寫入。
系統(tǒng)初始化:包括MCU自身的初始化配置,以及按照AD9958芯片的寄存器配置方式,向AD9958寫入系統(tǒng)時鐘、工作模式以及通道選擇等配置指令。
頻率控制字寫入:為完成一次頻率控制字更替,MCU需要按照AD9958的頻率字寫入格式發(fā)送一次通道指令,共40位,高8位為寄存器地址(0x04),低32位為頻率控制字。在一個ADC采樣周期內(nèi),必須將通道指令發(fā)送完畢,才能使輸出頻率按照ADC采樣頻率不斷更新,從而實現(xiàn)數(shù)字調(diào)頻。AD9958的指令寫入方式可分為串行裝入和并行裝入,本系統(tǒng)采用串行方式裝入,由MCU直接送給AD9958頻率控制字。在每個系統(tǒng)時鐘(SCLK)的上升沿由數(shù)據(jù)輸入口SDIO_0移入一位控制字,連續(xù)40個SCLK周期即可將40位控制字裝入緩沖寄存器中。在更新信號(IO_UP)信號上升沿到來以后,控制字傳輸?shù)娇刂萍拇嫫髦校珹D9958的兩個通道同時更新輸出頻率。
評論